@@ -142,7 +142,7 @@ public void initialize(final ExtensionContext context) {
142142 }
143143 registration .registerOperationHandler (GenericSubsystemDescribeHandler .DEFINITION , DESCRIBE_HANDLER );
144144 // Register root sub-models
145- registerSubModels (registration , resolvePathHandler , true );
145+ registerSubModels (registration , resolvePathHandler , true , subsystem , context . isRegisterTransformers () );
146146 // Register logging profile sub-models
147147 ApplicationTypeConfig atc = new ApplicationTypeConfig (SUBSYSTEM_NAME , CommonAttributes .LOGGING_PROFILE );
148148 final List <AccessConstraintDefinition > accessConstraints = new ApplicationTypeAccessConstraintDefinition (atc ).wrapAsList ();
@@ -157,12 +157,10 @@ public List<AccessConstraintDefinition> getAccessConstraints() {
157157 }
158158 };
159159
160- registerSubModels (registration .registerSubModel (profile ), resolvePathHandler , false );
160+ registerLoggingProfileSubModels (registration .registerSubModel (profile ), resolvePathHandler );
161161
162162 if (context .isRegisterTransformers ()) {
163163 registerTransformers1_1_0 (subsystem );
164- registerTransformers1_2_0 (subsystem );
165- registerTransformers1_3_0 (subsystem );
166164 }
167165
168166 subsystem .registerXMLElementWriter (LoggingSubsystemWriter .INSTANCE );
@@ -188,51 +186,77 @@ private void registerTransformers1_1_0(SubsystemRegistration subsystem) {
188186 CustomHandlerResourceDefinition .addTransformers (subsystemBuilder , loggingProfileBuilder );
189187 SyslogHandlerResourceDefinition .addTransformers (subsystemBuilder , loggingProfileBuilder );
190188
191- PatternFormatterResourceDefinition .addTransformers (subsystemBuilder , loggingProfileBuilder );
192-
193- // TODO WFLY-1807 add transformation of new stuff in 2.0.0
189+ PatternFormatterResourceDefinition .INSTANCE .registerTransformers (KnownModelVersion .VERSION_1_1_0 , subsystemBuilder , loggingProfileBuilder );
194190
195191 // Register the transformers
196192 TransformationDescription .Tools .register (subsystemBuilder .build (), subsystem , ModelVersion .create (1 , 1 , 0 ));
197193 }
198194
199195
200- private void registerTransformers1_2_0 (SubsystemRegistration subsystem ) {
201- final ResourceTransformationDescriptionBuilder subsystemBuilder = TransformationDescriptionBuilder .Factory .createSubsystemInstance ();
202- SizeRotatingHandlerResourceDefinition .addTransformers_1_2 (subsystemBuilder );
203- TransformationDescription .Tools .register (subsystemBuilder .build (), subsystem , ModelVersion .create (1 , 2 , 0 ));
204- }
205-
206-
207- private void registerTransformers1_3_0 (SubsystemRegistration subsystem ) {
208- TransformationDescription .Tools .register (get1_2_0_1_3_0Description (), subsystem , ModelVersion .create (1 , 3 , 0 ));
209- }
210-
211- private static TransformationDescription get1_2_0_1_3_0Description () {
212- final ResourceTransformationDescriptionBuilder subsystemBuilder = TransformationDescriptionBuilder .Factory .createSubsystemInstance ();
213- // TODO WFLY-1807 add 2.0.0 stuff
214- return subsystemBuilder .build ();
215- }
216-
217-
218196 @ Override
219197 public void initializeParsers (final ExtensionParsingContext context ) {
220198 for (Namespace namespace : Namespace .readable ()) {
221199 context .setSubsystemXmlMapping (SUBSYSTEM_NAME , namespace .getUriString (), LoggingSubsystemParser .INSTANCE );
222200 }
223201 }
224202
225- private void registerSubModels (final ManagementResourceRegistration registration , final ResolvePathHandler resolvePathHandler , final boolean includeLegacyAttributes ) {
226- registration .registerSubModel (new RootLoggerResourceDefinition (includeLegacyAttributes ));
227- registration .registerSubModel (new LoggerResourceDefinition (includeLegacyAttributes ));
228- registration .registerSubModel (new AsyncHandlerResourceDefinition (includeLegacyAttributes ));
229- registration .registerSubModel (new ConsoleHandlerResourceDefinition (includeLegacyAttributes ));
230- registration .registerSubModel (new FileHandlerResourceDefinition (resolvePathHandler , includeLegacyAttributes ));
231- registration .registerSubModel (new PeriodicHandlerResourceDefinition (resolvePathHandler , includeLegacyAttributes ));
232- registration .registerSubModel (new SizeRotatingHandlerResourceDefinition (resolvePathHandler , includeLegacyAttributes ));
233- registration .registerSubModel (new CustomHandlerResourceDefinition (includeLegacyAttributes ));
203+ private void registerLoggingProfileSubModels (final ManagementResourceRegistration registration , final ResolvePathHandler resolvePathHandler ) {
204+ registerSubModels (registration , resolvePathHandler , false , null , false );
205+ }
206+
207+ private void registerSubModels (final ManagementResourceRegistration registration , final ResolvePathHandler resolvePathHandler ,
208+ final boolean includeLegacyAttributes , final SubsystemRegistration subsystem ,
209+ final boolean registerTransformers ) {
210+ final RootLoggerResourceDefinition rootLoggerResourceDefinition = new RootLoggerResourceDefinition (includeLegacyAttributes );
211+ registration .registerSubModel (rootLoggerResourceDefinition );
212+
213+ final LoggerResourceDefinition loggerResourceDefinition = new LoggerResourceDefinition (includeLegacyAttributes );
214+ registration .registerSubModel (loggerResourceDefinition );
215+
216+ final AsyncHandlerResourceDefinition asyncHandlerResourceDefinition = new AsyncHandlerResourceDefinition (includeLegacyAttributes );
217+ registration .registerSubModel (asyncHandlerResourceDefinition );
218+
219+ final ConsoleHandlerResourceDefinition consoleHandlerResourceDefinition = new ConsoleHandlerResourceDefinition (includeLegacyAttributes );
220+ registration .registerSubModel (consoleHandlerResourceDefinition );
221+
222+ final FileHandlerResourceDefinition fileHandlerResourceDefinition = new FileHandlerResourceDefinition (resolvePathHandler , includeLegacyAttributes );
223+ registration .registerSubModel (fileHandlerResourceDefinition );
224+
225+ final PeriodicHandlerResourceDefinition periodicHandlerResourceDefinition = new PeriodicHandlerResourceDefinition (resolvePathHandler , includeLegacyAttributes );
226+ registration .registerSubModel (periodicHandlerResourceDefinition );
227+
228+ final SizeRotatingHandlerResourceDefinition sizeRotatingHandlerResourceDefinition = new SizeRotatingHandlerResourceDefinition (resolvePathHandler , includeLegacyAttributes );
229+ registration .registerSubModel (sizeRotatingHandlerResourceDefinition );
230+
231+ final CustomHandlerResourceDefinition customHandlerResourceDefinition = new CustomHandlerResourceDefinition (includeLegacyAttributes );
232+ registration .registerSubModel (customHandlerResourceDefinition );
233+
234234 registration .registerSubModel (SyslogHandlerResourceDefinition .INSTANCE );
235235 registration .registerSubModel (PatternFormatterResourceDefinition .INSTANCE );
236+
237+ if (registerTransformers ) {
238+ for (KnownModelVersion modelVersion : KnownModelVersion .values ()) {
239+ // TODO (jrp) Skip 1.1.0 for now
240+ if (modelVersion == KnownModelVersion .VERSION_1_1_0 ) continue ;
241+ if (modelVersion .hasTransformers ()) {
242+ final ResourceTransformationDescriptionBuilder subsystemBuilder = TransformationDescriptionBuilder .Factory .createSubsystemInstance ();
243+ final ResourceTransformationDescriptionBuilder loggingProfileBuilder = subsystemBuilder .addChildResource (LOGGING_PROFILE_PATH );
244+
245+ // Register the transformers
246+ loggerResourceDefinition .registerTransformers (modelVersion , subsystemBuilder , loggingProfileBuilder );
247+ asyncHandlerResourceDefinition .registerTransformers (modelVersion , subsystemBuilder , loggingProfileBuilder );
248+ consoleHandlerResourceDefinition .registerTransformers (modelVersion , subsystemBuilder , loggingProfileBuilder );
249+ fileHandlerResourceDefinition .registerTransformers (modelVersion , subsystemBuilder , loggingProfileBuilder );
250+ periodicHandlerResourceDefinition .registerTransformers (modelVersion , subsystemBuilder , loggingProfileBuilder );
251+ sizeRotatingHandlerResourceDefinition .registerTransformers (modelVersion , subsystemBuilder , loggingProfileBuilder );
252+ customHandlerResourceDefinition .registerTransformers (modelVersion , subsystemBuilder , loggingProfileBuilder );
253+ PatternFormatterResourceDefinition .INSTANCE .registerTransformers (modelVersion , subsystemBuilder , loggingProfileBuilder );
254+
255+ // Register the transformer description
256+ TransformationDescription .Tools .register (subsystemBuilder .build (), subsystem , modelVersion .getModelVersion ());
257+ }
258+ }
259+ }
236260 }
237261
238262 private static class LoggingResourceDescriptionResolver extends StandardResourceDescriptionResolver {
0 commit comments