static void registerTransformers120(TransformersSubRegistration parent) { ResourceTransformationDescriptionBuilder builder = TransformationDescriptionBuilder.Factory.createInstance(SystemPropertyResourceDefinition.PATH) .getAttributeBuilder() .addRejectCheck(RejectAttributeChecker.SIMPLE_EXPRESSIONS, SystemPropertyResourceDefinition.VALUE, SystemPropertyResourceDefinition.BOOT_TIME) .setValueConverter(new AttributeConverter.DefaultAttributeConverter(){ @Override protected void convertAttribute(PathAddress address, String attributeName, ModelNode attributeValue, TransformationContext context) { if (!attributeValue.isDefined()) { attributeValue.set(true); } } }, BOOT_TIME) .end() .addRawOperationTransformationOverride(UNDEFINE_ATTRIBUTE_OPERATION, new OperationTransformer() { @Override public TransformedOperation transformOperation(TransformationContext context, PathAddress address, ModelNode operation) throws OperationFailedException { if (operation.get(NAME).asString().equals(BOOT_TIME)) { ModelNode op = operation.clone(); op.get(OP).set(WRITE_ATTRIBUTE_OPERATION); op.get(VALUE).set(true); return new TransformedOperation(op, OperationResultTransformer.ORIGINAL_RESULT); } return OperationTransformer.DEFAULT.transformOperation(context, address, operation); } }); TransformationDescription.Tools.register(builder.build(), parent); }
ResourceTransformationDescriptionBuilder builder = TransformationDescriptionBuilder.Factory.createInstance(null); builder = TransformationDescriptionBuilder.Factory.createInstance(null); builder.discardChildResource(HostExcludeResourceDefinition.PATH_ELEMENT); for (KernelAPIVersion version : allOthers) {
ResourceTransformationDescriptionBuilder builder = TransformationDescriptionBuilder.Factory.createInstance(null); builder = TransformationDescriptionBuilder.Factory.createInstance(null); builder.discardChildResource(HostExcludeResourceDefinition.PATH_ELEMENT); for (KernelAPIVersion version : allOthers) {
static void registerTransformers120(TransformersSubRegistration parent) { ResourceTransformationDescriptionBuilder builder = TransformationDescriptionBuilder.Factory.createInstance(ServerGroupResourceDefinition.PATH) .getAttributeBuilder() .addRejectCheck(RejectAttributeChecker.SIMPLE_EXPRESSIONS, ServerGroupResourceDefinition.MANAGEMENT_SUBSYSTEM_ENDPOINT, ServerGroupResourceDefinition.SOCKET_BINDING_PORT_OFFSET) .setValueConverter(new AttributeConverter.DefaultAttributeConverter() { @Override protected void convertAttribute(PathAddress address, String attributeName, ModelNode attributeValue, TransformationContext context) { //7.1.x had a strict type for the management-susbsystem-endpoint attribute, convert that here if it comes in as a string if (attributeValue.isDefined() && attributeValue.getType() == ModelType.STRING) { attributeValue.set(attributeValue.asBoolean()); } } }, ServerGroupResourceDefinition.MANAGEMENT_SUBSYSTEM_ENDPOINT) .end(); TransformersSubRegistration serverGroup = TransformationDescription.Tools.register(builder.build(), parent); DeploymentTransformers.registerTransformers120(serverGroup); SystemPropertyTransformers.registerTransformers120(serverGroup); JvmTransformers.registerTransformers120(serverGroup); } }
private static void registerProfileTransformers(TransformerRegistry registry) { //Do NOT use chained transformers for the profile. The placeholder registry takes precedence over the actual //transformer registry, which means we would not get subsystem transformation //Registering for all previous WF versions (as well as the required EAP ones) isn't strictly necessary, //but it is very handy for testing the 'clone' behaviour final KernelAPIVersion[] PRE_PROFILE_CLONE_VERSIONS = new KernelAPIVersion[]{VERSION_3_0, VERSION_2_1, VERSION_2_0, VERSION_1_8, VERSION_1_7}; for (KernelAPIVersion version : PRE_PROFILE_CLONE_VERSIONS) { ResourceTransformationDescriptionBuilder builder = ResourceTransformationDescriptionBuilder.Factory.createInstance(ProfileResourceDefinition.PATH); builder.getAttributeBuilder() .addRejectCheck(RejectAttributeChecker.DEFINED, ProfileResourceDefinition.INCLUDES) .setDiscard(DiscardAttributeChecker.UNDEFINED, ProfileResourceDefinition.INCLUDES) .end(); builder.addOperationTransformationOverride(ModelDescriptionConstants.CLONE) .setCustomOperationTransformer(ProfileCloneOperationTransformer.INSTANCE); TransformersSubRegistration domain = registry.getDomainRegistration(version.modelVersion); TransformationDescription.Tools.register(builder.build(), domain); } }
private void registerTransformers(SubsystemRegistration subsystem) { // Create the transformer builder final ResourceTransformationDescriptionBuilder subsystemBuilder = TransformationDescriptionBuilder.Factory.createSubsystemInstance(); // Add reject before add the logging-profile child resource builder subsystemBuilder.rejectChildResource(LOGGING_PROFILE_PATH); ResourceTransformationDescriptionBuilder loggingProfileBuilder = TransformationDescriptionBuilder.Factory.createInstance(LOGGING_PROFILE_PATH); // Add resource transformers to the subsystem RootLoggerResourceDefinition.addTransformers(subsystemBuilder, loggingProfileBuilder); LoggerResourceDefinition.addTransformers(subsystemBuilder, loggingProfileBuilder); AsyncHandlerResourceDefinition.addTransformers(subsystemBuilder, loggingProfileBuilder); ConsoleHandlerResourceDefinition.addTransformers(subsystemBuilder, loggingProfileBuilder); FileHandlerResourceDefinition.addTransformers(subsystemBuilder, loggingProfileBuilder); PeriodicHandlerResourceDefinition.addTransformers(subsystemBuilder, loggingProfileBuilder); SizeRotatingHandlerResourceDefinition.addTransformers(subsystemBuilder, loggingProfileBuilder); CustomHandlerResourceDefinition.addTransformers(subsystemBuilder, loggingProfileBuilder); SyslogHandlerResourceDefinition.addTransformers(subsystemBuilder, loggingProfileBuilder); // Register the transformers TransformationDescription.Tools.register(subsystemBuilder.build(), subsystem, ModelVersion.create(1, 1, 0)); }
private static void registerProfileTransformers(TransformerRegistry registry) { //Do NOT use chained transformers for the profile. The placeholder registry takes precedence over the actual //transformer registry, which means we would not get subsystem transformation //Registering for all previous WF versions (as well as the required EAP ones) isn't strictly necessary, //but it is very handy for testing the 'clone' behaviour final KernelAPIVersion[] PRE_PROFILE_CLONE_VERSIONS = new KernelAPIVersion[]{VERSION_3_0, VERSION_2_1, VERSION_2_0, VERSION_1_8, VERSION_1_7}; for (KernelAPIVersion version : PRE_PROFILE_CLONE_VERSIONS) { ResourceTransformationDescriptionBuilder builder = ResourceTransformationDescriptionBuilder.Factory.createInstance(ProfileResourceDefinition.PATH); builder.getAttributeBuilder() .addRejectCheck(RejectAttributeChecker.DEFINED, ProfileResourceDefinition.INCLUDES) .setDiscard(DiscardAttributeChecker.UNDEFINED, ProfileResourceDefinition.INCLUDES) .end(); builder.addOperationTransformationOverride(ModelDescriptionConstants.CLONE) .setCustomOperationTransformer(ProfileCloneOperationTransformer.INSTANCE); TransformersSubRegistration domain = registry.getDomainRegistration(version.modelVersion); TransformationDescription.Tools.register(builder.build(), domain); } }
static void registerTransformers120(TransformersSubRegistration parent) { ResourceTransformationDescriptionBuilder builder = TransformationDescriptionBuilder.Factory.createInstance(PathResourceDefinition.PATH_ADDRESS) .getAttributeBuilder() .addRejectCheck(RejectAttributeChecker.SIMPLE_EXPRESSIONS, PathResourceDefinition.PATH) .setValueConverter(AttributeConverter.NAME_FROM_ADDRESS, ModelDescriptionConstants.NAME) .end() .addOperationTransformationOverride(ADD) .addRejectCheck(RejectAttributeChecker.SIMPLE_EXPRESSIONS, PathResourceDefinition.PATH) .end(); TransformationDescription.Tools.register(builder.build(), parent); } }