Skip to content

Commit

Permalink
Merge pull request #10563 from GlobalDataverseCommunityConsortium/IQS…
Browse files Browse the repository at this point in the history
…S/10557-fix_installer_fake_pid_setup

IQSS/10557-fix-installer-pid-setup
  • Loading branch information
landreev authored Jun 27, 2024
2 parents ba209ad + 2626050 commit 43ee260
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 1 deletion.
1 change: 1 addition & 0 deletions scripts/installer/as-setup.sh
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,7 @@ function preliminary_setup()
./asadmin $ASADMIN_OPTS create-jvm-options "\-Ddataverse.pid.fake.label=Fake DOI Provider"
./asadmin $ASADMIN_OPTS create-jvm-options "\-Ddataverse.pid.fake.authority=10.5072"
./asadmin $ASADMIN_OPTS create-jvm-options "\-Ddataverse.pid.fake.shoulder=FK2/"
./asadmin $ASADMIN_OPTS create-jvm-options "\-Ddataverse.pid.default-provider=fake"
# jvm-options use colons as separators, escape as literal
#DOI_DATACITERESTAPIURL_ESC=`echo $DOI_DATACITERESTAPIURL | sed -e 's/:/\\\:/'`
#./asadmin $ASADMIN_OPTS create-jvm-options "\-Ddataverse.pid.testDC.datacite.rest-api-url=$DOI_DATACITERESTAPIURL_ESC"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package edu.harvard.iq.dataverse.settings;

import edu.harvard.iq.dataverse.MailServiceBean;
import edu.harvard.iq.dataverse.pidproviders.PidProviderFactoryBean;
import edu.harvard.iq.dataverse.pidproviders.PidUtil;
import edu.harvard.iq.dataverse.settings.SettingsServiceBean.Key;
import edu.harvard.iq.dataverse.util.FileUtil;
Expand Down Expand Up @@ -32,6 +33,8 @@ public class ConfigCheckService {
MailSessionProducer mailSessionProducer;
@Inject
MailServiceBean mailService;
@Inject
PidProviderFactoryBean pidProviderFactoryBean;

public static class ConfigurationError extends RuntimeException {
public ConfigurationError(String message) {
Expand Down Expand Up @@ -132,6 +135,16 @@ public void checkSystemMailSetup() {
* @return True if all checks successful, false otherwise.
*/
private boolean checkPidProviders() {
return PidUtil.getManagedProviderIds().size() > 0;
// Check if at least one PidProvider capable of editing/minting PIDs is configured.
boolean valid=true;
if(!(PidUtil.getManagedProviderIds().size() > 0)) {
valid = false;
logger.warning("No PID providers configured");
}
if (pidProviderFactoryBean.getDefaultPidGenerator()==null){
valid=false;
logger.warning("No default PID provider configured");
}
return valid;
}
}

0 comments on commit 43ee260

Please sign in to comment.