mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-07-24 17:32:48 +00:00
@@ -330,19 +330,24 @@ public class DispositionServiceImpl extends ServiceBaseImpl
|
|||||||
final String dispositionActionName = dsNextAction.getNextActionName();
|
final String dispositionActionName = dsNextAction.getNextActionName();
|
||||||
final Date dispositionActionDate = dsNextAction.getNextActionDateAsOf();
|
final Date dispositionActionDate = dsNextAction.getNextActionDateAsOf();
|
||||||
|
|
||||||
AuthenticationUtil.runAsSystem(new RunAsWork<Void>()
|
// check if current transaction is a READ ONLY one and if true set the property on the node
|
||||||
|
// in a READ WRITE transaction
|
||||||
|
if (AlfrescoTransactionSupport.getTransactionReadState().equals(TxnReadState.TXN_READ_ONLY))
|
||||||
{
|
{
|
||||||
@Override
|
transactionService.getRetryingTransactionHelper().doInTransaction((RetryingTransactionCallback<Void>) () -> {
|
||||||
public Void doWork()
|
getInternalNodeService().setProperty(action, PROP_DISPOSITION_AS_OF, dispositionActionDate);
|
||||||
{
|
|
||||||
nodeService.setProperty(action, PROP_DISPOSITION_AS_OF, dispositionActionDate);
|
|
||||||
if (dsNextAction.getWriteMode().equals(WriteMode.DATE_AND_NAME))
|
|
||||||
{
|
|
||||||
nodeService.setProperty(action, PROP_DISPOSITION_ACTION_NAME, dispositionActionName);
|
|
||||||
}
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}, false, true);
|
||||||
});
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
getInternalNodeService().setProperty(action, PROP_DISPOSITION_AS_OF, dispositionActionDate);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (dsNextAction.getWriteMode().equals(WriteMode.DATE_AND_NAME))
|
||||||
|
{
|
||||||
|
nodeService.setProperty(action, PROP_DISPOSITION_ACTION_NAME, dispositionActionName);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user