1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 package info.magnolia.module.workflow.setup.for3_5;
35
36 import java.util.Collection;
37 import java.util.Iterator;
38
39 import javax.jcr.RepositoryException;
40
41 import info.magnolia.cms.beans.config.ContentRepository;
42 import info.magnolia.cms.core.Content;
43 import info.magnolia.cms.util.QueryUtil;
44 import info.magnolia.module.InstallContext;
45 import info.magnolia.module.delta.AbstractRepositoryTask;
46 import info.magnolia.module.delta.TaskExecutionException;
47 import info.magnolia.module.workflow.WorkflowConstants;
48 import info.magnolia.module.workflow.commands.ActivationFlowCommand;
49
50
51
52
53
54
55 public class SetDefaultWorkflowForActivationFlowCommands extends AbstractRepositoryTask {
56
57 public SetDefaultWorkflowForActivationFlowCommands() {
58 super("Workflow activation", "Sets default values on workflow activation commands");
59 }
60
61 protected void doExecute(InstallContext installContext) throws RepositoryException, TaskExecutionException {
62 Collection nodes = QueryUtil.query(ContentRepository.CONFIG, "select * from nt:base where class='" + ActivationFlowCommand.class.getName() + "'");
63 for (Iterator iter = nodes.iterator(); iter.hasNext();) {
64 Content node = (Content) iter.next();
65 if(!node.hasNodeData("workflowName")){
66 node.createNodeData("workflowName").setValue(WorkflowConstants.DEFAULT_ACTIVATION_WORKFLOW);
67 }
68 if(!node.hasNodeData("dialogName")){
69 node.createNodeData("dialogName").setValue(WorkflowConstants.DEFAULT_ACTIVATION_EDIT_DIALOG);
70 }
71 }
72 }
73 }