mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-07-31 17:39:05 +00:00
Merge remote-tracking branch 'remotes/origin/feature/APPS-455' into feature/APPS-460_ACForLegalHoldFlag_no
This commit is contained in:
@@ -1079,6 +1079,7 @@
|
||||
<property name="dispositionService" ref="DispositionService"/>
|
||||
<property name="recordableVersionService" ref="RecordableVersionService"/>
|
||||
<property name="alwaysEditURIs" ref="recordService_alwaysEditURIs" />
|
||||
<property name="recordModelURIs" ref="recordService_recordModelURIs" />
|
||||
<property name="incompleteNodeTagger" ref="incompleteNodeTagger" />
|
||||
<property name="freezeService" ref="FreezeService" />
|
||||
<property name="namespaceService" ref="NamespaceService"/>
|
||||
@@ -1097,7 +1098,16 @@
|
||||
<value>http://www.alfresco.org/model/rendition/1.0</value>
|
||||
</util:list>
|
||||
|
||||
<bean id="recordMetadataAspectBootstrap" class="org.alfresco.module.org_alfresco_module_rm.record.RecordMetadataBootstrap" init-method="init" abstract="true">
|
||||
<!-- Defines a list of namespace URIs for record aspects -->
|
||||
<util:list id="recordService_recordModelURIs" value-type="java.lang.String">
|
||||
<value>http://www.alfresco.org/model/recordsmanagement/1.0</value>
|
||||
<value>http://www.alfresco.org/model/rmcustom/1.0</value>
|
||||
<value>http://www.alfresco.org/model/recordsmanagementreport/1.0</value>
|
||||
<value>http://www.alfresco.org/model/recordableversion/1.0</value>
|
||||
<value>http://www.alfresco.org/model/dod5015/1.0</value>
|
||||
</util:list>
|
||||
|
||||
<bean id="recordMetadataAspectBootstrap" class="org.alfresco.module.org_alfresco_module_rm.record.RecordMetadataBootstrap" init-method="init" abstract="true">
|
||||
<property name="recordService" ref="recordService"/>
|
||||
<property name="namespaceService" ref="namespaceService"/>
|
||||
</bean>
|
||||
|
@@ -40,6 +40,7 @@
|
||||
<!-- extended version node service bean definition -->
|
||||
<bean id="rm.versionNodeService" abstract="true" class="org.alfresco.module.org_alfresco_module_rm.version.RecordableVersionNodeServiceImpl">
|
||||
<property name="recordService" ref="RecordService" />
|
||||
<property name="recordModelURIs" ref="recordService_recordModelURIs"/>
|
||||
</bean>
|
||||
<bean class="org.alfresco.util.BeanExtender">
|
||||
<property name="beanName" value="versionNodeService" />
|
||||
|
@@ -197,14 +197,15 @@ public class RecordServiceImpl extends BaseBehaviourBean
|
||||
}
|
||||
|
||||
/** record model URI's */
|
||||
public static final List<String> RECORD_MODEL_URIS = Collections.unmodifiableList(
|
||||
Arrays.asList(
|
||||
RM_URI,
|
||||
RM_CUSTOM_URI,
|
||||
ReportModel.RMR_URI,
|
||||
RecordableVersionModel.RMV_URI,
|
||||
DOD5015Model.DOD_URI
|
||||
));
|
||||
private List<String> recordModelURIs;
|
||||
|
||||
/**
|
||||
* @param recordModelURIs namespaces specific to records
|
||||
*/
|
||||
public void setRecordModelURIs(List<String> 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()))
|
||||
|
@@ -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<String> recordModelURIs;
|
||||
|
||||
/**
|
||||
* @param recordModelURIs namespaces specific to records
|
||||
*/
|
||||
public void setRecordModelURIs(List<String> 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);
|
||||
}
|
||||
|
Reference in New Issue
Block a user