question: provide asynchronous access to send concode_field_sep String sasToken concode_elem_sep String hostName concode_elem_sep ExecutorService executor concode_elem_sep AmqpSend amqpMessageSender concode_elem_sep IotHubConnectionString iotHubConnectionString concode_elem_sep String userName concode_elem_sep IotHubServiceClientProtocol iotHubServiceClientProtocol concode_field_sep CompletableFuture<Void> openAsync concode_elem_sep ServiceClient createFromConnectionString concode_elem_sep CompletableFuture<Void> closeAsync concode_elem_sep void close concode_elem_sep void send concode_elem_sep FeedbackReceiver getFeedbackReceiver concode_elem_sep void open
target: CompletableFuture < Void > function ( String arg0 , Message arg1 ) { final CompletableFuture < Void > loc0 = new CompletableFuture < > ( ) ; executor . submit ( ( ) -> { try { send ( arg0 , arg1 ) ; loc0 . complete ( null ) ; } catch ( IOException loc1 ) { loc0 . completeExceptionally ( loc1 ) ; } } ) ; return loc0 ; }