@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; }
|| !spec.getRetryConfiguration().getRetryPredicate().test(ex)) { SNS_WRITE_FAILURES.inc(); LOG.info("Unable to publish message {} due to {} ", request.getMessage(), ex); throw new IOException("Error writing to SNS (no attempt made to retry)", ex);
/** * 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(); }
if (other.getPhoneNumber() != null && other.getPhoneNumber().equals(this.getPhoneNumber()) == false) return false; if (other.getMessage() == null ^ this.getMessage() == null) return false; if (other.getMessage() != null && other.getMessage().equals(this.getMessage()) == false) return false; if (other.getSubject() == null ^ this.getSubject() == null)
if (publishRequest.getMessage() != null) { request.addParameter("Message", StringUtils.fromString(publishRequest.getMessage()));
@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(); }
&& other.getPhoneNumber().equals(this.getPhoneNumber()) == false) return false; if (other.getMessage() == null ^ this.getMessage() == null) return false; if (other.getMessage() != null && other.getMessage().equals(this.getMessage()) == false) return false; if (other.getSubject() == null ^ this.getSubject() == null)
request.addParameter(prefix, StringUtils.fromString(phoneNumber)); if (publishRequest.getMessage() != null) { prefix = "Message"; String message = publishRequest.getMessage(); request.addParameter(prefix, StringUtils.fromString(message));
@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(); }
&& other.getPhoneNumber().equals(this.getPhoneNumber()) == false) return false; if (other.getMessage() == null ^ this.getMessage() == null) return false; if (other.getMessage() != null && other.getMessage().equals(this.getMessage()) == false) return false; if (other.getSubject() == null ^ this.getSubject() == null)
request.addParameter(prefix, StringUtils.fromString(phoneNumber)); if (publishRequest.getMessage() != null) { prefix = "Message"; String message = publishRequest.getMessage(); request.addParameter(prefix, StringUtils.fromString(message));
@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); }