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.setup.for4_4_5;
35
36 import javax.jcr.RepositoryException;
37
38 import info.magnolia.cms.beans.config.ContentRepository;
39 import info.magnolia.cms.core.Content;
40 import info.magnolia.module.InstallContext;
41 import info.magnolia.module.delta.AllChildrenNodesOperation;
42 import info.magnolia.module.delta.NewPropertyTask;
43 import info.magnolia.module.delta.PropertyExistsDelegateTask;
44 import info.magnolia.module.delta.TaskExecutionException;
45
46
47
48
49
50
51
52 public class UpdateUserManagersWithLockTimePeriod extends AllChildrenNodesOperation{
53
54 public UpdateUserManagersWithLockTimePeriod() {
55 super("LockTimePeriod", "Checks for conditions to create lockTimePeriod property. If passes property is set to default value 0.", ContentRepository.CONFIG, "/server/security/userManagers");
56 }
57
58 @Override
59 protected void operateOnChildNode(Content node, InstallContext ctx) throws RepositoryException, TaskExecutionException {
60 if(node.hasNodeData("class")){
61 String className = node.getNodeData("class").getString();
62 if (className.equals("info.magnolia.cms.security.MgnlUserManager") || className.equals("info.magnolia.cms.security.SystemUserManager")){
63 PropertyExistsDelegateTask updateTask = new PropertyExistsDelegateTask("", "", ContentRepository.CONFIG, node.getHandle(), "lockTimePeriod", null, new NewPropertyTask("", "", ContentRepository.CONFIG, node.getHandle(), "lockTimePeriod", "0"));
64 updateTask.execute(ctx);
65 }
66 }
67 }
68 }