/** * Checks whether the passed in {@code outboundSignal} is a response or an error. * * @param outboundSignal the OutboundSignal to check. * @return {@code true} if the OutboundSignal is a response or an error, {@code false} otherwise */ private boolean isResponseOrError(final OutboundSignal.WithExternalMessage outboundSignal) { return (outboundSignal.getExternalMessage().isResponse() || outboundSignal.getExternalMessage().isError()); }
/** * Checks whether the passed in {@code outboundSignal} is a response or an error. * * @param outboundSignal the OutboundSignal to check. * @return {@code true} if the OutboundSignal is a response or an error, {@code false} otherwise */ private boolean isResponseOrError(final OutboundSignal.WithExternalMessage outboundSignal) { return (outboundSignal.getExternalMessage().isResponse() || outboundSignal.getExternalMessage().isError()); }
/** * Constructs a new MutableExternalMessageBuilder initialized with the passed {@code message}. * * @param message the ExternalMessage to use for initialization. */ UnmodifiableExternalMessageBuilder(final ExternalMessage message) { this.headers = new HashMap<>(message.getHeaders()); this.bytePayload = message.getBytePayload().orElse(null); this.textPayload = message.getTextPayload().orElse(null); this.payloadType = message.getPayloadType(); this.response = message.isResponse(); this.error = message.isError(); this.authorizationContext = message.getAuthorizationContext().orElse(null); this.topicPath = message.getTopicPath().orElse(null); this.enforcementFilter = message.getEnforcementFilter().orElse(null); this.headerMapping = message.getHeaderMapping().orElse(null); }
private void testBuildExternalMessage(final boolean bytePayload) { final AuthorizationContext authorizationContext = Mockito.mock(AuthorizationContext.class); final TopicPath topicPath = Mockito.mock(TopicPath.class); final Map<String, String> headers = new HashMap<>(); headers.put("eclipse", "ditto"); final UnmodifiableExternalMessageBuilder messageBuilder = new UnmodifiableExternalMessageBuilder(headers); messageBuilder.withAdditionalHeaders("ditto", "eclipse"); messageBuilder.withAuthorizationContext(authorizationContext); messageBuilder.withTopicPath(topicPath); if (bytePayload) { messageBuilder.withBytes(BYTES); } else { messageBuilder.withText(PAYLOAD); } final ExternalMessage externalMessage = messageBuilder.build(); Assertions.assertThat(externalMessage.getHeaders()).containsEntry("eclipse", "ditto"); Assertions.assertThat(externalMessage.getHeaders()).containsEntry("ditto", "eclipse"); Assertions.assertThat(externalMessage.getAuthorizationContext()).contains(authorizationContext); Assertions.assertThat(externalMessage.getTopicPath()).contains(topicPath); Assertions.assertThat(externalMessage.isError()).isFalse(); Assertions.assertThat(externalMessage.isResponse()).isFalse(); if (bytePayload) { Assertions.assertThat(externalMessage.getTextPayload()).isEmpty(); Assertions.assertThat(externalMessage.getBytePayload()).contains(ByteBuffer.wrap(BYTES)); } else { Assertions.assertThat(externalMessage.getTextPayload()).contains(PAYLOAD); Assertions.assertThat(externalMessage.getBytePayload()).isEmpty(); } }