diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/hold/AddToHoldsTests.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/hold/AddToHoldsTests.java index bdd9f6f9bf..2476370482 100644 --- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/hold/AddToHoldsTests.java +++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/hold/AddToHoldsTests.java @@ -92,7 +92,7 @@ public class AddToHoldsTests extends BaseRMRestTest "permissions to perform this operation."; private static final String INVALID_TYPE_ERROR_MESSAGE = "Items added to a hold must be either a record, a " + "record folder or active content."; - private static final String LOCKED_FILE_ERROR_MESSAGE = "Locked nodes can't be added to hold"; + private static final String LOCKED_FILE_ERROR_MESSAGE = "Locked content can't be added to a hold."; private SiteModel testSite; private String holdNodeRef; private FileModel documentHeld, contentToAddToHold, contentAddToHoldNoPermission; diff --git a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/hold/PreventActionsOnFrozenContentTests.java b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/hold/PreventActionsOnFrozenContentTests.java index 6abe3d69b9..1f6fee87f8 100644 --- a/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/hold/PreventActionsOnFrozenContentTests.java +++ b/rm-automation/rm-automation-community-rest-api/src/test/java/org/alfresco/rest/rm/community/hold/PreventActionsOnFrozenContentTests.java @@ -143,7 +143,7 @@ public class PreventActionsOnFrozenContentTests extends BaseRMRestTest STEP("Check the request failed."); restClient.assertStatusCodeIs(FORBIDDEN); - restClient.assertLastError().containsSummary("Frozen nodes can not be updated."); + restClient.assertLastError().containsSummary("Frozen content can't be updated."); } /* @@ -160,7 +160,7 @@ public class PreventActionsOnFrozenContentTests extends BaseRMRestTest STEP("Check the request failed."); restClient.assertStatusCodeIs(FORBIDDEN); - restClient.assertLastError().containsSummary("Frozen nodes can not be updated."); + restClient.assertLastError().containsSummary("Frozen content can't be updated."); } /* @@ -176,7 +176,7 @@ public class PreventActionsOnFrozenContentTests extends BaseRMRestTest STEP("Check the request failed."); restClient.assertStatusCodeIs(FORBIDDEN); - restClient.assertLastError().containsSummary("Frozen nodes can not be deleted."); + restClient.assertLastError().containsSummary("Frozen content can't be deleted."); } /** @@ -186,7 +186,7 @@ public class PreventActionsOnFrozenContentTests extends BaseRMRestTest */ @Test @AlfrescoTest(jira = "RM-6924") - public void copyFrozenFile() throws Exception + public void copyFrozenFile() { STEP("Copy frozen file"); String postBody = JsonBodyGenerator.keyValueJson("targetParentId",folderModel.getNodeRef()); @@ -211,7 +211,7 @@ public class PreventActionsOnFrozenContentTests extends BaseRMRestTest STEP("Check the request failed."); assertStatusCode(FORBIDDEN); - getRestAPIFactory().getRmRestWrapper().assertLastError().containsSummary("Frozen nodes can not be moved."); + getRestAPIFactory().getRmRestWrapper().assertLastError().containsSummary("Frozen content can't be moved."); } /** @@ -219,12 +219,10 @@ public class PreventActionsOnFrozenContentTests extends BaseRMRestTest * When I update the record folder and make the records as vital * Then I am successful and the records not held are marked as vital * And the frozen nodes have the vital record search properties updated - * - * @throws Exception */ @Test @AlfrescoTest (jira = "RM-6929") - public void updateRecordFolderVitalProperties() throws Exception + public void updateRecordFolderVitalProperties() { STEP("Update the vital record properties for the record folder"); // Create the record folder properties to update @@ -322,7 +320,7 @@ public class PreventActionsOnFrozenContentTests extends BaseRMRestTest } @AfterClass (alwaysRun = true) - public void cleanUpPreventActionsOnFrozenContent() throws Exception + public void cleanUpPreventActionsOnFrozenContent() { holdsAPI.deleteHold(getAdminUser().getUsername(), getAdminUser().getPassword(), HOLD_ONE); dataSite.usingAdmin().deleteSite(testSite); diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/bootstrap/report/report_rmr_holdReport.html.ftl b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/bootstrap/report/report_rmr_holdReport.html.ftl index 93dca7fbcb..3091faf11d 100644 --- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/bootstrap/report/report_rmr_holdReport.html.ftl +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/bootstrap/report/report_rmr_holdReport.html.ftl @@ -92,7 +92,7 @@ ${reportDate} - <#if node.childAssociations["rma:frozenRecords"]??> + <#if node.childAssociations["rma:frozenContent"]??>
@@ -104,7 +104,7 @@
- <#list node.childAssociations["rma:frozenRecords"] as child> + <#list node.childAssociations["rma:frozenContent"] as child>
diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/action-service_it.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/action-service_it.properties index 5256a93396..81c2032be7 100644 --- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/action-service_it.properties +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/action-service_it.properties @@ -18,7 +18,7 @@ rm.action.ghosted-prop-update=Impossibile aggiornare le propriet\u00e0 di un rec rm.action.valid-date-disp-asof=Inserire una data valida come data di inizio dell'azione di conservazione. rm.action.disp-asof-lifecycle-applied=Impossibile modificare la data di inizio di conservazione per un record o cartella di record per cui \u00e8 stato impostato un ciclo di vita. rm.action.hold-edit-reason-none=Impossibile modificare il motivo della sospensione poich\u00e9 la sospensione \u00e8 stata creata senza un motivo. Provare a ricreare la sospensione. -rm.action.hold-edit-type=Impossibile modificare la sospensione per {1} poich\u00e9 non \u00e8 una sospensione. +rm.action.hold-edit-type=Impossibile modificare il motivo della sospensione per {1} poich\u00e9 non \u00e8 una sospensione. rm.action.specify-avlid-date=Inserire una data valida come data di inizio dell'esame. rm.action.review-details-only=\u00c8 possibile modificare solo i dettagli dell'esame dei record fondamentali. rm.action.freeze-no-reason=Impossibile sospendere un record senza un motivo. Aggiungere un motivo alla sospensione. diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/action-service_pt_BR.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/action-service_pt_BR.properties index 38358fe1fe..b02afa69cd 100644 --- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/action-service_pt_BR.properties +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/action-service_pt_BR.properties @@ -17,12 +17,12 @@ rm.action.no-declare-mand-prop=Voc\u00ea deve definir todas as propriedades obri rm.action.ghosted-prop-update=N\u00e3o \u00e9 poss\u00edvel atualizar as propriedades de um documento arquiv\u00edstico destru\u00eddo anteriormente. rm.action.valid-date-disp-asof=Insira uma data v\u00e1lida para a data de in\u00edcio da a\u00e7\u00e3o de reten\u00e7\u00e3o. rm.action.disp-asof-lifecycle-applied=N\u00e3o \u00e9 poss\u00edvel editar a data de in\u00edcio da reten\u00e7\u00e3o de um documento arquiv\u00edstico ou uma pasta de documento arquiv\u00edstico que tenha um ciclo de vida aplicado. -rm.action.hold-edit-reason-none=N\u00e3o \u00e9 poss\u00edvel editar o motivo para manter, pois a espera foi criada sem um motivo. Tente recriar a espera. -rm.action.hold-edit-type=N\u00e3o \u00e9 poss\u00edvel editar o motivo para manter de {1}, pois isso n\u00e3o \u00e9 uma espera. +rm.action.hold-edit-reason-none=N\u00e3o \u00e9 poss\u00edvel editar o motivo da espera pois a espera foi criada sem um motivo. Tente recriar a espera. +rm.action.hold-edit-type=N\u00e3o \u00e9 poss\u00edvel editar o motivo da espera de {1}, pois isso n\u00e3o \u00e9 uma espera. rm.action.specify-avlid-date=Insira uma data v\u00e1lida para a data de in\u00edcio da revis\u00e3o. rm.action.review-details-only=Voc\u00ea somente pode editar os detalhes de revis\u00e3o de documentos arquiv\u00edsticos vitais. -rm.action.freeze-no-reason=N\u00e3o \u00e9 poss\u00edvel manter um documento arquiv\u00edstico sem um motivo. Adicione um motivo para manter. -rm.action.freeze-only-records-folders=Voc\u00ea pode manter somente documentos arquiv\u00edsticos ou pastas de documentos arquiv\u00edsticos. +rm.action.freeze-no-reason=N\u00e3o \u00e9 poss\u00edvel colocar em espera um documento arquiv\u00edstico sem um motivo. Adicione um motivo \u00e0 espera. +rm.action.freeze-only-records-folders=Voc\u00ea pode colocar em espera somente documentos arquiv\u00edsticos ou pastas de documentos arquiv\u00edsticos. rm.action.no-open-record-folder=N\u00e3o \u00e9 poss\u00edvel reabrir {0}, pois isso n\u00e3o \u00e9 uma pasta de documento arquiv\u00edstico. rm.action.not-hold-type=N\u00e3o \u00e9 poss\u00edvel realizar a a\u00e7\u00e3o em {1}, pois isso n\u00e3o \u00e9 uma espera. rm.action.no-read-mime-message=N\u00e3o foi poss\u00edvel ler a mensagem de tipo de arquivo, pois {0}. diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/actions_it.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/actions_it.properties index 1718863bb6..7a1a11e1f2 100644 --- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/actions_it.properties +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/actions_it.properties @@ -105,7 +105,7 @@ reject.description=Respinge un record e sposta il file nella sua posizione origi reject.reason.display-label=Respingi motivo # Request Information requestInfo.title=Richiedi informazioni -requestInfo.description=Avvia un flusso di lavoro per richiedere pi\u00f9 informazioni per un record +requestInfo.description=Avvia un workflow per richiedere pi\u00f9 informazioni per un record # Execute script executeScript.title=Esegui script executeScript.description=Esegui uno script diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/actions_pt_BR.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/actions_pt_BR.properties index 39dc6c9114..5cc22f14bd 100644 --- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/actions_pt_BR.properties +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/actions_pt_BR.properties @@ -118,8 +118,8 @@ setPropertyValue.title=Definir valor da propriedade setPropertyValue.description=Define um valor de propriedade # Edit Hold Reason -editHoldReason.title=Editar motivo para manter -editHoldReason.description=Edita o motivo para manter +editHoldReason.title=Editar motivo para espera +editHoldReason.description=Edita o motivo para a espera # Relinquish Hold relinquishHold.title=Desistir da espera relinquishHold.description=Desiste da espera diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/capability-service_pt_BR.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/capability-service_pt_BR.properties index 985ec97d43..077512ccd1 100644 --- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/capability-service_pt_BR.properties +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/capability-service_pt_BR.properties @@ -59,7 +59,7 @@ capability.FileTransferReport.title=Relat\u00f3rio de transfer\u00eancia de arqu capability.EndRetention.title=Encerrar reten\u00e7\u00e3o # Hold Controls -capability.group.holdControls.title=Controles de espera +capability.group.holdControls.title=Controles da espera capability.ExtendRetentionPeriodOrFreeze.title=Estender per\u00edodo de reten\u00e7\u00e3o ou congelar capability.Unfreeze.title=Descongelar capability.ViewUpdateReasonsForFreeze.title=Visualizar motivos de atualiza\u00e7\u00e3o para congelar diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service.properties index c91fb2c11a..20aedc40af 100644 --- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service.properties +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service.properties @@ -1,9 +1,9 @@ -rm.hold.not-hold=The node {0} is not a hold. -rm.hold.add-to-hold-invalid-type={0} is neither a record nor a record folder nor active content. Only records, record \ +rm.hold.not-hold={0} is not a hold. +rm.hold.add-to-hold-invalid-type={0} isn't a record, a record folder or active content. Only records, record \ folders or active content can be added to a hold. -rm.hold.add-to-hold-archived-node=Archived nodes can't be added to hold. -rm.hold.add-to-hold-locked-node=Locked nodes can't be added to hold. -rm.hold.delete-frozen-node=Frozen nodes can not be deleted. -rm.hold.delete-node-frozen-children=Can not delete node, because it contains a frozen child node. -rm.hold.move-frozen-node=Frozen nodes can not be moved. -rm.hold.update-frozen-node=Frozen nodes can not be updated. \ No newline at end of file +rm.hold.add-to-hold-archived-node=Archived content can't be added to a hold. +rm.hold.add-to-hold-locked-node=Locked content can't be added to a hold. +rm.hold.delete-frozen-node=Frozen content can't be deleted. +rm.hold.delete-node-frozen-children=Can't delete folder because it contains frozen content. +rm.hold.move-frozen-node=Frozen content can't be moved. +rm.hold.update-frozen-node=Frozen content can't be updated. \ No newline at end of file diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_de.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_de.properties new file mode 100644 index 0000000000..be8d2ab7bb --- /dev/null +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_de.properties @@ -0,0 +1,8 @@ +rm.hold.not-hold={0} ist kein Sperrbereich. +rm.hold.add-to-hold-invalid-type={0} ist kein Record, Record-Ordner oder aktiver Inhalt. Nur Records, Record-Ordner und aktive Inhalte k\u00f6nnen zu einer Sperre hinzugef\u00fcgt werden. +rm.hold.add-to-hold-archived-node=Archivierte Inhalte k\u00f6nnen nicht zu einer Sperre hinzugef\u00fcgt werden. +rm.hold.add-to-hold-locked-node=Gesperrte Inhalte k\u00f6nnen nicht zu einer Sperre hinzugef\u00fcgt werden. +rm.hold.delete-frozen-node=Fixierte Inhalte k\u00f6nnen nicht gel\u00f6scht werden. +rm.hold.delete-node-frozen-children=Der Ordner kann nicht gel\u00f6scht werden, weil er fixierte Inhalte enth\u00e4lt. +rm.hold.move-frozen-node=Fixierte Inhalte k\u00f6nnen nicht verschoben werden. +rm.hold.update-frozen-node=Fixierte Inhalte k\u00f6nnen nicht aktualisiert werden. diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_es.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_es.properties new file mode 100644 index 0000000000..cd59447971 --- /dev/null +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_es.properties @@ -0,0 +1,8 @@ +rm.hold.not-hold={0} no es un bloqueo. +rm.hold.add-to-hold-invalid-type={0} no es un documento de archivo, una carpeta de documentos de archivo ni un contenido activo. Solo los documentos de archivo, las carpetas de documentos de archivo y los contenidos activos pueden a\u00f1adirse a un bloqueo. +rm.hold.add-to-hold-archived-node=El contenido archivado no puede a\u00f1adirse a un bloqueo. +rm.hold.add-to-hold-locked-node=El contenido bloqueado no puede a\u00f1adirse a un bloqueo. +rm.hold.delete-frozen-node=El contenido congelado no puede eliminarse. +rm.hold.delete-node-frozen-children=La carpeta no puede eliminarse porque contiene contenido congelado. +rm.hold.move-frozen-node=El contenido congelado no puede moverse. +rm.hold.update-frozen-node=El contenido congelado no puede actualizarse. diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_fr.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_fr.properties new file mode 100644 index 0000000000..e723259aeb --- /dev/null +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_fr.properties @@ -0,0 +1,8 @@ +rm.hold.not-hold={0} n''est pas une suspension. +rm.hold.add-to-hold-invalid-type={0} n''est pas un document d''archives, un dossier d''archives ou un contenu actif. Seuls les documents d''archives, dossiers d''archives ou contenus actifs peuvent \u00eatre ajout\u00e9s \u00e0 une suspension. +rm.hold.add-to-hold-archived-node=Impossible d'ajouter du contenu archiv\u00e9 \u00e0 une suspension. +rm.hold.add-to-hold-locked-node=Impossible d'ajouter du contenu verrouill\u00e9 \u00e0 une suspension. +rm.hold.delete-frozen-node=Impossible de supprimer du contenu gel\u00e9. +rm.hold.delete-node-frozen-children=Impossible de supprimer le dossier car il contient du contenu gel\u00e9. +rm.hold.move-frozen-node=Impossible de d\u00e9placer du contenu gel\u00e9. +rm.hold.update-frozen-node=Impossible de mettre \u00e0 jour du contenu gel\u00e9. diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_it.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_it.properties new file mode 100644 index 0000000000..df5543374e --- /dev/null +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_it.properties @@ -0,0 +1,8 @@ +rm.hold.not-hold={0} non \u00e8 una sospensione. +rm.hold.add-to-hold-invalid-type={0} non \u00e8 un record, una cartella di record o un contenuto attivo. Solo i record, le cartelle di record o i contenuti attivi possono essere aggiunti ad una sospensione. +rm.hold.add-to-hold-archived-node=I contenuti archiviati non possono essere aggiunti ad una sospensione. +rm.hold.add-to-hold-locked-node=I contenuti bloccati non possono essere aggiunti ad una sospensione. +rm.hold.delete-frozen-node=I contenuti congelati non possono essere eliminati. +rm.hold.delete-node-frozen-children=Impossibile eliminare la cartella poich\u00e9 contiene contenuti congelati. +rm.hold.move-frozen-node=I contenuti congelati non possono essere spostati. +rm.hold.update-frozen-node=I contenuti congelati non possono essere aggiornati. diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_ja.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_ja.properties new file mode 100644 index 0000000000..a55e0ce1dc --- /dev/null +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_ja.properties @@ -0,0 +1,8 @@ +rm.hold.not-hold={0} \u306f\u30db\u30fc\u30eb\u30c9\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002 +rm.hold.add-to-hold-invalid-type={0} \u306f\u30ec\u30b3\u30fc\u30c9\u3001\u30ec\u30b3\u30fc\u30c9\u30d5\u30a9\u30eb\u30c0\u3001\u30a2\u30af\u30c6\u30a3\u30d6\u306a\u30b3\u30f3\u30c6\u30f3\u30c4\u306e\u3044\u305a\u308c\u3067\u3082\u3042\u308a\u307e\u305b\u3093\u3002\u30db\u30fc\u30eb\u30c9\u306b\u8ffd\u52a0\u3067\u304d\u308b\u306e\u306f\u30ec\u30b3\u30fc\u30c9\u3001\u30ec\u30b3\u30fc\u30c9\u30d5\u30a9\u30eb\u30c0\u3001\u30a2\u30af\u30c6\u30a3\u30d6\u306a\u30b3\u30f3\u30c6\u30f3\u30c4\u306e\u307f\u3067\u3059\u3002 +rm.hold.add-to-hold-archived-node=\u30a2\u30fc\u30ab\u30a4\u30d6\u6e08\u307f\u306e\u30b3\u30f3\u30c6\u30f3\u30c4\u306f\u30db\u30fc\u30eb\u30c9\u306b\u8ffd\u52a0\u3067\u304d\u307e\u305b\u3093\u3002 +rm.hold.add-to-hold-locked-node=\u30ed\u30c3\u30af\u3055\u308c\u3066\u3044\u308b\u30b3\u30f3\u30c6\u30f3\u30c4\u306f\u30db\u30fc\u30eb\u30c9\u306b\u8ffd\u52a0\u3067\u304d\u307e\u305b\u3093\u3002 +rm.hold.delete-frozen-node=\u51cd\u7d50\u3055\u308c\u305f\u30b3\u30f3\u30c6\u30f3\u30c4\u306f\u524a\u9664\u3067\u304d\u307e\u305b\u3093\u3002 +rm.hold.delete-node-frozen-children=\u30d5\u30a9\u30eb\u30c0\u306b\u51cd\u7d50\u3055\u308c\u305f\u30b3\u30f3\u30c6\u30f3\u30c4\u304c\u542b\u307e\u308c\u3066\u3044\u308b\u305f\u3081\u3001\u524a\u9664\u3067\u304d\u307e\u305b\u3093\u3002 +rm.hold.move-frozen-node=\u51cd\u7d50\u3055\u308c\u305f\u30b3\u30f3\u30c6\u30f3\u30c4\u306f\u79fb\u52d5\u3067\u304d\u307e\u305b\u3093\u3002 +rm.hold.update-frozen-node=\u51cd\u7d50\u3055\u308c\u305f\u30b3\u30f3\u30c6\u30f3\u30c4\u306f\u66f4\u65b0\u3067\u304d\u307e\u305b\u3093\u3002 diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_nb.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_nb.properties new file mode 100644 index 0000000000..4712287b6c --- /dev/null +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_nb.properties @@ -0,0 +1,8 @@ +rm.hold.not-hold={0} er ikke en hold. +rm.hold.add-to-hold-invalid-type={0} er ikke en oppf\u00f8ring, en oppf\u00f8ringsmappe eller aktivt innhold. Kun oppf\u00f8ringer, oppf\u00f8ringsmapper eller aktivt innhold kan legges til i en hold. +rm.hold.add-to-hold-archived-node=Arkivert innhold kan ikke legges til en hold. +rm.hold.add-to-hold-locked-node=L\u00e5st innhold kan ikke legges til en hold. +rm.hold.delete-frozen-node=Frosset innhold kan ikke slettes. +rm.hold.delete-node-frozen-children=Kan ikke slette mappen fordi den inneholder frosset innhold. +rm.hold.move-frozen-node=Frosset innhold kan ikke flyttes. +rm.hold.update-frozen-node=Frosset innhold kan ikke oppdateres. diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_nl.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_nl.properties new file mode 100644 index 0000000000..3234858fec --- /dev/null +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_nl.properties @@ -0,0 +1,8 @@ +rm.hold.not-hold={0} is geen wachtstand. +rm.hold.add-to-hold-invalid-type={0} is geen record, recordmap of actieve content. Alleen records, recordmappen of actieve content kunnen worden toegevoegd aan een wachtstand. +rm.hold.add-to-hold-archived-node=Gearchiveerde content kan niet worden toegevoegd aan een wachtstand. +rm.hold.add-to-hold-locked-node=Vergrendelde content kan niet worden toegevoegd aan een wachtstand. +rm.hold.delete-frozen-node=Geblokkeerde content kan niet worden verwijderd. +rm.hold.delete-node-frozen-children=De map kan niet worden verwijderd omdat deze geblokkeerde content bevat. +rm.hold.move-frozen-node=Geblokkeerde content kan niet worden verplaatst. +rm.hold.update-frozen-node=Geblokkeerde content kan niet worden bijgewerkt. diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_pt_BR.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_pt_BR.properties new file mode 100644 index 0000000000..56cafc93a5 --- /dev/null +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_pt_BR.properties @@ -0,0 +1,8 @@ +rm.hold.not-hold={0} n\u00e3o \u00e9 uma espera. +rm.hold.add-to-hold-invalid-type={0} n\u00e3o \u00e9 um documento arquiv\u00edstico, uma pasta de documento arquiv\u00edstico ou conte\u00fado ativo. Somente documentos arquiv\u00edsticos, pastas de documentos arquiv\u00edsticos ou conte\u00fados ativos podem ser adicionados a uma espera. +rm.hold.add-to-hold-archived-node=Conte\u00fado arquivado n\u00e3o pode ser adicionado a uma espera. +rm.hold.add-to-hold-locked-node=Conte\u00fado bloqueado n\u00e3o pode ser adicionado a uma espera. +rm.hold.delete-frozen-node=Conte\u00fado congelado n\u00e3o pode ser exclu\u00eddo. +rm.hold.delete-node-frozen-children=N\u00e3o \u00e9 poss\u00edvel excluir a pasta pois ela cont\u00e9m conte\u00fado congelado. +rm.hold.move-frozen-node=Conte\u00fado congelado n\u00e3o pode ser movido. +rm.hold.update-frozen-node=Conte\u00fado congelado n\u00e3o pode ser atualizado. diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_ru.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_ru.properties new file mode 100644 index 0000000000..e026e5dbfd --- /dev/null +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_ru.properties @@ -0,0 +1,8 @@ +rm.hold.not-hold={0} \u043d\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u043e\u0439. +rm.hold.add-to-hold-invalid-type={0} \u043d\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0437\u0430\u043f\u0438\u0441\u044c\u044e, \u043f\u0430\u043f\u043a\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u0438\u043b\u0438 \u0430\u043a\u0442\u0438\u0432\u043d\u044b\u043c \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u044b\u043c. \u0422\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u043f\u0438\u0441\u0438, \u043f\u0430\u043f\u043a\u0438 \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u0438\u043b\u0438 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e \u0432 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0443. +rm.hold.add-to-hold-archived-node=\u0410\u0440\u0445\u0438\u0432\u043d\u043e\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e \u0432 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0443. +rm.hold.add-to-hold-locked-node=\u0417\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e \u0432 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0443. +rm.hold.delete-frozen-node=\u0417\u0430\u043a\u0440\u0435\u043f\u043b\u0435\u043d\u043d\u043e\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0443\u0434\u0430\u043b\u0435\u043d\u043e. +rm.hold.delete-node-frozen-children=\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u043f\u0430\u043f\u043a\u0443, \u0442. \u043a. \u0432 \u043d\u0435\u0439 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0437\u0430\u043a\u0440\u0435\u043f\u043b\u0435\u043d\u043d\u043e\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435. +rm.hold.move-frozen-node=\u0417\u0430\u043a\u0440\u0435\u043f\u043b\u0435\u043d\u043d\u043e\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d\u043e. +rm.hold.update-frozen-node=\u0417\u0430\u043a\u0440\u0435\u043f\u043b\u0435\u043d\u043d\u043e\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u043e. diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_zh_CN.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_zh_CN.properties new file mode 100644 index 0000000000..d9f0930a38 --- /dev/null +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/hold-service_zh_CN.properties @@ -0,0 +1,8 @@ +rm.hold.not-hold={0} \u4e0d\u662f\u4fdd\u5b58\u3002 +rm.hold.add-to-hold-invalid-type={0} \u4e0d\u662f\u8bb0\u5f55\u3001\u8bb0\u5f55\u6587\u4ef6\u5939\u6216\u6d3b\u52a8\u5185\u5bb9\u3002\u53ea\u6709\u8bb0\u5f55\u3001\u8bb0\u5f55\u6587\u4ef6\u5939\u6216\u6d3b\u52a8\u5185\u5bb9\u53ef\u4ee5\u6dfb\u52a0\u5230\u4fdd\u5b58\u4e2d\u3002 +rm.hold.add-to-hold-archived-node=\u5df2\u5b58\u6863\u5185\u5bb9\u65e0\u6cd5\u6dfb\u52a0\u5230\u4fdd\u5b58\u4e2d\u3002 +rm.hold.add-to-hold-locked-node=\u9501\u5b9a\u5185\u5bb9\u65e0\u6cd5\u6dfb\u52a0\u5230\u4fdd\u5b58\u4e2d\u3002 +rm.hold.delete-frozen-node=\u65e0\u6cd5\u5220\u9664\u5df2\u5173\u95ed\u5185\u5bb9\u3002 +rm.hold.delete-node-frozen-children=\u65e0\u6cd5\u5220\u9664\u6587\u4ef6\u5939\uff0c\u56e0\u4e3a\u5176\u5305\u542b\u5df2\u5173\u95ed\u5185\u5bb9\u3002 +rm.hold.move-frozen-node=\u65e0\u6cd5\u79fb\u52a8\u5df2\u5173\u95ed\u5185\u5bb9\u3002 +rm.hold.update-frozen-node=\u65e0\u6cd5\u66f4\u65b0\u5df2\u5173\u95ed\u5185\u5bb9\u3002 diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/records-management-service_it.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/records-management-service_it.properties index 2cc0b95643..8a309cde89 100644 --- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/records-management-service_it.properties +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/records-management-service_it.properties @@ -21,5 +21,5 @@ rm.service.final-version=Finale rm.service.final-version-description=Versione del record archiviata finale rm.service.enable-autoversion-on-record-creation=Versione automatica sulla creazione del record rm.service.add-children-to-closed-record-folder=Impossibile aggiungere nuovi elementi a una cartella di record chiusa. -rm.service.add-children-to-frozen-record-folder=Impossibile aggiungere nuovi elementi a una cartella record bloccata +rm.service.add-children-to-frozen-record-folder=Impossibile aggiungere nuovi elementi a una cartella di record congelata. rm.service.update-record-content=Impossibile aggiornare la propriet\u00e0 del contenuto di un record. diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/records-model_it.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/records-model_it.properties index cc70dfab3d..3f4e28d117 100644 --- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/records-model_it.properties +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/records-model_it.properties @@ -163,7 +163,7 @@ rma_recordsmanagement.property.rma_dateFiled.decription=Data di archiviazione rma_recordsmanagement.property.rma_origionalName=Nome originale rma_recordsmanagement.aspect.rma_recordMetaData.title=Metadati del record -rma_recordsmanagement.aspect.rma_recordMetaData.description=Aspetto indicatore per metadati di record +rma_recordsmanagement.aspect.rma_recordMetaData.description=Aspetto indicatore per metadati del record rma_recordsmanagement.aspect.rma_commonRecordDetails.title=Dettagli record comuni rma_recordsmanagement.aspect.rma_commonRecordDetails.description=Metadati comuni a tutti i tipi di record diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/records-model_pt_BR.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/records-model_pt_BR.properties index 8165d95a91..3257b661d4 100644 --- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/records-model_pt_BR.properties +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/records-model_pt_BR.properties @@ -104,10 +104,10 @@ rma_recordsmanagement.property.rma_eventExecutionCompletedBy.decription=Evento c rma_recordsmanagement.property.rma_eventExecutionCompletedAt.title=Evento conclu\u00eddo em rma_recordsmanagement.property.rma_eventExecutionCompletedAt.decription=Evento conclu\u00eddo em -rma_recordsmanagement.type.rma_hold.title=Manter -rma_recordsmanagement.type.rma_hold.decription=Manter -rma_recordsmanagement.property.rma_holdReason.title=Motivo para manter -rma_recordsmanagement.property.rma_holdReason.decription=Motivo para manter +rma_recordsmanagement.type.rma_hold.title=Espera +rma_recordsmanagement.type.rma_hold.decription=Espera +rma_recordsmanagement.property.rma_holdReason.title=Motivo para espera +rma_recordsmanagement.property.rma_holdReason.decription=Motivo para espera rma_recordsmanagement.association.rma_frozenRecords.title=Documentos arquiv\u00edsticos mantidos rma_recordsmanagement.association.rma_frozenRecords.decription=Documentos arquiv\u00edsticos mantidos @@ -235,8 +235,8 @@ rma_recordsmanagement.property.rma_recordSearchDispositionAuthority.title=Autori rma_recordsmanagement.property.rma_recordSearchDispositionAuthority.description=Autoridade de reten\u00e7\u00e3o rma_recordsmanagement.property.rma_recordSearchDispositionInstructions.title=Instru\u00e7\u00f5es de reten\u00e7\u00e3o rma_recordsmanagement.property.rma_recordSearchDispositionInstructions.description=Instru\u00e7\u00f5es de reten\u00e7\u00e3o -rma_recordsmanagement.property.rma_recordSearchHoldReason.title=Motivo para manter -rma_recordsmanagement.property.rma_recordSearchHoldReason.description=Motivo para manter +rma_recordsmanagement.property.rma_recordSearchHoldReason.title=Motivo para espera +rma_recordsmanagement.property.rma_recordSearchHoldReason.description=Motivo para espera rma_recordsmanagement.property.rma_recordSearchVitalRecordReviewPeriod.title=Per\u00edodo de revis\u00e3o do documento arquiv\u00edstico vital rma_recordsmanagement.property.rma_recordSearchVitalRecordReviewPeriod.description=Per\u00edodo de revis\u00e3o do documento arquiv\u00edstico vital rma_recordsmanagement.property.rma_recordSearchVitalRecordReviewPeriodExpression.title=Express\u00e3o do per\u00edodo de revis\u00e3o diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/rm-system_pt_BR.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/rm-system_pt_BR.properties index 45afb35a46..5810c58c90 100644 --- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/rm-system_pt_BR.properties +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/rm-system_pt_BR.properties @@ -1,4 +1,4 @@ -rm.hold.name=Manter +rm.hold.name=Espera ## Default roles rm.role.extendedReaders=Leitores no local diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/template_pt_BR.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/template_pt_BR.properties index 3319a490ca..64ce5f46ff 100644 --- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/template_pt_BR.properties +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/messages/template_pt_BR.properties @@ -19,9 +19,9 @@ file.report.record.folder=Pasta de documento arquiv\u00edstico file.report.unique.folder.identifier=ID exclusivo da pasta file.report.unique.record.identifier=ID exclusivo do documento arquiv\u00edstico file.report.hold.report=Relat\u00f3rio de espera -file.report.hold.name=Nome da espera -file.report.hold.description=Descri\u00e7\u00e3o da espera -file.report.hold.reason=Motivo para manter +file.report.hold.name=Nome de espera +file.report.hold.description=Descri\u00e7\u00e3o de espera +file.report.hold.reason=Motivo para espera file.report.hold.held=Mantido file.report.createdby=Criado por file.report.createdon=Criado em diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/model/recordsModel.xml b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/model/recordsModel.xml index 0bb8b7b751..ba86812519 100644 --- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/model/recordsModel.xml +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/model/recordsModel.xml @@ -542,6 +542,7 @@ + Frozen Records @@ -549,12 +550,25 @@ true - cm:cmobject + rma:filePlanComponent false true + + Frozen Records + + false + true + + + cm:cmobject + false + true + + + diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/patch/rm-patch-v32-context.xml b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/patch/rm-patch-v32-context.xml new file mode 100644 index 0000000000..bd0e710238 --- /dev/null +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/patch/rm-patch-v32-context.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/version.properties b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/version.properties index cf2c7c2600..67bd9c2e9c 100644 --- a/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/version.properties +++ b/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/version.properties @@ -1,3 +1,3 @@ # RM Schema number -version.rm.schema=2501 +version.rm.schema=3200 diff --git a/rm-community/rm-community-repo/config/alfresco/workflow/rm-workflow-messages_it.properties b/rm-community/rm-community-repo/config/alfresco/workflow/rm-workflow-messages_it.properties index e798cba100..963176a754 100644 --- a/rm-community/rm-community-repo/config/alfresco/workflow/rm-workflow-messages_it.properties +++ b/rm-community/rm-community-repo/config/alfresco/workflow/rm-workflow-messages_it.properties @@ -4,8 +4,8 @@ activitiReviewPooled.workflow.email.subject=Informazioni fornite per il record activitiReviewPooled.workflow.email.body1=L'utente activitiReviewPooled.workflow.email.body2=ha fornito le informazioni richieste per il record. -rmwf_workflowmodel.type.rmwf_workflowTask.title=Attivit\u00e0 del flusso di lavoro -rmwf_workflowmodel.type.rmwf_workflowTask.decription=Attivit\u00e0 del flusso di lavoro +rmwf_workflowmodel.type.rmwf_workflowTask.title=Attivit\u00e0 del workflow +rmwf_workflowmodel.type.rmwf_workflowTask.decription=Attivit\u00e0 del workflow rmwf_workflowmodel.property.rmwf_requestedInformation.title=Informazioni richieste rmwf_workflowmodel.property.rmwf_requestedInformation.decription=Informazioni richieste rmwf_workflowmodel.property.rmwf_message.title=Messaggio diff --git a/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/hold/HoldServiceImpl.java b/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/hold/HoldServiceImpl.java index 03910b7468..9dde7263d9 100644 --- a/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/hold/HoldServiceImpl.java +++ b/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/hold/HoldServiceImpl.java @@ -346,7 +346,7 @@ public class HoldServiceImpl extends ServiceBaseImpl */ private Set getParentHolds(NodeRef nodeRef) { - List holdsAssocs = nodeService.getParentAssocs(nodeRef, ASSOC_FROZEN_RECORDS, ASSOC_FROZEN_RECORDS); + List holdsAssocs = nodeService.getParentAssocs(nodeRef, ASSOC_FROZEN_CONTENT, ASSOC_FROZEN_CONTENT); Set holds = new HashSet<>(holdsAssocs.size()); for (ChildAssociationRef holdAssoc : holdsAssocs) { @@ -392,7 +392,7 @@ public class HoldServiceImpl extends ServiceBaseImpl throw new AlfrescoRuntimeException("Can't get the node's held, because passed node reference isn't a hold. (hold=" + hold.toString() + ")"); } - List childAssocs = nodeService.getChildAssocs(hold, ASSOC_FROZEN_RECORDS, RegexQNamePattern.MATCH_ALL); + List childAssocs = nodeService.getChildAssocs(hold, ASSOC_FROZEN_CONTENT, RegexQNamePattern.MATCH_ALL); if (childAssocs != null && !childAssocs.isEmpty()) { for (ChildAssociationRef childAssociationRef : childAssocs) @@ -593,7 +593,7 @@ public class HoldServiceImpl extends ServiceBaseImpl // Link the record to the hold //set in transaction cache in order not to trigger update policy when adding the association transactionalResourceHelper.getSet("frozen").add(nodeRef); - nodeService.addChild(hold, nodeRef, ASSOC_FROZEN_RECORDS, ASSOC_FROZEN_RECORDS); + nodeService.addChild(hold, nodeRef, ASSOC_FROZEN_CONTENT, ASSOC_FROZEN_CONTENT); // audit item being added to the hold recordsManagementAuditService.auditEvent(nodeRef, AUDIT_ADD_TO_HOLD); diff --git a/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/model/RecordsManagementModel.java b/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/model/RecordsManagementModel.java index c8f4775bf9..9d6a6ab721 100644 --- a/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/model/RecordsManagementModel.java +++ b/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/model/RecordsManagementModel.java @@ -200,7 +200,10 @@ public interface RecordsManagementModel extends RecordsManagementCustomModel // Hold type QName TYPE_HOLD = QName.createQName(RM_URI, "hold"); QName PROP_HOLD_REASON = QName.createQName(RM_URI, "holdReason"); + //since 3.2 + @Deprecated QName ASSOC_FROZEN_RECORDS = QName.createQName(RM_URI, "frozenRecords"); + QName ASSOC_FROZEN_CONTENT = QName.createQName(RM_URI, "frozenContent"); // Record meta data aspect QName ASPECT_RECORD_META_DATA = QName.createQName(RM_URI, "recordMetaData"); diff --git a/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/patch/v32/RMv32HoldChildAssocPatch.java b/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/patch/v32/RMv32HoldChildAssocPatch.java new file mode 100644 index 0000000000..43a4d06e18 --- /dev/null +++ b/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/patch/v32/RMv32HoldChildAssocPatch.java @@ -0,0 +1,123 @@ +/* + * #%L + * Alfresco Records Management Module + * %% + * Copyright (C) 2005 - 2019 Alfresco Software Limited + * %% + * This file is part of the Alfresco software. + * - + * If the software was purchased under a paid Alfresco license, the terms of + * the paid license agreement will prevail. Otherwise, the software is + * provided under the following open source license terms: + * - + * Alfresco is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * - + * Alfresco is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * - + * You should have received a copy of the GNU Lesser General Public License + * along with Alfresco. If not, see . + * #L% + */ +package org.alfresco.module.org_alfresco_module_rm.patch.v32; + +import static org.alfresco.module.org_alfresco_module_rm.model.RecordsManagementModel.ASSOC_FROZEN_CONTENT; +import static org.alfresco.module.org_alfresco_module_rm.model.RecordsManagementModel.ASSOC_FROZEN_RECORDS; + +import org.alfresco.module.org_alfresco_module_rm.fileplan.FilePlanService; +import org.alfresco.module.org_alfresco_module_rm.hold.HoldService; +import org.alfresco.module.org_alfresco_module_rm.patch.AbstractModulePatch; +import org.alfresco.repo.domain.qname.QNameDAO; +import org.alfresco.service.cmr.repository.ChildAssociationRef; +import org.alfresco.service.cmr.repository.NodeRef; +import org.alfresco.service.cmr.repository.NodeService; + +/** + * Patch to replace any use of the hold child association rma:frozenRecords with rma:frozenContent + * + * See: https://issues.alfresco.com/jira/browse/RM-6992 + * + * + * @author Ross Gale + * @since 3.2 + */ +public class RMv32HoldChildAssocPatch extends AbstractModulePatch +{ + /** + * Data abstraction layer for QName and Namespace entities. + */ + private QNameDAO qnameDAO; + + /** + * File plan service interface + */ + private FilePlanService filePlanService; + + /** + * Hold service interface. + */ + private HoldService holdService; + + /** + * Interface for public and internal node and store operations. + */ + private NodeService nodeService; + + /** + * Setter for qnamedao + * @param qnameDAO Data abstraction layer for QName and Namespace entities. + */ + public void setQnameDAO(QNameDAO qnameDAO) + { + this.qnameDAO = qnameDAO; + } + + /** + * Setter for fileplanservice + * @param filePlanService File plan service interface + */ + public void setFilePlanService(FilePlanService filePlanService) + { + this.filePlanService = filePlanService; + } + + /** + * Setter for hold service + * @param holdService Hold service interface. + */ + public void setHoldService(HoldService holdService) + { + this.holdService = holdService; + } + + /** + * Setter for node service + * @param nodeService Interface for public and internal node and store operations. + */ + public void setNodeService(NodeService nodeService) + { + this.nodeService = nodeService; + } + + @Override + public void applyInternal() + { + qnameDAO.updateQName(ASSOC_FROZEN_RECORDS, ASSOC_FROZEN_CONTENT); + for (NodeRef filePlan : filePlanService.getFilePlans()) + { + for (NodeRef hold : holdService.getHolds(filePlan)) + { + for (ChildAssociationRef ref : nodeService.getChildAssocs(hold, ASSOC_FROZEN_CONTENT, ASSOC_FROZEN_RECORDS)) + { + holdService.removeFromHold(hold, ref.getChildRef()); + holdService.addToHold(hold, ref.getChildRef()); + } + } + } + } +} diff --git a/rm-community/rm-community-repo/test/java/org/alfresco/module/org_alfresco_module_rm/test/integration/hold/UpdateHeldActiveContentTest.java b/rm-community/rm-community-repo/test/java/org/alfresco/module/org_alfresco_module_rm/test/integration/hold/UpdateHeldActiveContentTest.java index a50c65a3b8..3feb8f648b 100644 --- a/rm-community/rm-community-repo/test/java/org/alfresco/module/org_alfresco_module_rm/test/integration/hold/UpdateHeldActiveContentTest.java +++ b/rm-community/rm-community-repo/test/java/org/alfresco/module/org_alfresco_module_rm/test/integration/hold/UpdateHeldActiveContentTest.java @@ -34,6 +34,7 @@ import org.alfresco.rest.framework.core.exceptions.PermissionDeniedException; import org.alfresco.service.cmr.model.FileNotFoundException; import org.alfresco.service.cmr.repository.ContentData; import org.alfresco.service.cmr.repository.NodeRef; +import org.springframework.extensions.surf.util.I18NUtil; import org.springframework.extensions.webscripts.GUID; /** @@ -77,7 +78,7 @@ public class UpdateHeldActiveContentTest extends BaseRMTestCase } catch (PermissionDeniedException pde) { - assertTrue(pde.getMessage().contains("Frozen nodes can not be deleted.")); + assertTrue(pde.getMessage().contains(I18NUtil.getMessage("rm.hold.delete-frozen-node"))); } } }); @@ -135,7 +136,7 @@ public class UpdateHeldActiveContentTest extends BaseRMTestCase } catch (PermissionDeniedException pde) { - assertTrue(pde.getMessage().contains("Frozen nodes can not be moved.")); + assertTrue(pde.getMessage().contains(I18NUtil.getMessage("rm.hold.move-frozen-node"))); } } }); @@ -169,7 +170,7 @@ public class UpdateHeldActiveContentTest extends BaseRMTestCase } catch (PermissionDeniedException pde) { - assertTrue(pde.getMessage().contains("Frozen nodes can not be updated.")); + assertTrue(pde.getMessage().contains(I18NUtil.getMessage("rm.hold.update-frozen-node"))); } } }); @@ -204,7 +205,7 @@ public class UpdateHeldActiveContentTest extends BaseRMTestCase } catch (PermissionDeniedException pde) { - assertTrue(pde.getMessage().contains("Frozen nodes can not be updated.")); + assertTrue(pde.getMessage().contains(I18NUtil.getMessage("rm.hold.update-frozen-node"))); } } }); diff --git a/rm-community/rm-community-repo/unit-test/java/org/alfresco/module/org_alfresco_module_rm/hold/HoldServiceImplUnitTest.java b/rm-community/rm-community-repo/unit-test/java/org/alfresco/module/org_alfresco_module_rm/hold/HoldServiceImplUnitTest.java index 21e2d4b0d2..15af11203a 100644 --- a/rm-community/rm-community-repo/unit-test/java/org/alfresco/module/org_alfresco_module_rm/hold/HoldServiceImplUnitTest.java +++ b/rm-community/rm-community-repo/unit-test/java/org/alfresco/module/org_alfresco_module_rm/hold/HoldServiceImplUnitTest.java @@ -134,14 +134,14 @@ public class HoldServiceImplUnitTest extends BaseUnitTest { // setup record folder in multiple holds List holds = new ArrayList<>(4); - holds.add(new ChildAssociationRef(ASSOC_FROZEN_RECORDS, hold, ASSOC_FROZEN_RECORDS, recordFolder, true, 1)); - holds.add(new ChildAssociationRef(ASSOC_FROZEN_RECORDS, hold2, ASSOC_FROZEN_RECORDS, recordFolder, true, 2)); - holds.add(new ChildAssociationRef(ASSOC_FROZEN_RECORDS, hold, ASSOC_FROZEN_RECORDS, activeContent, true, 1)); - holds.add(new ChildAssociationRef(ASSOC_FROZEN_RECORDS, hold2, ASSOC_FROZEN_RECORDS, activeContent, true, 2)); - doReturn(holds).when(mockedNodeService).getParentAssocs(recordFolder, ASSOC_FROZEN_RECORDS, ASSOC_FROZEN_RECORDS); + holds.add(new ChildAssociationRef(ASSOC_FROZEN_CONTENT, hold, ASSOC_FROZEN_CONTENT, recordFolder, true, 1)); + holds.add(new ChildAssociationRef(ASSOC_FROZEN_CONTENT, hold2, ASSOC_FROZEN_CONTENT, recordFolder, true, 2)); + holds.add(new ChildAssociationRef(ASSOC_FROZEN_CONTENT, hold, ASSOC_FROZEN_CONTENT, activeContent, true, 1)); + holds.add(new ChildAssociationRef(ASSOC_FROZEN_CONTENT, hold2, ASSOC_FROZEN_CONTENT, activeContent, true, 2)); + doReturn(holds).when(mockedNodeService).getParentAssocs(recordFolder, ASSOC_FROZEN_CONTENT, ASSOC_FROZEN_CONTENT); //setup active content in multiple holds - doReturn(holds).when(mockedNodeService).getParentAssocs(activeContent, ASSOC_FROZEN_RECORDS, ASSOC_FROZEN_RECORDS); + doReturn(holds).when(mockedNodeService).getParentAssocs(activeContent, ASSOC_FROZEN_CONTENT, ASSOC_FROZEN_CONTENT); doReturn(Collections.singleton(filePlan)).when(mockedFilePlanService).getFilePlans(); @@ -202,9 +202,9 @@ public class HoldServiceImplUnitTest extends BaseUnitTest { // setup record folder in hold List holds = new ArrayList<>(2); - holds.add(new ChildAssociationRef(ASSOC_FROZEN_RECORDS, hold, ASSOC_FROZEN_RECORDS, recordFolder, true, 1)); - holds.add(new ChildAssociationRef(ASSOC_FROZEN_RECORDS, hold, ASSOC_FROZEN_RECORDS, activeContent, true, 1)); - doReturn(holds).when(mockedNodeService).getChildAssocs(hold, ASSOC_FROZEN_RECORDS, RegexQNamePattern.MATCH_ALL); + holds.add(new ChildAssociationRef(ASSOC_FROZEN_CONTENT, hold, ASSOC_FROZEN_CONTENT, recordFolder, true, 1)); + holds.add(new ChildAssociationRef(ASSOC_FROZEN_CONTENT, hold, ASSOC_FROZEN_CONTENT, activeContent, true, 1)); + doReturn(holds).when(mockedNodeService).getChildAssocs(hold, ASSOC_FROZEN_CONTENT, RegexQNamePattern.MATCH_ALL); List list = holdService.getHeld(hold); assertEquals(2, list.size()); @@ -332,19 +332,19 @@ public class HoldServiceImplUnitTest extends BaseUnitTest { holdService.addToHold(hold, recordFolder); - verify(mockedNodeService).addChild(hold, recordFolder, ASSOC_FROZEN_RECORDS, ASSOC_FROZEN_RECORDS); + verify(mockedNodeService).addChild(hold, recordFolder, ASSOC_FROZEN_CONTENT, ASSOC_FROZEN_CONTENT); verify(mockedNodeService).addAspect(eq(recordFolder), eq(ASPECT_FROZEN), any(Map.class)); verify(mockedNodeService).addAspect(eq(record), eq(ASPECT_FROZEN), any(Map.class)); verify(mockedRecordsManagementAuditService).auditEvent(eq(recordFolder), anyString()); holdService.addToHold(hold, record); - verify(mockedNodeService).addChild(hold, record, ASSOC_FROZEN_RECORDS, ASSOC_FROZEN_RECORDS); + verify(mockedNodeService).addChild(hold, record, ASSOC_FROZEN_CONTENT, ASSOC_FROZEN_CONTENT); verify(mockedNodeService).addAspect(eq(recordFolder), eq(ASPECT_FROZEN), any(Map.class)); verify(mockedNodeService, times(2)).addAspect(eq(record), eq(ASPECT_FROZEN), any(Map.class)); verify(mockedRecordsManagementAuditService).auditEvent(eq(record), anyString()); holdService.addToHold(hold, activeContent); - verify(mockedNodeService).addChild(hold, activeContent, ASSOC_FROZEN_RECORDS, ASSOC_FROZEN_RECORDS); + verify(mockedNodeService).addChild(hold, activeContent, ASSOC_FROZEN_CONTENT, ASSOC_FROZEN_CONTENT); verify(mockedNodeService).addAspect(eq(activeContent), eq(ASPECT_FROZEN), any(Map.class)); verify(mockedRecordsManagementAuditService).auditEvent(eq(activeContent), anyString()); } @@ -357,14 +357,14 @@ public class HoldServiceImplUnitTest extends BaseUnitTest holdService.addToHold(hold, recordFolder); - verify(mockedNodeService, never()).addChild(hold, recordFolder, ASSOC_FROZEN_RECORDS, ASSOC_FROZEN_RECORDS); + verify(mockedNodeService, never()).addChild(hold, recordFolder, ASSOC_FROZEN_CONTENT, ASSOC_FROZEN_CONTENT); verify(mockedNodeService, never()).addAspect(eq(recordFolder), eq(ASPECT_FROZEN), any(Map.class)); verify(mockedNodeService, never()).addAspect(eq(record), eq(ASPECT_FROZEN), any(Map.class)); verify(mockedRecordsManagementAuditService, never()).auditEvent(eq(recordFolder), anyString()); holdService.addToHold(hold, activeContent); - verify(mockedNodeService, never()).addChild(hold, activeContent, ASSOC_FROZEN_RECORDS, ASSOC_FROZEN_RECORDS); + verify(mockedNodeService, never()).addChild(hold, activeContent, ASSOC_FROZEN_CONTENT, ASSOC_FROZEN_CONTENT); verify(mockedNodeService, never()).addAspect(eq(activeContent), eq(ASPECT_FROZEN), any(Map.class)); verify(mockedRecordsManagementAuditService, never()).auditEvent(eq(activeContent), anyString()); } @@ -379,13 +379,13 @@ public class HoldServiceImplUnitTest extends BaseUnitTest holdService.addToHold(hold, recordFolder); - verify(mockedNodeService).addChild(hold, recordFolder, ASSOC_FROZEN_RECORDS, ASSOC_FROZEN_RECORDS); + verify(mockedNodeService).addChild(hold, recordFolder, ASSOC_FROZEN_CONTENT, ASSOC_FROZEN_CONTENT); verify(mockedNodeService, never()).addAspect(eq(recordFolder), eq(ASPECT_FROZEN), any(Map.class)); verify(mockedNodeService, never()).addAspect(eq(record), eq(ASPECT_FROZEN), any(Map.class)); verify(mockedRecordsManagementAuditService).auditEvent(eq(recordFolder), anyString()); holdService.addToHold(hold, activeContent); - verify(mockedNodeService).addChild(hold, activeContent, ASSOC_FROZEN_RECORDS, ASSOC_FROZEN_RECORDS); + verify(mockedNodeService).addChild(hold, activeContent, ASSOC_FROZEN_CONTENT, ASSOC_FROZEN_CONTENT); verify(mockedNodeService, never()).addAspect(eq(activeContent), eq(ASPECT_FROZEN), any(Map.class)); verify(mockedRecordsManagementAuditService).auditEvent(eq(activeContent), anyString()); } @@ -447,8 +447,8 @@ public class HoldServiceImplUnitTest extends BaseUnitTest holdService.addToHolds(holds, recordFolder); // verify the interactions - verify(mockedNodeService, times(1)).addChild(hold, recordFolder, ASSOC_FROZEN_RECORDS, ASSOC_FROZEN_RECORDS); - verify(mockedNodeService, times(1)).addChild(hold2, recordFolder, ASSOC_FROZEN_RECORDS, ASSOC_FROZEN_RECORDS); + verify(mockedNodeService, times(1)).addChild(hold, recordFolder, ASSOC_FROZEN_CONTENT, ASSOC_FROZEN_CONTENT); + verify(mockedNodeService, times(1)).addChild(hold2, recordFolder, ASSOC_FROZEN_CONTENT, ASSOC_FROZEN_CONTENT); verify(mockedNodeService, times(1)).addAspect(eq(recordFolder), eq(ASPECT_FROZEN), any(Map.class)); verify(mockedNodeService, times(1)).addAspect(eq(record), eq(ASPECT_FROZEN), any(Map.class)); verify(mockedRecordsManagementAuditService, times(2)).auditEvent(eq(recordFolder), anyString()); diff --git a/rm-community/rm-community-repo/unit-test/java/org/alfresco/module/org_alfresco_module_rm/patch/v32/RMv32HoldChildAssocPatchUnitTest.java b/rm-community/rm-community-repo/unit-test/java/org/alfresco/module/org_alfresco_module_rm/patch/v32/RMv32HoldChildAssocPatchUnitTest.java new file mode 100644 index 0000000000..3ab5387561 --- /dev/null +++ b/rm-community/rm-community-repo/unit-test/java/org/alfresco/module/org_alfresco_module_rm/patch/v32/RMv32HoldChildAssocPatchUnitTest.java @@ -0,0 +1,116 @@ +/* + * #%L + * Alfresco Records Management Module + * %% + * Copyright (C) 2005 - 2019 Alfresco Software Limited + * %% + * This file is part of the Alfresco software. + * - + * If the software was purchased under a paid Alfresco license, the terms of + * the paid license agreement will prevail. Otherwise, the software is + * provided under the following open source license terms: + * - + * Alfresco is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * - + * Alfresco is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * - + * You should have received a copy of the GNU Lesser General Public License + * along with Alfresco. If not, see . + * #L% + */ + +package org.alfresco.module.org_alfresco_module_rm.patch.v32; + +import static org.alfresco.module.org_alfresco_module_rm.model.RecordsManagementModel.ASSOC_FROZEN_CONTENT; +import static org.alfresco.module.org_alfresco_module_rm.model.RecordsManagementModel.ASSOC_FROZEN_RECORDS; +import static org.mockito.Mockito.times; +import static org.mockito.Mockito.verify; +import static org.mockito.Mockito.when; + +import java.util.ArrayList; +import java.util.HashSet; +import java.util.List; +import java.util.Set; + +import org.alfresco.module.org_alfresco_module_rm.fileplan.FilePlanService; +import org.alfresco.module.org_alfresco_module_rm.hold.HoldService; +import org.alfresco.repo.domain.qname.QNameDAO; +import org.alfresco.service.cmr.repository.ChildAssociationRef; +import org.alfresco.service.cmr.repository.NodeRef; +import org.alfresco.service.cmr.repository.NodeService; +import org.junit.Before; +import org.junit.Test; +import org.mockito.InjectMocks; +import org.mockito.Mock; +import org.mockito.MockitoAnnotations; + +/** + * RM V3.2 Hold child assoc patch unit test + * + * @author Ross Gale + * @since 3.2 + */ +public class RMv32HoldChildAssocPatchUnitTest +{ + @Mock + private QNameDAO qNameDAO; + + @Mock + private NodeService nodeService; + + @Mock + private FilePlanService filePlanService; + + @Mock + private HoldService holdService; + + @InjectMocks + private RMv32HoldChildAssocPatch patch; + + private NodeRef filePlanRef, holdRef, heldItemRef; + + private Set fileplans; + + private List holds; + + @Mock + private ChildAssociationRef childAssociationRef; + + private List childAssocs; + + @Before + public void setUp() + { + MockitoAnnotations.initMocks(this); + filePlanRef = new NodeRef("workspace://SpacesStore/filePlan"); + holdRef = new NodeRef("workspace://SpacesStore/hold"); + heldItemRef = new NodeRef("workspace://SpacesStore/heldItem"); + fileplans = new HashSet<>(); + fileplans.add(filePlanRef); + holds = new ArrayList<>(); + holds.add(holdRef); + childAssocs = new ArrayList<>(); + childAssocs.add(childAssociationRef); + } + + /** + * Test held items are removed from a hold and re-add to make sure the association is correct + */ + @Test + public void testAHoldIsRemovedAndReplacedDuringUpgrade() + { + when(filePlanService.getFilePlans()).thenReturn(fileplans); + when(holdService.getHolds(filePlanRef)).thenReturn(holds); + when(nodeService.getChildAssocs(holdRef, ASSOC_FROZEN_CONTENT, ASSOC_FROZEN_RECORDS)).thenReturn(childAssocs); + when(childAssociationRef.getChildRef()).thenReturn(heldItemRef); + patch.applyInternal(); + verify(holdService, times(1)).removeFromHold(holdRef, heldItemRef); + verify(holdService, times(1)).addToHold(holdRef, heldItemRef); + } +}