diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/plugins/AutoArchiverTask.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/plugins/AutoArchiverTask.java index b6a1cb2881535cc25e3633248623f359bc4a0a9a..f26c6b5aa3e41ac3b5fa7e17733b66394bc7a232 100644 --- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/plugins/AutoArchiverTask.java +++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/plugins/AutoArchiverTask.java @@ -58,18 +58,14 @@ public class AutoArchiverTask implements IMaintenanceTask private IEncapsulatedOpenBISService openBISService; - private IAutoArchiverPolicy policyOrNull; + private IAutoArchiverPolicy policy; private ArchiverDataSetCriteria criteria; public void execute() { operationLog.info("start"); - List<ExternalData> dataSets = openBISService.listActiveDataSets(criteria); - if (policyOrNull != null) - { - policyOrNull.filter(dataSets); - } + List<ExternalData> dataSets = policy.filter(openBISService.listActiveDataSets(criteria)); if (dataSets.isEmpty()) { operationLog.info("nothing to archive"); @@ -89,7 +85,7 @@ public class AutoArchiverTask implements IMaintenanceTask SectionProperties policySectionProperties = PropertyParametersUtil.extractSingleSectionProperties(properties, POLICY_SECTION_NAME, false); - policyOrNull = tryCreatePolicyInstance(policySectionProperties); + policy = createPolicyInstance(policySectionProperties); operationLog.info("Plugin " + pluginName + " initialized"); } @@ -100,12 +96,12 @@ public class AutoArchiverTask implements IMaintenanceTask return new ArchiverDataSetCriteria(olderThan, dataSetTypeCodeOrNull); } - private IAutoArchiverPolicy tryCreatePolicyInstance(SectionProperties policySectionProperties) + private IAutoArchiverPolicy createPolicyInstance(SectionProperties policySectionProperties) { String className = policySectionProperties.getProperties().getProperty(CLASS_PROPERTY_NAME); if (className == null) { - return null; + return DummyAutoArchiverPolicy.INSTANCE; } try { diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/plugins/DummyAutoArchiverPolicy.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/plugins/DummyAutoArchiverPolicy.java index 764f785b5e5dac6b8690b23e4f02c13e2b2ef29a..18e55b76de3cdfa5f9796abdd85568740588de91 100644 --- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/plugins/DummyAutoArchiverPolicy.java +++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/plugins/DummyAutoArchiverPolicy.java @@ -27,13 +27,14 @@ import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExternalData; */ public class DummyAutoArchiverPolicy implements IAutoArchiverPolicy { + public static final IAutoArchiverPolicy INSTANCE = new DummyAutoArchiverPolicy(null); + public DummyAutoArchiverPolicy(Properties properties) { } public List<ExternalData> filter(List<ExternalData> dataSets) { - System.out.println("DummyAutoArchiverPolicy - filtered nothing"); return dataSets; }