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.observation.setup;
35
36 import info.magnolia.module.delta.ArrayDelegateTask;
37 import info.magnolia.module.delta.CheckAndModifyPropertyValueTask;
38 import info.magnolia.module.delta.PartialBootstrapTask;
39 import info.magnolia.module.delta.PropertyExistsDelegateTask;
40 import info.magnolia.module.delta.RemovePropertyTask;
41 import info.magnolia.module.delta.SetPropertyTask;
42 import info.magnolia.repository.RepositoryConstants;
43
44
45
46
47 public class UpdateSendMailOnPagesNotificationTask extends ArrayDelegateTask {
48
49 private static final String listenerParams = "/modules/observation/config/listenerConfigurations/config/listenerConfigurations/sendMailOnPageChanges/listener/params";
50
51 public UpdateSendMailOnPagesNotificationTask() {
52 super("Update sendMailOnPageChanges configuration", "Updates sendMailOnPageChanges listener configuration in order to use a freemarker template for sending an email.", new RemovePropertyTask("", "", RepositoryConstants.CONFIG, listenerParams, "from"),
53 new RemovePropertyTask("", "", RepositoryConstants.CONFIG, listenerParams, "subject"),
54 new RemovePropertyTask("", "", RepositoryConstants.CONFIG, listenerParams, "text"),
55 new PropertyExistsDelegateTask("", "", RepositoryConstants.CONFIG, listenerParams, "type", new CheckAndModifyPropertyValueTask("", "", RepositoryConstants.CONFIG, listenerParams, "type", "text", "freemarker")),
56 new PropertyExistsDelegateTask("", "", RepositoryConstants.CONFIG, listenerParams, "mailTemplate", new SetPropertyTask("", RepositoryConstants.CONFIG, listenerParams, "mailTemplate", "pageChangeNotification")),
57 new PartialBootstrapTask("", "", "/mgnl-bootstrap/listenerConfigs/config.modules.observation.config.xml", "/config/listenerConfigurations/sendMailOnPageChanges/listener/params/model"));
58 }
59 }