protected boolean executeOperation ( final TransactionalProtocolClient . TransactionalOperationListener < ServerOperation > listener , TransactionalProtocolClient client , final ServerIdentity identity , final ModelNode operation , final OperationResultTransformer transformer ) { if ( client == null ) { return false ; } final OperationMessageHandler messageHandler = new DelegatingMessageHandler ( context ) ; final OperationAttachments operationAttachments = new DelegatingOperationAttachments ( context ) ; final ServerOperation serverOperation = new ServerOperation ( identity , operation , messageHandler , operationAttachments , transformer ) ; try { DomainControllerLogger . HOST_CONTROLLER_LOGGER . tracef ( "Sending %s to %s" , operation , identity ) ; final Future < OperationResponse > result = client . execute ( listener , serverOperation ) ; recordExecutedRequest ( new ExecutedServerRequest ( identity , result , transformer ) ) ; } catch ( IOException e ) { final TransactionalProtocolClient . PreparedOperation < ServerOperation > result = BlockingQueueOperationListener . FailedOperation . create ( serverOperation , e ) ; listener . operationPrepared ( result ) ; recordExecutedRequest ( new ExecutedServerRequest ( identity , result . getFinalResult ( ) , transformer ) ) ; } return true ; }
Execute the operation .