Skip to content

Commit

Permalink
move English to bundle #5093
Browse files Browse the repository at this point in the history
  • Loading branch information
pdurbin committed May 29, 2020
1 parent 1dfe944 commit 786a7a4
Show file tree
Hide file tree
Showing 6 changed files with 32 additions and 9 deletions.
5 changes: 3 additions & 2 deletions src/main/java/edu/harvard/iq/dataverse/api/Pids.java
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
import edu.harvard.iq.dataverse.engine.command.impl.ReservePidCommand;
import edu.harvard.iq.dataverse.pidproviders.PidUtil;
import edu.harvard.iq.dataverse.util.BundleUtil;
import java.util.Arrays;
import javax.ejb.Stateless;
import javax.json.Json;
import javax.json.JsonArray;
Expand Down Expand Up @@ -90,7 +91,7 @@ public Response reservePid(@PathParam("id") String idSupplied) {
try {
Dataset dataset = findDatasetOrDie(idSupplied);
execCommand(new ReservePidCommand(createDataverseRequest(findUserOrDie()), dataset));
return ok("PID reserved for " + dataset.getGlobalId().asString());
return ok(BundleUtil.getStringFromBundle("pids.api.reservePid.success", Arrays.asList(dataset.getGlobalId().asString())));
} catch (WrappedResponse ex) {
return ex.getResponse();
}
Expand All @@ -103,7 +104,7 @@ public Response deletePid(@PathParam("id") String idSupplied) {
try {
Dataset dataset = findDatasetOrDie(idSupplied);
execCommand(new DeletePidCommand(createDataverseRequest(findUserOrDie()), dataset));
return ok("PID deleted for " + dataset.getGlobalId().asString());
return ok(BundleUtil.getStringFromBundle("pids.api.deletePid.success", Arrays.asList(dataset.getGlobalId().asString())));
} catch (WrappedResponse ex) {
return ex.getResponse();
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
import edu.harvard.iq.dataverse.settings.SettingsServiceBean;
import edu.harvard.iq.dataverse.util.BundleUtil;
import java.io.IOException;
import java.util.Arrays;
import java.util.Collections;
import java.util.logging.Logger;

Expand Down Expand Up @@ -56,11 +57,11 @@ protected void executeImpl(CommandContext ctxt) throws CommandException {
dataset.setIdentifierRegistered(false);
ctxt.datasets().merge(dataset);
} else {
String message = "Unable to delete PID for dataset id " + dataset.getId() + ". Status code: " + result + ".";
String message = BundleUtil.getStringFromBundle("pids.commands.deletePid.failureExpected", Arrays.asList(dataset.getId().toString(), Integer.toString(result)));
throw new IllegalCommandException(message, this);
}
} catch (IOException ex) {
String message = "Problem deleting PID for dataset id " + dataset.getId() + ": " + ex.getLocalizedMessage();
String message = BundleUtil.getStringFromBundle("pids.commands.deletePid.failureOther", Arrays.asList(dataset.getId().toString(), ex.getLocalizedMessage()));
logger.info(message);
throw new IllegalCommandException(message, this);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
import edu.harvard.iq.dataverse.engine.command.exception.IllegalCommandException;
import edu.harvard.iq.dataverse.privateurl.PrivateUrl;
import edu.harvard.iq.dataverse.settings.SettingsServiceBean;
import edu.harvard.iq.dataverse.util.BundleUtil;
import edu.harvard.iq.dataverse.workflow.Workflow;
import edu.harvard.iq.dataverse.workflow.WorkflowContext.TriggerType;
import java.util.Date;
Expand Down Expand Up @@ -74,7 +75,7 @@ public PublishDatasetResult execute(CommandContext ctxt) throws CommandException
boolean reservingPidsSupported = !idServiceBean.registerWhenPublished();
if (reservingPidsSupported) {
if (theDataset.getGlobalIdCreateTime() == null) {
throw new IllegalCommandException("Cannot publish dataset because its persistent identifier has not been reserved.", this);
throw new IllegalCommandException(BundleUtil.getStringFromBundle("publishDatasetCommand.pidNotReserved"), this);
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
import edu.harvard.iq.dataverse.engine.command.exception.PermissionException;
import edu.harvard.iq.dataverse.settings.SettingsServiceBean;
import edu.harvard.iq.dataverse.util.BundleUtil;
import java.util.Arrays;
import java.util.Collections;
import java.util.Date;
import java.util.logging.Logger;
Expand Down Expand Up @@ -51,7 +52,7 @@ protected void executeImpl(CommandContext ctxt) throws CommandException {
// We don't setIdentifierRegistered(true) yet.
ctxt.datasets().merge(dataset);
} catch (Throwable ex) {
String message = "Problem reserving PID for dataset id " + dataset.getId() + ": " + ex.getLocalizedMessage();
String message = BundleUtil.getStringFromBundle("pids.commands.reservePid.failure", Arrays.asList(dataset.getId().toString(), ex.getLocalizedMessage()));
logger.info(message);
throw new IllegalCommandException(message, this);
}
Expand Down
13 changes: 10 additions & 3 deletions src/main/java/edu/harvard/iq/dataverse/pidproviders/PidUtil.java
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
package edu.harvard.iq.dataverse.pidproviders;

import edu.harvard.iq.dataverse.GlobalId;
import edu.harvard.iq.dataverse.util.BundleUtil;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.ProtocolException;
Expand Down Expand Up @@ -46,8 +48,13 @@ public static JsonObjectBuilder queryDoi(String persistentId, String baseUrl, St
return Json.createObjectBuilder().add("response", ex.getLocalizedMessage());
}
if (status != 200) {
JsonObject out = Json.createReader(connection.getErrorStream()).readObject();
return Json.createObjectBuilder().add("response", out);
InputStream errorStream = connection.getErrorStream();
if (errorStream != null) {
JsonObject out = Json.createReader(connection.getErrorStream()).readObject();
return Json.createObjectBuilder().add("response", out);
} else {
return Json.createObjectBuilder().add("response", BundleUtil.getStringFromBundle("pids.datacite.errors.noErrorStream"));
}
}
JsonObject out;
try {
Expand All @@ -72,7 +79,7 @@ public static JsonObjectBuilder queryDoi(String persistentId, String baseUrl, St
private static String acceptOnlyDoi(String persistentId) {
GlobalId globalId = new GlobalId(persistentId);
if (!GlobalId.DOI_PROTOCOL.equals(globalId.getProtocol())) {
throw new IllegalArgumentException("Only doi: is supported.");
throw new IllegalArgumentException(BundleUtil.getStringFromBundle("pids.datacite.errors.DoiOnly"));
}
return globalId.getAuthority() + "/" + globalId.getIdentifier();
}
Expand Down
12 changes: 12 additions & 0 deletions src/main/java/propertyFiles/Bundle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -2510,3 +2510,15 @@ externaltools.dct.displayname=Data Curation Tool
externaltools.dct.description=Data Curation Tool for curation of variables
externaltools.explorer.displayname=Data Explorer
externaltools.explorer.description=The Data Explorer provides a GUI which lists the variables in a tabular data file allowing searching, charting and cross tabulation analysis.

#PIDs
pids.api.reservePid.success=PID reserved for {0}
pids.api.deletePid.success=PID deleted for {0}
pids.commands.deletePid.failureExpected=Unable to delete PID for dataset id {0}. Status code: {1}.
pids.commands.deletePid.failureOther=Problem deleting PID for dataset id {0}: {1}
pids.commands.reservePid.failure=Problem reserving PID for dataset id {0}: {1}.
pids.datacite.errors.noErrorStream=No error stream.
pids.datacite.errors.DoiOnly=Only doi: is supported.

#PublishDatasetCommand
publishDatasetCommand.pidNotReserved=Cannot publish dataset because its persistent identifier has not been reserved.

0 comments on commit 786a7a4

Please sign in to comment.