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.for3_5;
35
36 import info.magnolia.cms.beans.config.ContentRepository;
37 import info.magnolia.cms.core.ItemType;
38 import info.magnolia.module.delta.ArrayDelegateTask;
39 import info.magnolia.module.delta.BootstrapConditionally;
40 import info.magnolia.module.delta.BootstrapSingleResource;
41 import info.magnolia.module.delta.CreateNodeTask;
42 import info.magnolia.module.delta.MoveNodeTask;
43 import info.magnolia.module.delta.Task;
44
45 import javax.jcr.ImportUUIDBehavior;
46
47
48
49
50
51
52
53 public class MigrateFilterConfiguration extends BootstrapConditionally {
54
55 private static final String FILTER_BACKUP_PATH = "/server/install/backup/filters";
56
57 public MigrateFilterConfiguration(String newFilterConfigurationBootstrapFile) {
58 super("Filters", "Installs or updates the new filter (and secure/unsecure URIs) configuration.", newFilterConfigurationBootstrapFile,
59 new ArrayDelegateTask("Backup and transform existing filters", new Task[] {
60 new CreateNodeTask("Backup", "Create install node", ContentRepository.CONFIG, "/server", "install", ItemType.CONTENT.getSystemName()),
61 new CreateNodeTask("Backup", "Create backup node", ContentRepository.CONFIG, "/server/install", "backup", ItemType.CONTENT.getSystemName()),
62 new MoveNodeTask("Filters", "Moves existing filter configuration to a backup location", ContentRepository.CONFIG, "/server/filters", FILTER_BACKUP_PATH, true),
63 new BootstrapSingleResource("Bootstrap", "Bootstraps the new filter configuration", newFilterConfigurationBootstrapFile, ImportUUIDBehavior.IMPORT_UUID_CREATE_NEW),
64 new CheckAndUpdateExistingFilters(FILTER_BACKUP_PATH)
65 }));
66 }
67 }