Skip to content

Commit 1a12cda

Browse files
authored
Merge pull request #5439 from IQSS/develop
v4.10.1
2 parents a88bbb6 + 9b4a874 commit 1a12cda

File tree

11 files changed

+400
-10
lines changed

11 files changed

+400
-10
lines changed

doc/sphinx-guides/source/conf.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,9 +65,9 @@
6565
# built documents.
6666
#
6767
# The short X.Y version.
68-
version = '4.10'
68+
version = '4.10.1'
6969
# The full version, including alpha/beta/rc tags.
70-
release = '4.10'
70+
release = '4.10.1'
7171

7272
# The language for content autogenerated by Sphinx. Refer to documentation
7373
# for a list of supported languages.

doc/sphinx-guides/source/versions.rst

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,9 @@ Dataverse Guides Versions
66

77
This list provides a way to refer to previous versions of the Dataverse guides, which we still host. In order to learn more about the updates delivered from one version to another, visit the `Releases <https://github.com/IQSS/dataverse/releases>`__ page in our GitHub repo.
88

9-
- 4.10
9+
- 4.10.1
10+
11+
- `4.10 </en/4.10/>`__
1012
- `4.9.4 </en/4.9.4/>`__
1113
- `4.9.3 </en/4.9.3/>`__
1214
- `4.9.2 </en/4.9.2/>`__

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
-->
88
<groupId>edu.harvard.iq</groupId>
99
<artifactId>dataverse</artifactId>
10-
<version>4.10</version>
10+
<version>4.10.1</version>
1111
<packaging>war</packaging>
1212

1313
<name>dataverse</name>

scripts/database/create/create_v4.10.1.sql

Lines changed: 351 additions & 0 deletions
Large diffs are not rendered by default.

scripts/database/releases.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,3 +29,4 @@ v4.9.2
2929
v4.9.3
3030
v4.9.4
3131
v4.10
32+
v4.10.1

src/main/java/edu/harvard/iq/dataverse/DOIDataCiteServiceBean.java

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,22 @@ public boolean registerWhenPublished() {
3131

3232
@Override
3333
public boolean alreadyExists(DvObject dvObject) {
34+
if(dvObject==null) {
35+
logger.severe("Null DvObject sent to alreadyExists().");
36+
return false;
37+
}
38+
return alreadyExists(dvObject.getGlobalId());
39+
}
40+
41+
@Override
42+
public boolean alreadyExists(GlobalId pid) {
3443
logger.log(Level.FINE,"alreadyExists");
44+
if(pid==null) {
45+
logger.severe("No identifier sent.");
46+
return false;
47+
}
3548
boolean alreadyExists;
36-
String identifier = getIdentifier(dvObject);
49+
String identifier = pid.asString();
3750
try{
3851
alreadyExists = doiDataCiteRegisterService.testDOIExists(identifier);
3952
} catch (Exception e){
@@ -43,7 +56,6 @@ public boolean alreadyExists(DvObject dvObject) {
4356
return alreadyExists;
4457
}
4558

46-
4759

4860
@Override
4961
public String createIdentifier(DvObject dvObject) throws Exception {

src/main/java/edu/harvard/iq/dataverse/DOIEZIdServiceBean.java

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -51,22 +51,31 @@ public boolean registerWhenPublished() {
5151

5252
@Override
5353
public boolean alreadyExists(DvObject dvObject) throws Exception {
54+
if(dvObject==null) {
55+
logger.severe("Null DvObject sent to alreadyExists().");
56+
return false;
57+
}
58+
return alreadyExists(dvObject.getGlobalId());
59+
}
60+
61+
@Override
62+
public boolean alreadyExists(GlobalId pid) throws Exception {
5463
logger.log(Level.FINE,"alreadyExists");
5564
try {
56-
HashMap<String, String> result = ezidService.getMetadata(getIdentifier(dvObject));
65+
HashMap<String, String> result = ezidService.getMetadata(pid.asString());
5766
return result != null && !result.isEmpty();
5867
// TODO just check for HTTP status code 200/404, sadly the status code is swept under the carpet
5968
} catch (EZIDException e ){
6069
//No such identifier is treated as an exception
6170
//but if that is the case then we want to just return false
62-
if(dvObject.getIdentifier() == null){
71+
if(pid.getIdentifier() == null){
6372
return false;
6473
}
6574
if (e.getLocalizedMessage().contains("no such identifier")){
6675
return false;
6776
}
6877
logger.log(Level.WARNING, "alreadyExists failed");
69-
logger.log(Level.WARNING, "getIdentifier(dvObject) {0}", getIdentifier(dvObject));
78+
logger.log(Level.WARNING, "getIdentifier(dvObject) {0}", pid.asString());
7079
logger.log(Level.WARNING, "String {0}", e.toString());
7180
logger.log(Level.WARNING, "localized message {0}", e.getLocalizedMessage());
7281
logger.log(Level.WARNING, "cause", e.getCause());

src/main/java/edu/harvard/iq/dataverse/DataFileServiceBean.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1567,7 +1567,7 @@ public boolean isGlobalIdUnique(String userIdentifier, DataFile datafile, Global
15671567
.getResultList().isEmpty();
15681568

15691569
try{
1570-
if (idServiceBean.alreadyExists(datafile)) {
1570+
if (idServiceBean.alreadyExists(new GlobalId(testProtocol, testAuthority, userIdentifier))) {
15711571
u = false;
15721572
}
15731573
} catch (Exception e){

src/main/java/edu/harvard/iq/dataverse/GlobalIdServiceBean.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ public interface GlobalIdServiceBean {
1414
static final Logger logger = Logger.getLogger(GlobalIdServiceBean.class.getCanonicalName());
1515

1616
boolean alreadyExists(DvObject dvo) throws Exception;
17+
18+
boolean alreadyExists(GlobalId globalId) throws Exception;
1719

1820
boolean registerWhenPublished();
1921

src/main/java/edu/harvard/iq/dataverse/HandlenetServiceBean.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -323,6 +323,12 @@ public boolean alreadyExists(DvObject dvObject) throws Exception {
323323
return isHandleRegistered(handle);
324324
}
325325

326+
@Override
327+
public boolean alreadyExists(GlobalId pid) throws Exception {
328+
String handle = pid.getAuthority() + "/" + pid.getIdentifier();
329+
return isHandleRegistered(handle);
330+
}
331+
326332
@Override
327333
public Map<String,String> getIdentifierMetadata(DvObject dvObject) {
328334
throw new NotImplementedException();

0 commit comments

Comments
 (0)