diff --git a/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/bootstraptestdata.get.desc.xml b/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/bootstraptestdata.get.desc.xml
index 18aa65c8ba..14c6f8d6c6 100644
--- a/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/bootstraptestdata.get.desc.xml
+++ b/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/bootstraptestdata.get.desc.xml
@@ -5,5 +5,5 @@
argument
admin
required
- internal
+ deprecated
\ No newline at end of file
diff --git a/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/datasets.get.json.ftl b/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/datasets.get.json.ftl
index 509bdd5470..ed1b16310a 100644
--- a/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/datasets.get.json.ftl
+++ b/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/datasets.get.json.ftl
@@ -1,5 +1,14 @@
-<#escape x as jsonUtils.encodeJSONString(x)>
{
- "data": ${data}
-}
-#escape>
\ No newline at end of file
+ "data":
+ {
+ "datasets":
+ [
+ <#list datasets as item>
+ {
+ "label": "${item.label}",
+ "id": "${item.id}"
+ }<#if item_has_next>,#if>
+ #list>
+ ]
+ }
+}
\ No newline at end of file
diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/dataset/DataSetService.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/dataset/DataSetService.java
index eaf93db240..ba13b24080 100644
--- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/dataset/DataSetService.java
+++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/dataset/DataSetService.java
@@ -29,4 +29,12 @@ public interface DataSetService
*/
void loadDataSet(String dataSetId, NodeRef filePlan);
+ /**
+ * Checks if a data set exists with the given data set id
+ *
+ * @param dataSetId the id of the data set which will be checked
+ * @return true if the data set exists, false otherwise
+ */
+ boolean existsDataSet(String dataSetId);
+
}
diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/dataset/DataSetServiceImpl.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/dataset/DataSetServiceImpl.java
index e1a2e9dbff..433b2206a5 100644
--- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/dataset/DataSetServiceImpl.java
+++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/dataset/DataSetServiceImpl.java
@@ -29,6 +29,7 @@ import org.alfresco.service.cmr.security.AuthorityType;
import org.alfresco.service.cmr.security.PermissionService;
import org.alfresco.service.cmr.view.ImporterService;
import org.alfresco.service.cmr.view.Location;
+import org.alfresco.util.ParameterCheck;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -187,6 +188,8 @@ public class DataSetServiceImpl implements DataSetService, RecordsManagementMode
@Override
public void register(DataSet dataSet)
{
+ ParameterCheck.mandatory("dataSet", dataSet);
+
this.dataSets.put(dataSet.getId(), dataSet);
}
@@ -206,6 +209,9 @@ public class DataSetServiceImpl implements DataSetService, RecordsManagementMode
@Override
public void loadDataSet(String dataSetId, NodeRef filePlan)
{
+ ParameterCheck.mandatoryString("dataSetId", dataSetId);
+ ParameterCheck.mandatory("filePlan", filePlan);
+
// Get the data set
DataSet dataSet = getDataSets().get(dataSetId);
@@ -224,10 +230,7 @@ public class DataSetServiceImpl implements DataSetService, RecordsManagementMode
importerService.importView(viewReader, location, null, null);
// Patch data
- DataSetServiceImpl.patchLoadedData(searchService, nodeService, recordsManagementService,
- recordsManagementActionService, permissionService, authorityService,
- recordsManagementSecurityService, recordsManagementSearchBehaviour,
- dispositionService);
+ patchLoadedData();
}
/**
@@ -238,13 +241,7 @@ public class DataSetServiceImpl implements DataSetService, RecordsManagementMode
* @param recordsManagementService
* @param recordsManagementActionService
*/
- private static void patchLoadedData(final SearchService searchService,
- final NodeService nodeService, final RecordsManagementService recordsManagementService,
- final RecordsManagementActionService recordsManagementActionService,
- final PermissionService permissionService, final AuthorityService authorityService,
- final RecordsManagementSecurityService recordsManagementSecurityService,
- final RecordsManagementSearchBehaviour recordManagementSearchBehaviour,
- final DispositionService dispositionService)
+ private void patchLoadedData()
{
AuthenticationUtil.RunAsWork