Search in sources :

Example 1 with LinkToAction

use of org.alfresco.module.org_alfresco_module_rm.action.impl.LinkToAction in project records-management by Alfresco.

the class RM4101Test method testRunRuleNotInBackground.

public void testRunRuleNotInBackground() throws Exception {
    final String categoryName = "category1" + UUID.randomUUID().toString();
    final NodeRef category1 = doTestInTransaction(new Test<NodeRef>() {

        @Override
        public NodeRef run() {
            return filePlanService.createRecordCategory(filePlan, categoryName);
        }
    });
    final NodeRef folder1 = doTestInTransaction(new Test<NodeRef>() {

        @Override
        public NodeRef run() {
            return recordFolderService.createRecordFolder(category1, "folder1WithRule" + UUID.randomUUID().toString());
        }
    });
    final String folder2Name = "folder2FolderToLinkTo" + UUID.randomUUID().toString();
    final NodeRef folder2 = doTestInTransaction(new Test<NodeRef>() {

        @Override
        public NodeRef run() {
            return recordFolderService.createRecordFolder(category1, folder2Name);
        }
    });
    doTestInTransaction(new Test<Void>() {

        @Override
        public Void run() {
            Action linkToAction = actionService.createAction(LinkToAction.NAME);
            linkToAction.setParameterValue(LinkToAction.PARAM_PATH, "/" + categoryName + "/" + folder2Name);
            Rule rule = new Rule();
            rule.setRuleType(RuleType.INBOUND);
            rule.setTitle("LinkTo");
            rule.setAction(linkToAction);
            rule.setExecuteAsynchronously(false);
            ruleService.saveRule(folder1, rule);
            return null;
        }
    });
    doTestInTransaction(new Test<Void>() {

        @Override
        public Void run() {
            utils.createRecord(folder1, "record1" + UUID.randomUUID().toString());
            return null;
        }

        @Override
        public void test(Void result) throws Exception {
            assertEquals(1, nodeService.getChildAssocs(folder2).size());
        }
    });
}
Also used : NodeRef(org.alfresco.service.cmr.repository.NodeRef) Action(org.alfresco.service.cmr.action.Action) LinkToAction(org.alfresco.module.org_alfresco_module_rm.action.impl.LinkToAction) Rule(org.alfresco.service.cmr.rule.Rule)

Aggregations

LinkToAction (org.alfresco.module.org_alfresco_module_rm.action.impl.LinkToAction)1 Action (org.alfresco.service.cmr.action.Action)1 NodeRef (org.alfresco.service.cmr.repository.NodeRef)1 Rule (org.alfresco.service.cmr.rule.Rule)1