Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

If the queue is references by its ARN then it is assumed that the queue exists and has sufficient permissions on it to receive messages from the topic.

Unsubscribing

The consumer will automatically unsubscribe from the topic once it is stopped.

Topic/Queue deletion

The consumer will optionally delete the topic or queue when it is stopped. See the above for info on controlling this and other behavior with endpoint properties. See DeleteQueueOnStopTest.java and DeleteTopicOnStopTest.java for examples.

Message Mapping between SNS and Camel

The component will unwrap the message payload from its JSON format and put the message field into the camel message payload and add all of the other fields as headers prefixed with "SNS:". The available properties on the message are as follow:

SNS:MessageId?

http://code.google.com/p/camel-sns/w/edit/MessageId]

A Universally Unique Identifier, unique for each notification published

SNS:Timestamp

The time (in GMT) at which the notification was published.

SNS:TopicArn?

http://code.google.com/p/camel-sns/w/edit/TopicArn]

The topic to which this message was published

SNS:Type

The type of the delivery message, set to “Notification” for notification deliveries.

SNS:UnsubscribeURL

A link to unsubscribe the end-point from this topic, and prevent receiving any further notifications.

SNS:Message

The payload (body) of the message, as received from the publisher

SNS:Subject

The Subject field – if one was included as an optional parameter to the publish API call along with the message.

SNS:Signature

Base64-encoded “SHA1withRSA” signature of the Message, MessageId?, Subject (if present), Type, Timestamp, and Topic values.

SNS:SignatureVersion? SignatureVersion

http://code.google.com/p/camel-sns/w/edit/SignatureVersion]

Version of the Amazon SNS signature used.

...

These properties can be used to filter messages in the route. See FilterBySubjectTest.java for an example of filtering messages by subject.

Producer Use Cases

  • Publish by topic name
  • Publish by topic ARN

AWS Unit Tests

The unit tests that invoke the AWS services require valid credentials in order to work. These credentials are set in a file in the test directory (src/test/resources/awscreds.properties). Either modify this file to contain the correct accessKey and secretKey or pass these values in via the command line or export as system properties.

...