/** * Convenience factory method for an Update Delta with a single task. */ public static DeltaBuilder update(Version toVersion, String description, Task task) { return update(toVersion, description).addTask(task); }
public static DeltaBuilder update(String toVersionString, String description) { return update(Version.parseVersion(toVersionString), description); }
public static DeltaBuilder checkPrecondition(String minimalVersion, String newVersion) { return update(minimalVersion, "minimal version required for updating to " + newVersion).addCondition( new FalseCondition("checkPrerequisite", "Updating to " + newVersion + " is only supported from " + minimalVersion + " or higher.")); }
private void add( List<Delta> deltas, String modulename, String discriminator, Version toVersion, Integer running, Task task ) { deltas.add( DeltaBuilder.update( toVersion, msg_updating_task.format( toVersion, discriminator, running ) ) // execute the task itself .addTask( task ) // update the running number .addTask( new KsSetModuleVersionTask( modulename, String.format( FMT_UPDATESET, discriminator ), running.intValue() ) ) ); }
public RestEasyClientModuleVersionHandler() { register(DeltaBuilder.update("1.0.4", "") .addTask(installRenderContextAttribute) ); register(DeltaBuilder.update("1.0.8", "") .addTask(new MigrateClientFiltersToComponentsTask()) ); register(DeltaBuilder.update("1.1.1", "") .addTask(installRestEasyJacksonDelegateProvider) ); }
public TemplatingEssentialsModelsModuleVersionHandler() { register(DeltaBuilder.update("1.1", "") .addTask(new InstallRendererContextAttributeTask("rendering", "freemarker", "navfn", NavigationTemplatingFunctions.class.getName())) ); }
public DamJcrVersionHandler() { register(DeltaBuilder.update("2.0", "") .addTask(new BootstrapSingleResource( "Register jcrAssetProvider", "", "/mgnl-bootstrap/dam-jcr/config.modules.dam.config.providers.jcrProvider.xml"))); }
public SchedulerModuleVersionHandler() { register(DeltaBuilder.update("2.1.1", "") .addTask(new BootstrapSingleModuleResource("config.modules.scheduler.messageViews.xml")) ); register(DeltaBuilder.update("2.1.3", "") .addTask(new RenamePropertiesTask("Rename deprecated properties", RepositoryConstants.CONFIG, "/modules/scheduler/config/jobs", "active", "enabled")) ); }
public Magnolia45MigrationModuleVersionHandler() { super(); register(DeltaBuilder.update("1.1.1", "") .addTask(new InstallGroovyFile("Install Migration Groovy Files", "Migration scripts will be put in the groovy scripts workspace", "/scripts/.*.groovy"))); register(DeltaBuilder.update("1.2.1", "") .addTask(new InstallGroovyFile("Install Export groovy files.", "Groovy files that let a developer exports its configuration to the filesystem.", "/scripts/migration/from4_4To4_5/export/.*.groovy"))); }
private DeltaBuilder db( Version current, Version toVersion ) { if( current == Version.UNDEFINED_FROM ) { return DeltaBuilder.install( toVersion, msg_installing.format( toVersion ) ); } else { return DeltaBuilder.update( toVersion, msg_updating.format( toVersion ) ); } }
public DamTemplatingVersionHandler() { register(DeltaBuilder.update("2.0", "") .addTask(new NodeExistsDelegateTask("Remove AssetMapModel declaration from freemarker modelFactory. With DAM 2.0 this is replaced by a normal Map", "/server/rendering/freemarker/modelFactories/damModelFactory", new RemoveNodeTask("", "/server/rendering/freemarker/modelFactories/damModelFactory")))); register(DeltaBuilder.update("2.1", "") .addTask(new InstallRendererContextAttributeTask("rendering", "freemarker", "damfn", DamTemplatingFunctions.class.getName()))); }
/** * The minimal delta to be applied for each update, even if no delta was specifically registered * for the version being installed. */ protected Delta getDefaultUpdate(InstallContext installContext) { final Version toVersion = installContext.getCurrentModuleDefinition().getVersion(); final List<Task> defaultUpdateTasks = getDefaultUpdateTasks(toVersion); final List<Condition> defaultUpdateConditions = getDefaultUpdateConditions(toVersion); return DeltaBuilder.update(toVersion, "").addTasks(defaultUpdateTasks).addConditions(defaultUpdateConditions); }
public RestServicesModuleVersionHandler() { register(DeltaBuilder.update("1.1", "") .addTask(new CheckAndModifyPropertyValueTask("/modules/rest-services/rest-endpoints/commands", "implementationClass", "info.magnolia.rest.service.command.v1.CommandEndpoint", "info.magnolia.rest.service.command.v2.CommandEndpoint")) ); register(DeltaBuilder.update("2.0", "") .addTask(new NodeExistsDelegateTask("Update activate command rest role to rest-editor", "/modules/rest-services/rest-endpoints/commands/enabledCommands/activate/access/roles", new CheckAndModifyPropertyValueTask("/modules/rest-services/rest-endpoints/commands/enabledCommands/activate/access/roles", "rest", "rest", "rest-editor"))) .addTask(new NodeExistsDelegateTask("Update markAsDeleted command rest role to rest-editor", "/modules/rest-services/rest-endpoints/commands/enabledCommands/markAsDeleted/access/roles", new CheckAndModifyPropertyValueTask("/modules/rest-services/rest-endpoints/commands/enabledCommands/markAsDeleted/access/roles", "rest", "rest", "rest-editor"))) ); }
public CacheModuleVersionHandler() { register(DeltaBuilder.checkPrecondition("4.4.6", "4.5")); register(DeltaBuilder.update("4.5", "") .addTask(placeGzipFitler) .addTask(placeCacheFilter) .addTask(new BootstrapSingleResource( "Register Virtual Uri Mapping", "Add Virtual Uri for static resources", "/mgnl-bootstrap/cache/config.modules.cache.virtualURIMapping.xml")) ); }
@Test public void testDescriptionForUpdatesOnly() { final ModuleManager.ModuleManagementState state = new ModuleManager.ModuleManagementState(); state.addModule(new ModuleDefinition("a", v10, null, null), v01, Arrays.<Delta>asList( DeltaBuilder.update(v10, "").addTask(new WarnTask("", "")), DeltaBuilder.update(v05, "").addTask(new WarnTask("", "")) )); state.addModule(new ModuleDefinition("b", v10, null, null), v01, Arrays.<Delta>asList( DeltaBuilder.update(v10, "").addTask(new WarnTask("", "")), DeltaBuilder.update(v05, "").addTask(new WarnTask("", "")) )); assertEquals(1, state.getDeltaTypes().size()); assertTrue(state.getDeltaTypes().contains(DeltaType.update)); assertEquals("updates only", state.getDeltaTypesDescription(TEXTS)); }
@Test public void testCantRegisterMultipleDeltasForSameVersion() { final Delta d1 = DeltaBuilder.update(Version.parseVersion("1.0.0"), "", new NullTask("", "")); final Delta d2 = DeltaBuilder.update(Version.parseVersion("1.0.0"), "", new NullTask("", "")); final AbstractModuleVersionHandler versionHandler = newTestModuleVersionHandler(); versionHandler.register(d1); try { versionHandler.register(d2); fail("should have failed"); } catch (IllegalStateException e) { assertEquals("Version 1.0.0 was already registered in this ModuleVersionHandler.", e.getMessage()); } }
public SamplesVersionHandler() { register(DeltaBuilder.update("5.4.1", "") .addTask(new ArrayDelegateTask("Remove samples configuration from JCR", new NodeExistsDelegateTask("", "/modules/samples/dialogs", new RemoveNodeTask("", "/modules/samples/dialogs")), new NodeExistsDelegateTask("", "/modules/samples/templates", new RemoveNodeTask("", "/modules/samples/templates")), new NodeExistsDelegateTask("", "/modules/samples/virtualURIMapping", new RemoveNodeTask("", "/modules/samples/virtualURIMapping")))) .addTasks(getCommonTasks())); register(DeltaBuilder.update("6.0", "") .addTask(new RemoveNodeTask("Remove JSP sample site", "Magnolia Templating JSP is deprecated as of 6.0.", WEBSITE, "/jsp-sample-site"))); }
@Test public void testCheckModuleAndDeltasToStringForUpdate() { final ModuleDefinition mod = new ModuleDefinition("foo", Version.parseVersion("2.3.4"), null, null); final Delta d1 = DeltaBuilder.update("1.1", "New version").addTask(new WarnTask("t1", "test 1")).addTask(new WarnTask("t2", "test 2")); final Delta d2 = DeltaBuilder.update("2.0", "New version 2").addTask(new WarnTask("t3", "test 3")).addTask(new WarnTask("t3", "test 4")); ModuleManager.ModuleAndDeltas mad = new ModuleManager.ModuleAndDeltas(mod, Version.parseVersion("1.0"), Arrays.asList(d1, d2)); assertEquals("ModuleAndDeltas for foo: current version is 1.0.0, updating to 2.3.4 with 2 deltas.", mad.toString()); }
public RestIntegrationModuleVersionHandler() { register(DeltaBuilder.update("2.0", "") .addTask(new UpdateRestEditorRoleTask("Update old rest role to new rest-editor role", "")) .addTask(new BootstrapSingleModuleResource("Bootstrap file userroles.rest-admin.xml", "", "userroles.rest-admin.xml")) .addTask(new BootstrapSingleModuleResource("Bootstrap file userroles.rest-anonymous.xml", "", "userroles.rest-anonymous.xml")) .addTask(new RemoveRoleFromUserTask("Remove rest-editor role from superuser", "superuser", "rest-editor")) .addTask(new AddRoleToUserTask("Add role 'rest-admin' to user 'superuser'", "superuser", "rest-admin")) .addTask(new AddRoleToUserTask("Add role 'rest-anonymous' to user 'anonymous'", "anonymous", "rest-anonymous")) ); }
@Test public void testCheckModuleAndDeltasToStringForInstall() { final ModuleDefinition mod = new ModuleDefinition("foo", Version.parseVersion("2.3.4"), null, null); final Delta d1 = DeltaBuilder.update("1.1", "New version").addTask(new WarnTask("t1", "test 1")).addTask(new WarnTask("t2", "test 2")); ModuleManager.ModuleAndDeltas mad = new ModuleManager.ModuleAndDeltas(mod, null, Arrays.asList(d1)); assertEquals("ModuleAndDeltas for foo: installing version 2.3.4 with 1 deltas.", mad.toString()); }