Search in sources :

Example 1 with ConnectionManager

use of org.jboss.jca.core.api.management.ConnectionManager in project wildfly by wildfly.

the class EnlistmentTraceAttributeWriteHandler method applyUpdateToRuntime.

@Override
protected boolean applyUpdateToRuntime(final OperationContext context, final ModelNode operation, final String parameterName, final ModelNode newValue, final ModelNode currentValue, final HandbackHolder<List<ConnectionManager>> handbackHolder) throws OperationFailedException {
    final String jndiName = context.readResource(PathAddress.EMPTY_ADDRESS).getModel().get(Constants.JNDINAME.getName()).asString();
    final ServiceController<?> managementRepoService = context.getServiceRegistry(false).getService(ConnectorServices.MANAGEMENT_REPOSITORY_SERVICE);
    Boolean boolValue = Constants.ENLISTMENT_TRACE.resolveValue(context, newValue).asBoolean();
    try {
        final ManagementRepository repository = (ManagementRepository) managementRepoService.getValue();
        if (repository.getConnectors() != null) {
            List<ConnectionManager> handback = new LinkedList<>();
            repository.getConnectors().stream().forEach(connector -> connector.getConnectionManagers().stream().filter(cm -> jndiName.equalsIgnoreCase(cm.getUniqueId())).forEach(cm -> {
                cm.setEnlistmentTrace(boolValue);
                handback.add(cm);
            }));
            handbackHolder.setHandback(handback);
        }
    } catch (Exception e) {
        throw new OperationFailedException(ConnectorLogger.ROOT_LOGGER.failedToSetAttribute(e.getLocalizedMessage()));
    }
    return false;
}
Also used : AbstractWriteAttributeHandler(org.jboss.as.controller.AbstractWriteAttributeHandler) ServiceController(org.jboss.msc.service.ServiceController) List(java.util.List) OperationContext(org.jboss.as.controller.OperationContext) ManagementRepository(org.jboss.jca.core.api.management.ManagementRepository) OperationFailedException(org.jboss.as.controller.OperationFailedException) PathAddress(org.jboss.as.controller.PathAddress) ConnectionManager(org.jboss.jca.core.api.management.ConnectionManager) ConnectorLogger(org.jboss.as.connector.logging.ConnectorLogger) ConnectorServices(org.jboss.as.connector.util.ConnectorServices) ModelNode(org.jboss.dmr.ModelNode) LinkedList(java.util.LinkedList) ConnectionManager(org.jboss.jca.core.api.management.ConnectionManager) ManagementRepository(org.jboss.jca.core.api.management.ManagementRepository) OperationFailedException(org.jboss.as.controller.OperationFailedException) LinkedList(java.util.LinkedList) OperationFailedException(org.jboss.as.controller.OperationFailedException)

Aggregations

LinkedList (java.util.LinkedList)1 List (java.util.List)1 ConnectorLogger (org.jboss.as.connector.logging.ConnectorLogger)1 ConnectorServices (org.jboss.as.connector.util.ConnectorServices)1 AbstractWriteAttributeHandler (org.jboss.as.controller.AbstractWriteAttributeHandler)1 OperationContext (org.jboss.as.controller.OperationContext)1 OperationFailedException (org.jboss.as.controller.OperationFailedException)1 PathAddress (org.jboss.as.controller.PathAddress)1 ModelNode (org.jboss.dmr.ModelNode)1 ConnectionManager (org.jboss.jca.core.api.management.ConnectionManager)1 ManagementRepository (org.jboss.jca.core.api.management.ManagementRepository)1 ServiceController (org.jboss.msc.service.ServiceController)1