public void loadPoolConfig(boolean isXA, final String name, final AsyncCallback<ResponseWrapper<PoolConfig>> callback) {
String parentAddress = isXA ? "xa-data-source" : "data-source";
AddressBinding address = poolMetaData.getAddress();
ModelNode operation = address.asResource(baseadress.getAdress(), parentAddress, name);
operation.get(OP).set(READ_RESOURCE_OPERATION);
operation.get(INCLUDE_RUNTIME).set(Boolean.TRUE);
dispatcher.execute(new DMRAction(operation), new AsyncCallback<DMRResponse>() {
@Override
public void onFailure(Throwable caught) {
callback.onFailure(caught);
}
@Override
public void onSuccess(DMRResponse result) {
ModelNode response = result.get();
EntityAdapter<PoolConfig> adapter = new EntityAdapter<PoolConfig>(PoolConfig.class, metaData)
.with(new KeyAssignment() {
@Override
public Object valueForKey(String key) {
return name;
}
});
PoolConfig poolConfig = adapter.fromDMR(response.get(RESULT));
callback.onSuccess(new ResponseWrapper<PoolConfig>(poolConfig, response));
}
});
}