Skip to content

Commit

Permalink
add feature flag for DDI export (disabled for now) #2579
Browse files Browse the repository at this point in the history
  • Loading branch information
pdurbin committed Oct 27, 2015
1 parent 9b04e1a commit 9dc0534
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 2 deletions.
8 changes: 6 additions & 2 deletions src/main/java/edu/harvard/iq/dataverse/api/Datasets.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
import edu.harvard.iq.dataverse.engine.command.impl.UpdateDatasetVersionCommand;
import edu.harvard.iq.dataverse.export.DDIExportServiceBean;
import edu.harvard.iq.dataverse.export.ddi.DdiExportUtil;
import edu.harvard.iq.dataverse.util.SystemConfig;
import edu.harvard.iq.dataverse.util.json.JsonParseException;
import static edu.harvard.iq.dataverse.util.json.JsonPrinter.*;
import java.io.ByteArrayOutputStream;
Expand Down Expand Up @@ -67,6 +68,9 @@ public class Datasets extends AbstractApiBean {
@EJB
DDIExportServiceBean ddiExportService;

@EJB
SystemConfig systemConfig;

/**
* Used to consolidate the way we parse and handle dataset versions.
* @param <T>
Expand Down Expand Up @@ -418,8 +422,8 @@ Dataset findDatasetOrDie( Long id ) throws WrappedResponse {
@Path("ddi")
@Produces({"application/xml", "application/json"})
public Response getDdi(@QueryParam("id") long id, @QueryParam("persistentId") String persistentId, @QueryParam("dto") boolean dto) {
boolean disabled = true;
if (disabled) {
boolean ddiExportEnabled = systemConfig.isDdiExportEnabled();
if (!ddiExportEnabled) {
return errorResponse(Response.Status.FORBIDDEN, "Disabled");
}
try {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,10 @@ public enum Key {
SolrHostColonPort,
/** Key for limiting the number of bytes uploaded via the Data Deposit API, UI (web site and . */
MaxFileUploadSizeInBytes,
/**
* Experimental: Key for if DDI export is enabled or disabled.
*/
DdiExportEnabled,
/** Key for if Shibboleth is enabled or disabled. */
ShibEnabled,
/** Key for if Shibboleth is enabled or disabled. */
Expand Down
5 changes: 5 additions & 0 deletions src/main/java/edu/harvard/iq/dataverse/util/SystemConfig.java
Original file line number Diff line number Diff line change
Expand Up @@ -387,6 +387,11 @@ public String getApplicationPrivacyPolicyUrl() {
return appPrivacyPolicyUrl;
}

public boolean isDdiExportEnabled() {
boolean safeDefaultIfKeyNotFound = false;
return settingsService.isTrueForKey(SettingsServiceBean.Key.DdiExportEnabled, safeDefaultIfKeyNotFound);
}

public boolean isShibEnabled() {
boolean safeDefaultIfKeyNotFound = false;
return settingsService.isTrueForKey(SettingsServiceBean.Key.ShibEnabled, safeDefaultIfKeyNotFound);
Expand Down

0 comments on commit 9dc0534

Please sign in to comment.