diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-service-context.xml b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-service-context.xml
index f0833f33ec..384494786c 100644
--- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-service-context.xml
+++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-service-context.xml
@@ -1079,6 +1079,7 @@
+
@@ -1097,7 +1098,16 @@
http://www.alfresco.org/model/rendition/1.0
-
+
+
+ http://www.alfresco.org/model/recordsmanagement/1.0
+ http://www.alfresco.org/model/rmcustom/1.0
+ http://www.alfresco.org/model/recordsmanagementreport/1.0
+ http://www.alfresco.org/model/recordableversion/1.0
+ http://www.alfresco.org/model/dod5015/1.0
+
+
+
diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-version-context.xml b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-version-context.xml
index f2fa42e120..1b85cae998 100644
--- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-version-context.xml
+++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-version-context.xml
@@ -40,6 +40,7 @@
+
diff --git a/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/record/RecordServiceImpl.java b/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/record/RecordServiceImpl.java
index 3bba5a30b4..6b67ff2c7b 100644
--- a/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/record/RecordServiceImpl.java
+++ b/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/record/RecordServiceImpl.java
@@ -197,14 +197,15 @@ public class RecordServiceImpl extends BaseBehaviourBean
}
/** record model URI's */
- public static final List RECORD_MODEL_URIS = Collections.unmodifiableList(
- Arrays.asList(
- RM_URI,
- RM_CUSTOM_URI,
- ReportModel.RMR_URI,
- RecordableVersionModel.RMV_URI,
- DOD5015Model.DOD_URI
- ));
+ private List recordModelURIs;
+
+ /**
+ * @param recordModelURIs namespaces specific to records
+ */
+ public void setRecordModelURIs(List recordModelURIs)
+ {
+ this.recordModelURIs = recordModelURIs;
+ }
/** non-record model URI's */
private static final String[] NON_RECORD_MODEL_URIS = new String[]
@@ -269,6 +270,11 @@ public class RecordServiceImpl extends BaseBehaviourBean
/** records management container type */
private RecordsManagementContainerType recordsManagementContainerType;
+ public RecordableVersionService getRecordableVersionService()
+ {
+ return recordableVersionService;
+ }
+
/** recordable version service */
private RecordableVersionService recordableVersionService;
@@ -1733,7 +1739,7 @@ public class RecordServiceImpl extends BaseBehaviourBean
else
{
// check the URI's
- result = RECORD_MODEL_URIS.contains(property.getNamespaceURI());
+ result = recordModelURIs.contains(property.getNamespaceURI());
// check the custom model
if (!result && !ArrayUtils.contains(NON_RECORD_MODEL_URIS, property.getNamespaceURI()))
diff --git a/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/version/RecordableVersionNodeServiceImpl.java b/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/version/RecordableVersionNodeServiceImpl.java
index c9ad59aecc..b14d27858b 100644
--- a/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/version/RecordableVersionNodeServiceImpl.java
+++ b/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/version/RecordableVersionNodeServiceImpl.java
@@ -27,13 +27,12 @@
package org.alfresco.module.org_alfresco_module_rm.version;
-import static org.alfresco.module.org_alfresco_module_rm.record.RecordServiceImpl.RECORD_MODEL_URIS;
-
import java.io.Serializable;
import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
+import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -45,6 +44,7 @@ import org.alfresco.repo.version.Version2Model;
import org.alfresco.repo.version.common.VersionUtil;
import org.alfresco.service.cmr.repository.InvalidNodeRefException;
import org.alfresco.service.cmr.repository.NodeRef;
+import org.alfresco.service.cmr.version.Version;
import org.alfresco.service.namespace.QName;
/**
@@ -60,6 +60,17 @@ public class RecordableVersionNodeServiceImpl extends Node2ServiceImpl
/** record service */
private RecordService recordService;
+ /** record model URI's */
+ private List recordModelURIs;
+
+ /**
+ * @param recordModelURIs namespaces specific to records
+ */
+ public void setRecordModelURIs(List recordModelURIs)
+ {
+ this.recordModelURIs = recordModelURIs;
+ }
+
/**
* @param recordService record service
*/
@@ -116,7 +127,7 @@ public class RecordableVersionNodeServiceImpl extends Node2ServiceImpl
if (!PROP_RECORDABLE_VERSION_POLICY.equals(property) &&
!PROP_FILE_PLAN.equals(property) &&
(recordService.isRecordMetadataProperty(property) ||
- RECORD_MODEL_URIS.contains(property.getNamespaceURI())))
+ recordModelURIs.contains(property.getNamespaceURI())))
{
properties.remove(property);
}
@@ -208,6 +219,7 @@ public class RecordableVersionNodeServiceImpl extends Node2ServiceImpl
NodeRef converted = VersionUtil.convertNodeRef(nodeRef);
if (dbNodeService.hasAspect(converted, ASPECT_RECORDED_VERSION))
{
+
NodeRef record = (NodeRef)dbNodeService.getProperty(converted, PROP_RECORD_NODE_REF);
if (record != null && dbNodeService.exists(record))
{
@@ -244,7 +256,7 @@ public class RecordableVersionNodeServiceImpl extends Node2ServiceImpl
{
if (!ASPECT_VERSIONABLE.equals(aspect) &&
(recordService.isRecordMetadataAspect(aspect) ||
- RECORD_MODEL_URIS.contains(aspect.getNamespaceURI())))
+ recordModelURIs.contains(aspect.getNamespaceURI())))
{
result.remove(aspect);
}