/** * {@inheritDoc} * <p> * This method uses the {@linkplain #createMessageId() message ID} to correlate the response received * from a device with the request. */ @Override public Future<BufferResult> sendCommand(final String command, final String contentType, final Buffer data, final Map<String, Object> properties) { Objects.requireNonNull(command); final Future<BufferResult> responseTracker = Future.future(); createAndSendRequest(command, properties, data, contentType, responseTracker, null); return responseTracker.map(response -> { if (response.isOk()) { return response; } else { throw StatusCodeMapper.from(response); } }); }