private void readServiceProvider() { if (federation != null && serviceProvider != null) { Operation spOp = new Operation.Builder( READ_RESOURCE_OPERATION, SERVICE_PROVIDER_TEMPLATE.resolve(statementContext, federation, serviceProvider)) .param(RECURSIVE, true) .build(); Operation sdOp = new Operation.Builder( READ_CHILDREN_NAMES_OPERATION, AddressTemplate.of("{selected.profile}/subsystem=security") .resolve(statementContext)) .param(CHILD_TYPE, "security-domain") .build(); dispatcher.execute( new DMRAction(new Composite(spOp, sdOp)), new SimpleCallback<DMRResponse>() { @Override public void onSuccess(final DMRResponse dmrResponse) { ModelNode response = dmrResponse.get(); if (response.isFailure()) { Log.error( "Failed to read service provider " + serviceProvider + " from federation " + federation, response.getFailureDescription()); } else { ModelNode serviceProvider = response.get(RESULT).get("step-1").get(RESULT); List<ModelNode> sdNodes = response.get(RESULT).get("step-2").get(RESULT).asList(); getView() .update( serviceProvider, Ordering.natural() .immutableSortedCopy( FluentIterable.from(sdNodes).transform(ModelNode::asString))); } } }); } }
public void modifyServiceProvider(final Map<String, Object> changedValues) { AddressTemplate template = SERVICE_PROVIDER_TEMPLATE.replaceWildcards(federation, serviceProvider); modify(template, serviceProvider, changedValues); }