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.googlesitemap.setup; |
35 |
|
|
36 |
|
import info.magnolia.cms.security.Permission; |
37 |
|
import info.magnolia.module.DefaultModuleVersionHandler; |
38 |
|
import info.magnolia.module.InstallContext; |
39 |
|
import info.magnolia.module.delta.AddPermissionTask; |
40 |
|
import info.magnolia.module.delta.BootstrapSingleModuleResource; |
41 |
|
import info.magnolia.module.delta.BootstrapSingleResourceAndOrderBefore; |
42 |
|
import info.magnolia.module.delta.CheckAndModifyPropertyValueTask; |
43 |
|
import info.magnolia.module.delta.DeltaBuilder; |
44 |
|
import info.magnolia.module.delta.NewPropertyTask; |
45 |
|
import info.magnolia.module.delta.NodeExistsDelegateTask; |
46 |
|
import info.magnolia.module.delta.OrderNodeBeforeTask; |
47 |
|
import info.magnolia.module.delta.RemoveNodeTask; |
48 |
|
import info.magnolia.module.delta.SetupModuleRepositoriesTask; |
49 |
|
import info.magnolia.module.delta.Task; |
50 |
|
import info.magnolia.module.googlesitemap.app.field.transformer.SiteMapTransformer; |
51 |
|
import info.magnolia.module.googlesitemap.setup.migration.Removei18nKeysInSiteMapMigrationTask; |
52 |
|
import info.magnolia.module.googlesitemap.setup.migration.SiteMapDefinitionMigrationTask; |
53 |
|
import info.magnolia.module.googlesitemap.setup.migration.SiteMapDialogMigrationTask; |
54 |
|
import info.magnolia.module.inplacetemplating.setup.TemplatesInstallTask; |
55 |
|
import info.magnolia.repository.RepositoryConstants; |
56 |
|
|
57 |
|
import java.util.ArrayList; |
58 |
|
import java.util.List; |
59 |
|
|
60 |
|
|
61 |
|
|
62 |
|
|
63 |
|
|
|
|
| 100% |
Uncovered Elements: 0 (9) |
Complexity: 2 |
Complexity Density: 0.29 |
|
64 |
|
public class GoogleSiteMapVersionHandler extends DefaultModuleVersionHandler { |
65 |
|
|
|
|
| 100% |
Uncovered Elements: 0 (2) |
Complexity: 1 |
Complexity Density: 0.5 |
|
66 |
1
|
public GoogleSiteMapVersionHandler() {... |
67 |
1
|
register(DeltaBuilder.update("1.2.1", "") |
68 |
|
.addTask(new RemoveNodeTask("Obsolete folder: templates", "Templates folder has to be removed", "config", "/modules/google-sitemap/templates")) |
69 |
|
.addTask(new RemoveNodeTask("Obsolete folder: dialog", "Dialogs folder has to be removed", "config", "/modules/google-sitemap/dialogs")) |
70 |
|
.addTask(new RemoveNodeTask("Obsolete SiteMap site sample definition", "", "website", "google-sitemap")) |
71 |
|
.addTask(new BootstrapSingleModuleResource("SiteMap new Config", "Setup Config", "config.modules.google-sitemap.config.xml")) |
72 |
|
.addTask(new BootstrapSingleModuleResource("SiteMap new Template", "Setup Template", "config.modules.google-sitemap.templates.xml"))); |
73 |
|
|
74 |
1
|
register(DeltaBuilder.update("2.0", "") |
75 |
|
.addTask(new SiteMapDefinitionMigrationTask("Migrate M4.5 site map definition into the new App", "", RepositoryConstants.WEBSITE, "/")) |
76 |
|
.addTask(new SiteMapDialogMigrationTask("Migrate M4.5 dialog definition", "Create the new M5 dialog definition. Add actions, tabs and fields definition", "google-sitemap")) |
77 |
|
.addTask(new BootstrapSingleResourceAndOrderBefore("Bootstrap tab", "Bootstrap site map properties tab", |
78 |
|
"/mgnl-bootstrap/google-sitemap/dialogs/config.modules.google-sitemap.dialogs.components.content.siteComponentTab.form.tabs.siteMap.xml", "tabSites")) |
79 |
|
.addTask(new BootstrapSingleModuleResource("SiteMap app", "Add SiteMap app", "app/config.modules.google-sitemap.apps.xml")) |
80 |
|
.addTask(new BootstrapSingleModuleResource("SiteMap app App Launcher", "Add SiteMap app to App Launcher", "app/config.modules.ui-admincentral.config.appLauncherLayout.groups.manage.apps.siteMaps.xml")) |
81 |
|
.addTask(new BootstrapSingleModuleResource("Field Types", "Install new field types", "fieldtypes/config.modules.google-sitemap.fieldTypes.xml")) |
82 |
|
.addTask(new BootstrapSingleModuleResource("Repository Mapping", "Add Google SiteMap worksapce mapping", "config/config.server.URI2RepositoryMapping.mappings.sitemaps.xml")) |
83 |
|
.addTask(new BootstrapSingleModuleResource("Virtual URI Mapping", "Add Google SiteMap virtual URI mapping", "virtualurimappings/config.modules.google-sitemap.virtualURIMapping.xml")) |
84 |
|
.addTask(new SetupModuleRepositoriesTask()) |
85 |
|
.addTask(new AddPermissionTask("Anonymous permissions for the new workspace", "", "anonymous", "googleSitemaps", "/", Permission.READ, true)) |
86 |
|
|
87 |
|
.addTask(new NewPropertyTask("Add default value transformer", "Set a transformer that display the default field value in case the stored value is null", RepositoryConstants.CONFIG, "/modules/google-sitemap/dialogs/generic/controls/googleSiteMapTab/form/tabs/tabGoogleSitemapProps/fields/googleSitemapPriority", "transformerClass", SiteMapTransformer.class.getName())) |
88 |
|
.addTask(new NewPropertyTask("Add default value transformer", "Set a transformer that display the default field value in case the stored value is null", RepositoryConstants.CONFIG, "/modules/google-sitemap/dialogs/generic/controls/googleSiteMapTab/form/tabs/tabGoogleSitemapProps/fields/googleSitemapChangefreq", "transformerClass", SiteMapTransformer.class.getName())) |
89 |
|
.addTask(new NewPropertyTask("Add default value transformer", "Set a transformer that display the default field value in case the stored value is null", RepositoryConstants.CONFIG, "/modules/google-sitemap/dialogs/generic/controls/googleVirtualUriMapTab/form/tabs/tabGoogleSitemapProps/fields/googleSitemapPriority", "transformerClass", SiteMapTransformer.class.getName())) |
90 |
|
.addTask(new NewPropertyTask("Add default value transformer", "Set a transformer that display the default field value in case the stored value is null", RepositoryConstants.CONFIG, "/modules/google-sitemap/dialogs/generic/controls/googleVirtualUriMapTab/form/tabs/tabGoogleSitemapProps/fields/googleSitemapChangefreq", "transformerClass", SiteMapTransformer.class.getName())) |
91 |
|
|
92 |
|
.addTask(new NodeExistsDelegateTask("Remove area definition from the pages templates", "Remove areas definition in /modules/google-sitemap/templates/pages/siteMapsConfiguration/areas", RepositoryConstants.CONFIG, "/modules/google-sitemap/templates/pages/siteMapsConfiguration/areas", |
93 |
|
new RemoveNodeTask("", "", RepositoryConstants.CONFIG, "/modules/google-sitemap/templates/pages/siteMapsConfiguration/areas"))) |
94 |
|
.addTask(new NodeExistsDelegateTask("Remove components definition from templates", "Remove areas definition in /modules/google-sitemap/templates/components", RepositoryConstants.CONFIG, "/modules/google-sitemap/templates/components", |
95 |
|
new RemoveNodeTask("", "", RepositoryConstants.CONFIG, "/modules/google-sitemap/templates/components"))) |
96 |
|
|
97 |
|
.addTask(new Removei18nKeysInSiteMapMigrationTask("google-sitemap", "Remove M4.5 i18n support")) |
98 |
|
.addTask(new NodeExistsDelegateTask("Reorder Sitemaps in MANAGE group", "This reorders the Sitemaps app before Configuration in the Manage group of the applauncher.", RepositoryConstants.CONFIG, "/modules/ui-admincentral/config/appLauncherLayout/groups/manage/apps/configuration", |
99 |
|
new OrderNodeBeforeTask("", "", RepositoryConstants.CONFIG, "/modules/ui-admincentral/config/appLauncherLayout/groups/manage/apps/siteMaps", "configuration"))) |
100 |
|
.addTask(new CheckAndModifyPropertyValueTask("Set Page template not visible", "", RepositoryConstants.CONFIG, "/modules/google-sitemap/templates/pages/siteMapsConfiguration", "visible", "true", "false")) |
101 |
|
); |
102 |
|
} |
103 |
|
|
104 |
|
|
105 |
|
|
106 |
|
|
|
|
| 100% |
Uncovered Elements: 0 (5) |
Complexity: 1 |
Complexity Density: 0.2 |
|
107 |
1
|
@Override... |
108 |
|
protected List<Task> getExtraInstallTasks(InstallContext ctx) { |
109 |
1
|
final List<Task> tasks = new ArrayList<Task>(); |
110 |
1
|
tasks.add(new TemplatesInstallTask("/sitemap/.*\\.ftl", true)); |
111 |
1
|
tasks.add(new AddPermissionTask("Anonymous permissions for the new workspace", "", "anonymous", "googleSitemaps", "/", Permission.READ, true)); |
112 |
1
|
tasks.add(new NodeExistsDelegateTask("Reorder Sitemaps in MANAGE group", "This reorders the Sitemaps app before Configuration in the Manage group of the applauncher.", RepositoryConstants.CONFIG, "/modules/ui-admincentral/config/appLauncherLayout/groups/manage/apps/configuration", |
113 |
|
new OrderNodeBeforeTask("", "", RepositoryConstants.CONFIG, "/modules/ui-admincentral/config/appLauncherLayout/groups/manage/apps/siteMaps", "configuration"))); |
114 |
1
|
return tasks; |
115 |
|
} |
116 |
|
} |