/** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getTopicArn() != null) sb.append("TopicArn: ").append(getTopicArn()).append(","); if (getTargetArn() != null) sb.append("TargetArn: ").append(getTargetArn()).append(","); if (getPhoneNumber() != null) sb.append("PhoneNumber: ").append(getPhoneNumber()).append(","); if (getMessage() != null) sb.append("Message: ").append(getMessage()).append(","); if (getSubject() != null) sb.append("Subject: ").append(getSubject()).append(","); if (getMessageStructure() != null) sb.append("MessageStructure: ").append(getMessageStructure()).append(","); if (getMessageAttributes() != null) sb.append("MessageAttributes: ").append(getMessageAttributes()); sb.append("}"); return sb.toString(); }
@Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getTopicArn() == null) ? 0 : getTopicArn().hashCode()); hashCode = prime * hashCode + ((getTargetArn() == null) ? 0 : getTargetArn().hashCode()); hashCode = prime * hashCode + ((getPhoneNumber() == null) ? 0 : getPhoneNumber().hashCode()); hashCode = prime * hashCode + ((getMessage() == null) ? 0 : getMessage().hashCode()); hashCode = prime * hashCode + ((getSubject() == null) ? 0 : getSubject().hashCode()); hashCode = prime * hashCode + ((getMessageStructure() == null) ? 0 : getMessageStructure().hashCode()); hashCode = prime * hashCode + ((getMessageAttributes() == null) ? 0 : getMessageAttributes().hashCode()); return hashCode; }
if (other.getSubject() != null && other.getSubject().equals(this.getSubject()) == false) return false; if (other.getMessageStructure() == null ^ this.getMessageStructure() == null) return false; if (other.getMessageStructure() != null && other.getMessageStructure().equals(this.getMessageStructure()) == false) return false; if (other.getMessageAttributes() == null ^ this.getMessageAttributes() == null)
if (publishRequest.getMessageStructure() != null) { request.addParameter("MessageStructure", StringUtils.fromString(publishRequest.getMessageStructure()));
@Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getTopicArn() == null) ? 0 : getTopicArn().hashCode()); hashCode = prime * hashCode + ((getTargetArn() == null) ? 0 : getTargetArn().hashCode()); hashCode = prime * hashCode + ((getPhoneNumber() == null) ? 0 : getPhoneNumber().hashCode()); hashCode = prime * hashCode + ((getMessage() == null) ? 0 : getMessage().hashCode()); hashCode = prime * hashCode + ((getSubject() == null) ? 0 : getSubject().hashCode()); hashCode = prime * hashCode + ((getMessageStructure() == null) ? 0 : getMessageStructure().hashCode()); hashCode = prime * hashCode + ((getMessageAttributes() == null) ? 0 : getMessageAttributes().hashCode()); return hashCode; }
/** * Returns a string representation of this object; useful for testing and * debugging. * * @return A string representation of this object. * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getTopicArn() != null) sb.append("TopicArn: " + getTopicArn() + ","); if (getTargetArn() != null) sb.append("TargetArn: " + getTargetArn() + ","); if (getPhoneNumber() != null) sb.append("PhoneNumber: " + getPhoneNumber() + ","); if (getMessage() != null) sb.append("Message: " + getMessage() + ","); if (getSubject() != null) sb.append("Subject: " + getSubject() + ","); if (getMessageStructure() != null) sb.append("MessageStructure: " + getMessageStructure() + ","); if (getMessageAttributes() != null) sb.append("MessageAttributes: " + getMessageAttributes()); sb.append("}"); return sb.toString(); }
if (other.getSubject() != null && other.getSubject().equals(this.getSubject()) == false) return false; if (other.getMessageStructure() == null ^ this.getMessageStructure() == null) return false; if (other.getMessageStructure() != null && other.getMessageStructure().equals(this.getMessageStructure()) == false) return false; if (other.getMessageAttributes() == null ^ this.getMessageAttributes() == null)
request.addParameter(prefix, StringUtils.fromString(subject)); if (publishRequest.getMessageStructure() != null) { prefix = "MessageStructure"; String messageStructure = publishRequest.getMessageStructure(); request.addParameter(prefix, StringUtils.fromString(messageStructure));
@Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getTopicArn() == null) ? 0 : getTopicArn().hashCode()); hashCode = prime * hashCode + ((getTargetArn() == null) ? 0 : getTargetArn().hashCode()); hashCode = prime * hashCode + ((getPhoneNumber() == null) ? 0 : getPhoneNumber().hashCode()); hashCode = prime * hashCode + ((getMessage() == null) ? 0 : getMessage().hashCode()); hashCode = prime * hashCode + ((getSubject() == null) ? 0 : getSubject().hashCode()); hashCode = prime * hashCode + ((getMessageStructure() == null) ? 0 : getMessageStructure().hashCode()); hashCode = prime * hashCode + ((getMessageAttributes() == null) ? 0 : getMessageAttributes().hashCode()); return hashCode; }
/** * Returns a string representation of this object; useful for testing and * debugging. * * @return A string representation of this object. * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getTopicArn() != null) sb.append("TopicArn: " + getTopicArn() + ","); if (getTargetArn() != null) sb.append("TargetArn: " + getTargetArn() + ","); if (getPhoneNumber() != null) sb.append("PhoneNumber: " + getPhoneNumber() + ","); if (getMessage() != null) sb.append("Message: " + getMessage() + ","); if (getSubject() != null) sb.append("Subject: " + getSubject() + ","); if (getMessageStructure() != null) sb.append("MessageStructure: " + getMessageStructure() + ","); if (getMessageAttributes() != null) sb.append("MessageAttributes: " + getMessageAttributes()); sb.append("}"); return sb.toString(); }
if (other.getSubject() != null && other.getSubject().equals(this.getSubject()) == false) return false; if (other.getMessageStructure() == null ^ this.getMessageStructure() == null) return false; if (other.getMessageStructure() != null && other.getMessageStructure().equals(this.getMessageStructure()) == false) return false; if (other.getMessageAttributes() == null ^ this.getMessageAttributes() == null)
@Test @SuppressWarnings("unchecked") public void testSnsMessageHandler() { SnsBodyBuilder payload = SnsBodyBuilder.withDefault("foo") .forProtocols("{\"foo\" : \"bar\"}", "sms"); Message<?> message = MessageBuilder.withPayload(payload) .setHeader("topic", "topic") .setHeader("subject", "subject") .setHeader("foo", "bar") .build(); this.sendToSnsChannel.send(message); Message<?> reply = this.resultChannel.receive(10000); assertThat(reply).isNotNull(); ArgumentCaptor<PublishRequest> captor = ArgumentCaptor.forClass(PublishRequest.class); verify(this.amazonSNS).publishAsync(captor.capture(), any(AsyncHandler.class)); PublishRequest publishRequest = captor.getValue(); assertThat(publishRequest.getMessageStructure()).isEqualTo("json"); assertThat(publishRequest.getTopicArn()).isEqualTo("topic"); assertThat(publishRequest.getSubject()).isEqualTo("subject"); assertThat(publishRequest.getMessage()) .isEqualTo("{\"default\":\"foo\",\"sms\":\"{\\\"foo\\\" : \\\"bar\\\"}\"}"); Map<String, MessageAttributeValue> messageAttributes = publishRequest.getMessageAttributes(); assertThat(messageAttributes).doesNotContainKey(MessageHeaders.ID); assertThat(messageAttributes).doesNotContainKey(MessageHeaders.TIMESTAMP); assertThat(messageAttributes).containsKey("foo"); assertThat(messageAttributes.get("foo").getStringValue()).isEqualTo("bar"); assertThat(reply.getHeaders().get(AwsHeaders.MESSAGE_ID)).isEqualTo("111"); assertThat(reply.getHeaders().get(AwsHeaders.TOPIC)).isEqualTo("topic"); assertThat(reply.getPayload()).isSameAs(payload); }
request.addParameter(prefix, StringUtils.fromString(subject)); if (publishRequest.getMessageStructure() != null) { prefix = "MessageStructure"; String messageStructure = publishRequest.getMessageStructure(); request.addParameter(prefix, StringUtils.fromString(messageStructure));