Source:
public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { final Set<String> remoteExtensions = new HashSet<>(); final Resource remote = ReadMasterDomainModelUtil.createResourceFromDomainModelOp(operation.require(DOMAIN_MODEL), remoteExtensions); final Transformers.ResourceIgnoredTransformationRegistry ignoredTransformationRegistry = createRegistry(context, remote, remoteExtensions); final ReadDomainModelHandler readModelHandler = new ReadDomainModelHandler(ignoredTransformationRegistry, TRANSFORMERS, true); final HostControllerRegistrationHandler.OperationExecutor operationExecutor = parameters.getOperationExecutor(); final ModelNode localModel = operationExecutor.executeReadOnly(OPERATION, readModelHandler, ModelController.OperationTransactionControl.COMMIT); if (localModel.hasDefined(FAILURE_DESCRIPTION)) { context.getFailureDescription().set(localModel.get(FAILURE_DESCRIPTION)); return; } final Set<String> localExtensions = new HashSet<>(); final Resource transformedResource = ReadMasterDomainModelUtil.createResourceFromDomainModelOp(localModel.get(RESULT), localExtensions); final ReadMasterDomainOperationsHandler readOperationHandler = new ReadMasterDomainOperationsHandler(); final ModelNode localOperations = operationExecutor.executeReadOnly(OPERATION, transformedResource, readOperationHandler, ModelController.OperationTransactionControl.COMMIT); if (localOperations.hasDefined(FAILURE_DESCRIPTION)) { context.getFailureDescription().set(localOperations.get(FAILURE_DESCRIPTION)); return; } for (final String extension : localExtensions) { remoteExtensions.remove(extension); } context.addStep(new OperationStepHandler() { @Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { final ModelNode result = localOperations.get(RESULT); final SyncModelOperationHandler handler = new SyncModelOperationHandler(result.asList(), remote, remoteExtensions, parameters, readOperationHandler.getOrderedChildTypes()); context.addStep(operation, handler, OperationContext.Stage.MODEL, true); } }, OperationContext.Stage.MODEL, true); }

Target:
public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { final Set<String> remoteExtensions = new HashSet<>(); final Resource remote = ReadMasterDomainModelUtil.createResourceFromDomainModelOp(operation.require(DOMAIN_MODEL), remoteExtensions); final Transformers.ResourceIgnoredTransformationRegistry ignoredTransformationRegistry = createRegistry(context, remote, remoteExtensions); final ReadDomainModelHandler readModelHandler = new ReadDomainModelHandler(ignoredTransformationRegistry, TRANSFORMERS, true); final HostControllerRegistrationHandler.OperationExecutor operationExecutor = parameters.getOperationExecutor(); final ModelNode localModel = operationExecutor.executeReadOnly(OPERATION, readModelHandler, ModelController.OperationTransactionControl.COMMIT); if (localModel.hasDefined(FAILURE_DESCRIPTION)) { context.getFailureDescription().set(localModel.get(FAILURE_DESCRIPTION)); return; } final Set<String> localExtensions = new HashSet<>(); final Resource transformedResource = ReadMasterDomainModelUtil.createResourceFromDomainModelOp(localModel.get(RESULT), localExtensions); final OrderedChildTypesAttachment orderedChildTypesAttachment = new OrderedChildTypesAttachment(); final ReadMasterDomainOperationsHandler readOperationHandler = new ReadMasterDomainOperationsHandler(); final ModelNode localOperations = operationExecutor.executeReadOnly(OPERATION, transformedResource, readOperationHandler, ModelController.OperationTransactionControl.COMMIT); if (localOperations.hasDefined(FAILURE_DESCRIPTION)) { context.getFailureDescription().set(localOperations.get(FAILURE_DESCRIPTION)); return; } for (final String extension : localExtensions) { remoteExtensions.remove(extension); } context.addStep(new OperationStepHandler() { @Override public void execute(OperationContext context, ModelNode operation) throws OperationFailedException { final ModelNode result = localOperations.get(RESULT); final SyncModelOperationHandler handler = new SyncModelOperationHandler(result.asList(), remote, remoteExtensions, parameters, readOperationHandler.getOrderedChildTypes()); context.addStep(operation, handler, OperationContext.Stage.MODEL, true); } }, OperationContext.Stage.MODEL, true); }