public class CreateTopicRequest
extends com.amazonaws.AmazonWebServiceRequest
implements java.io.Serializable
Creates a topic to which notifications can be published. Users can create at most 100,000 standard topics (at most 1,000 FIFO topics). For more information, see Creating an Amazon SNS topic in the Amazon SNS Developer Guide. This action is idempotent, so if the requester already owns a topic with the specified name, that topic's ARN is returned without creating a new topic.
| Constructor and Description |
|---|
CreateTopicRequest()
Default constructor for CreateTopicRequest object.
|
CreateTopicRequest(java.lang.String name)
Constructs a new CreateTopicRequest object.
|
| Modifier and Type | Method and Description |
|---|---|
CreateTopicRequest |
addAttributesEntry(java.lang.String key,
java.lang.String value)
A map of attributes with their corresponding values.
|
CreateTopicRequest |
clearAttributesEntries()
Removes all the entries added into Attributes.
|
boolean |
equals(java.lang.Object obj) |
java.util.Map<java.lang.String,java.lang.String> |
getAttributes()
A map of attributes with their corresponding values.
|
java.lang.String |
getDataProtectionPolicy()
The body of the policy document you want to use for this topic.
|
java.lang.String |
getName()
The name of the topic you want to create.
|
java.util.List<Tag> |
getTags()
The list of tags to add to a new topic.
|
int |
hashCode() |
void |
setAttributes(java.util.Map<java.lang.String,java.lang.String> attributes)
A map of attributes with their corresponding values.
|
void |
setDataProtectionPolicy(java.lang.String dataProtectionPolicy)
The body of the policy document you want to use for this topic.
|
void |
setName(java.lang.String name)
The name of the topic you want to create.
|
void |
setTags(java.util.Collection<Tag> tags)
The list of tags to add to a new topic.
|
java.lang.String |
toString()
Returns a string representation of this object; useful for testing and
debugging.
|
CreateTopicRequest |
withAttributes(java.util.Map<java.lang.String,java.lang.String> attributes)
A map of attributes with their corresponding values.
|
CreateTopicRequest |
withDataProtectionPolicy(java.lang.String dataProtectionPolicy)
The body of the policy document you want to use for this topic.
|
CreateTopicRequest |
withName(java.lang.String name)
The name of the topic you want to create.
|
CreateTopicRequest |
withTags(java.util.Collection<Tag> tags)
The list of tags to add to a new topic.
|
CreateTopicRequest |
withTags(Tag... tags)
The list of tags to add to a new topic.
|
clone, copyBaseTo, getCloneRoot, getCloneSource, getGeneralProgressListener, getRequestClientOptions, getRequestCredentials, getRequestMetricCollector, setGeneralProgressListener, setRequestCredentials, setRequestMetricCollector, withGeneralProgressListener, withRequestMetricCollectorpublic CreateTopicRequest()
public CreateTopicRequest(java.lang.String name)
name - The name of the topic you want to create.
Constraints: Topic names must be made up of only uppercase and lowercase ASCII letters, numbers, underscores, and hyphens, and must be between 1 and 256 characters long.
For a FIFO (first-in-first-out) topic, the name must end with
the .fifo suffix.
public java.lang.String getName()
The name of the topic you want to create.
Constraints: Topic names must be made up of only uppercase and lowercase ASCII letters, numbers, underscores, and hyphens, and must be between 1 and 256 characters long.
For a FIFO (first-in-first-out) topic, the name must end with the
.fifo suffix.
The name of the topic you want to create.
Constraints: Topic names must be made up of only uppercase and lowercase ASCII letters, numbers, underscores, and hyphens, and must be between 1 and 256 characters long.
For a FIFO (first-in-first-out) topic, the name must end with the
.fifo suffix.
public void setName(java.lang.String name)
The name of the topic you want to create.
Constraints: Topic names must be made up of only uppercase and lowercase ASCII letters, numbers, underscores, and hyphens, and must be between 1 and 256 characters long.
For a FIFO (first-in-first-out) topic, the name must end with the
.fifo suffix.
name - The name of the topic you want to create.
Constraints: Topic names must be made up of only uppercase and lowercase ASCII letters, numbers, underscores, and hyphens, and must be between 1 and 256 characters long.
For a FIFO (first-in-first-out) topic, the name must end with
the .fifo suffix.
public CreateTopicRequest withName(java.lang.String name)
The name of the topic you want to create.
Constraints: Topic names must be made up of only uppercase and lowercase ASCII letters, numbers, underscores, and hyphens, and must be between 1 and 256 characters long.
For a FIFO (first-in-first-out) topic, the name must end with the
.fifo suffix.
Returns a reference to this object so that method calls can be chained together.
name - The name of the topic you want to create.
Constraints: Topic names must be made up of only uppercase and lowercase ASCII letters, numbers, underscores, and hyphens, and must be between 1 and 256 characters long.
For a FIFO (first-in-first-out) topic, the name must end with
the .fifo suffix.
public java.util.Map<java.lang.String,java.lang.String> getAttributes()
A map of attributes with their corresponding values.
The following lists the names, descriptions, and values of the special
request parameters that the CreateTopic action uses:
DeliveryPolicy – The policy that defines how Amazon SNS
retries failed deliveries to HTTP/S endpoints.
DisplayName – The display name to use for a topic with SMS
subscriptions.
FifoTopic – Set to true to create a FIFO topic.
Policy – The policy that defines who can access your topic.
By default, only the topic owner can publish or subscribe to the topic.
SignatureVersion – The signature version corresponds to the
hashing algorithm used while creating the signature of the notifications,
subscription confirmations, or unsubscribe confirmation messages sent by
Amazon SNS. By default, SignatureVersion is set to
1.
TracingConfig – Tracing mode of an Amazon SNS topic. By
default TracingConfig is set to PassThrough,
and the topic passes through the tracing header it receives from an
Amazon SNS publisher to its subscriptions. If set to Active,
Amazon SNS will vend X-Ray segment data to topic owner account if the
sampled flag in the tracing header is true. This is only supported on
standard topics.
The following attribute applies only to server-side encryption:
KmsMasterKeyId – The ID of an Amazon Web Services managed
customer master key (CMK) for Amazon SNS or a custom CMK. For more
information, see Key Terms. For more examples, see KeyId in the Key Management Service API Reference.
The following attributes apply only to FIFO topics:
FifoTopic – When this is set to true, a FIFO
topic is created.
ContentBasedDeduplication – Enables content-based
deduplication for FIFO topics.
By default, ContentBasedDeduplication is set to
false. If you create a FIFO topic and this attribute is
false, you must specify a value for the
MessageDeduplicationId parameter for the Publish action.
When you set ContentBasedDeduplication to true,
Amazon SNS uses a SHA-256 hash to generate the
MessageDeduplicationId using the body of the message (but
not the attributes of the message).
(Optional) To override the generated value, you can specify a value for
the MessageDeduplicationId parameter for the
Publish action.
A map of attributes with their corresponding values.
The following lists the names, descriptions, and values of the
special request parameters that the CreateTopic
action uses:
DeliveryPolicy – The policy that defines how Amazon
SNS retries failed deliveries to HTTP/S endpoints.
DisplayName – The display name to use for a topic
with SMS subscriptions.
FifoTopic – Set to true to create a FIFO topic.
Policy – The policy that defines who can access your
topic. By default, only the topic owner can publish or subscribe
to the topic.
SignatureVersion – The signature version corresponds
to the hashing algorithm used while creating the signature of the
notifications, subscription confirmations, or unsubscribe
confirmation messages sent by Amazon SNS. By default,
SignatureVersion is set to 1.
TracingConfig – Tracing mode of an Amazon SNS topic.
By default TracingConfig is set to
PassThrough, and the topic passes through the
tracing header it receives from an Amazon SNS publisher to its
subscriptions. If set to Active, Amazon SNS will
vend X-Ray segment data to topic owner account if the sampled
flag in the tracing header is true. This is only supported on
standard topics.
The following attribute applies only to server-side encryption:
KmsMasterKeyId – The ID of an Amazon Web Services
managed customer master key (CMK) for Amazon SNS or a custom CMK.
For more information, see Key Terms. For more examples, see KeyId in the Key Management Service API Reference.
The following attributes apply only to FIFO topics:
FifoTopic – When this is set to true, a
FIFO topic is created.
ContentBasedDeduplication – Enables content-based
deduplication for FIFO topics.
By default, ContentBasedDeduplication is set to
false. If you create a FIFO topic and this attribute
is false, you must specify a value for the
MessageDeduplicationId parameter for the Publish action.
When you set ContentBasedDeduplication to
true, Amazon SNS uses a SHA-256 hash to generate the
MessageDeduplicationId using the body of the message
(but not the attributes of the message).
(Optional) To override the generated value, you can specify a
value for the MessageDeduplicationId parameter for
the Publish action.
public void setAttributes(java.util.Map<java.lang.String,java.lang.String> attributes)
A map of attributes with their corresponding values.
The following lists the names, descriptions, and values of the special
request parameters that the CreateTopic action uses:
DeliveryPolicy – The policy that defines how Amazon SNS
retries failed deliveries to HTTP/S endpoints.
DisplayName – The display name to use for a topic with SMS
subscriptions.
FifoTopic – Set to true to create a FIFO topic.
Policy – The policy that defines who can access your topic.
By default, only the topic owner can publish or subscribe to the topic.
SignatureVersion – The signature version corresponds to the
hashing algorithm used while creating the signature of the notifications,
subscription confirmations, or unsubscribe confirmation messages sent by
Amazon SNS. By default, SignatureVersion is set to
1.
TracingConfig – Tracing mode of an Amazon SNS topic. By
default TracingConfig is set to PassThrough,
and the topic passes through the tracing header it receives from an
Amazon SNS publisher to its subscriptions. If set to Active,
Amazon SNS will vend X-Ray segment data to topic owner account if the
sampled flag in the tracing header is true. This is only supported on
standard topics.
The following attribute applies only to server-side encryption:
KmsMasterKeyId – The ID of an Amazon Web Services managed
customer master key (CMK) for Amazon SNS or a custom CMK. For more
information, see Key Terms. For more examples, see KeyId in the Key Management Service API Reference.
The following attributes apply only to FIFO topics:
FifoTopic – When this is set to true, a FIFO
topic is created.
ContentBasedDeduplication – Enables content-based
deduplication for FIFO topics.
By default, ContentBasedDeduplication is set to
false. If you create a FIFO topic and this attribute is
false, you must specify a value for the
MessageDeduplicationId parameter for the Publish action.
When you set ContentBasedDeduplication to true,
Amazon SNS uses a SHA-256 hash to generate the
MessageDeduplicationId using the body of the message (but
not the attributes of the message).
(Optional) To override the generated value, you can specify a value for
the MessageDeduplicationId parameter for the
Publish action.
attributes - A map of attributes with their corresponding values.
The following lists the names, descriptions, and values of the
special request parameters that the CreateTopic
action uses:
DeliveryPolicy – The policy that defines how
Amazon SNS retries failed deliveries to HTTP/S endpoints.
DisplayName – The display name to use for a topic
with SMS subscriptions.
FifoTopic – Set to true to create a FIFO topic.
Policy – The policy that defines who can access
your topic. By default, only the topic owner can publish or
subscribe to the topic.
SignatureVersion – The signature version
corresponds to the hashing algorithm used while creating the
signature of the notifications, subscription confirmations, or
unsubscribe confirmation messages sent by Amazon SNS. By
default, SignatureVersion is set to
1.
TracingConfig – Tracing mode of an Amazon SNS
topic. By default TracingConfig is set to
PassThrough, and the topic passes through the
tracing header it receives from an Amazon SNS publisher to its
subscriptions. If set to Active, Amazon SNS will
vend X-Ray segment data to topic owner account if the sampled
flag in the tracing header is true. This is only supported on
standard topics.
The following attribute applies only to server-side encryption:
KmsMasterKeyId – The ID of an Amazon Web Services
managed customer master key (CMK) for Amazon SNS or a custom
CMK. For more information, see Key Terms. For more examples, see KeyId in the Key Management Service API Reference.
The following attributes apply only to FIFO topics:
FifoTopic – When this is set to true
, a FIFO topic is created.
ContentBasedDeduplication – Enables content-based
deduplication for FIFO topics.
By default, ContentBasedDeduplication is set to
false. If you create a FIFO topic and this
attribute is false, you must specify a value for
the MessageDeduplicationId parameter for the Publish action.
When you set ContentBasedDeduplication to
true, Amazon SNS uses a SHA-256 hash to generate
the MessageDeduplicationId using the body of the
message (but not the attributes of the message).
(Optional) To override the generated value, you can specify a
value for the MessageDeduplicationId parameter
for the Publish action.
public CreateTopicRequest withAttributes(java.util.Map<java.lang.String,java.lang.String> attributes)
A map of attributes with their corresponding values.
The following lists the names, descriptions, and values of the special
request parameters that the CreateTopic action uses:
DeliveryPolicy – The policy that defines how Amazon SNS
retries failed deliveries to HTTP/S endpoints.
DisplayName – The display name to use for a topic with SMS
subscriptions.
FifoTopic – Set to true to create a FIFO topic.
Policy – The policy that defines who can access your topic.
By default, only the topic owner can publish or subscribe to the topic.
SignatureVersion – The signature version corresponds to the
hashing algorithm used while creating the signature of the notifications,
subscription confirmations, or unsubscribe confirmation messages sent by
Amazon SNS. By default, SignatureVersion is set to
1.
TracingConfig – Tracing mode of an Amazon SNS topic. By
default TracingConfig is set to PassThrough,
and the topic passes through the tracing header it receives from an
Amazon SNS publisher to its subscriptions. If set to Active,
Amazon SNS will vend X-Ray segment data to topic owner account if the
sampled flag in the tracing header is true. This is only supported on
standard topics.
The following attribute applies only to server-side encryption:
KmsMasterKeyId – The ID of an Amazon Web Services managed
customer master key (CMK) for Amazon SNS or a custom CMK. For more
information, see Key Terms. For more examples, see KeyId in the Key Management Service API Reference.
The following attributes apply only to FIFO topics:
FifoTopic – When this is set to true, a FIFO
topic is created.
ContentBasedDeduplication – Enables content-based
deduplication for FIFO topics.
By default, ContentBasedDeduplication is set to
false. If you create a FIFO topic and this attribute is
false, you must specify a value for the
MessageDeduplicationId parameter for the Publish action.
When you set ContentBasedDeduplication to true,
Amazon SNS uses a SHA-256 hash to generate the
MessageDeduplicationId using the body of the message (but
not the attributes of the message).
(Optional) To override the generated value, you can specify a value for
the MessageDeduplicationId parameter for the
Publish action.
Returns a reference to this object so that method calls can be chained together.
attributes - A map of attributes with their corresponding values.
The following lists the names, descriptions, and values of the
special request parameters that the CreateTopic
action uses:
DeliveryPolicy – The policy that defines how
Amazon SNS retries failed deliveries to HTTP/S endpoints.
DisplayName – The display name to use for a topic
with SMS subscriptions.
FifoTopic – Set to true to create a FIFO topic.
Policy – The policy that defines who can access
your topic. By default, only the topic owner can publish or
subscribe to the topic.
SignatureVersion – The signature version
corresponds to the hashing algorithm used while creating the
signature of the notifications, subscription confirmations, or
unsubscribe confirmation messages sent by Amazon SNS. By
default, SignatureVersion is set to
1.
TracingConfig – Tracing mode of an Amazon SNS
topic. By default TracingConfig is set to
PassThrough, and the topic passes through the
tracing header it receives from an Amazon SNS publisher to its
subscriptions. If set to Active, Amazon SNS will
vend X-Ray segment data to topic owner account if the sampled
flag in the tracing header is true. This is only supported on
standard topics.
The following attribute applies only to server-side encryption:
KmsMasterKeyId – The ID of an Amazon Web Services
managed customer master key (CMK) for Amazon SNS or a custom
CMK. For more information, see Key Terms. For more examples, see KeyId in the Key Management Service API Reference.
The following attributes apply only to FIFO topics:
FifoTopic – When this is set to true
, a FIFO topic is created.
ContentBasedDeduplication – Enables content-based
deduplication for FIFO topics.
By default, ContentBasedDeduplication is set to
false. If you create a FIFO topic and this
attribute is false, you must specify a value for
the MessageDeduplicationId parameter for the Publish action.
When you set ContentBasedDeduplication to
true, Amazon SNS uses a SHA-256 hash to generate
the MessageDeduplicationId using the body of the
message (but not the attributes of the message).
(Optional) To override the generated value, you can specify a
value for the MessageDeduplicationId parameter
for the Publish action.
public CreateTopicRequest addAttributesEntry(java.lang.String key, java.lang.String value)
A map of attributes with their corresponding values.
The following lists the names, descriptions, and values of the special
request parameters that the CreateTopic action uses:
DeliveryPolicy – The policy that defines how Amazon SNS
retries failed deliveries to HTTP/S endpoints.
DisplayName – The display name to use for a topic with SMS
subscriptions.
FifoTopic – Set to true to create a FIFO topic.
Policy – The policy that defines who can access your topic.
By default, only the topic owner can publish or subscribe to the topic.
SignatureVersion – The signature version corresponds to the
hashing algorithm used while creating the signature of the notifications,
subscription confirmations, or unsubscribe confirmation messages sent by
Amazon SNS. By default, SignatureVersion is set to
1.
TracingConfig – Tracing mode of an Amazon SNS topic. By
default TracingConfig is set to PassThrough,
and the topic passes through the tracing header it receives from an
Amazon SNS publisher to its subscriptions. If set to Active,
Amazon SNS will vend X-Ray segment data to topic owner account if the
sampled flag in the tracing header is true. This is only supported on
standard topics.
The following attribute applies only to server-side encryption:
KmsMasterKeyId – The ID of an Amazon Web Services managed
customer master key (CMK) for Amazon SNS or a custom CMK. For more
information, see Key Terms. For more examples, see KeyId in the Key Management Service API Reference.
The following attributes apply only to FIFO topics:
FifoTopic – When this is set to true, a FIFO
topic is created.
ContentBasedDeduplication – Enables content-based
deduplication for FIFO topics.
By default, ContentBasedDeduplication is set to
false. If you create a FIFO topic and this attribute is
false, you must specify a value for the
MessageDeduplicationId parameter for the Publish action.
When you set ContentBasedDeduplication to true,
Amazon SNS uses a SHA-256 hash to generate the
MessageDeduplicationId using the body of the message (but
not the attributes of the message).
(Optional) To override the generated value, you can specify a value for
the MessageDeduplicationId parameter for the
Publish action.
The method adds a new key-value pair into Attributes parameter, and returns a reference to this object so that method calls can be chained together.
key - The key of the entry to be added into Attributes.value - The corresponding value of the entry to be added into
Attributes.public CreateTopicRequest clearAttributesEntries()
Returns a reference to this object so that method calls can be chained together.
public java.util.List<Tag> getTags()
The list of tags to add to a new topic.
To be able to tag a topic on creation, you must have the
sns:CreateTopic and sns:TagResource
permissions.
The list of tags to add to a new topic.
To be able to tag a topic on creation, you must have the
sns:CreateTopic and sns:TagResource
permissions.
public void setTags(java.util.Collection<Tag> tags)
The list of tags to add to a new topic.
To be able to tag a topic on creation, you must have the
sns:CreateTopic and sns:TagResource
permissions.
tags - The list of tags to add to a new topic.
To be able to tag a topic on creation, you must have the
sns:CreateTopic and sns:TagResource
permissions.
public CreateTopicRequest withTags(Tag... tags)
The list of tags to add to a new topic.
To be able to tag a topic on creation, you must have the
sns:CreateTopic and sns:TagResource
permissions.
Returns a reference to this object so that method calls can be chained together.
tags - The list of tags to add to a new topic.
To be able to tag a topic on creation, you must have the
sns:CreateTopic and sns:TagResource
permissions.
public CreateTopicRequest withTags(java.util.Collection<Tag> tags)
The list of tags to add to a new topic.
To be able to tag a topic on creation, you must have the
sns:CreateTopic and sns:TagResource
permissions.
Returns a reference to this object so that method calls can be chained together.
tags - The list of tags to add to a new topic.
To be able to tag a topic on creation, you must have the
sns:CreateTopic and sns:TagResource
permissions.
public java.lang.String getDataProtectionPolicy()
The body of the policy document you want to use for this topic.
You can only add one policy per topic.
The policy must be in JSON string format.
Length Constraints: Maximum length of 30,720.
The body of the policy document you want to use for this topic.
You can only add one policy per topic.
The policy must be in JSON string format.
Length Constraints: Maximum length of 30,720.
public void setDataProtectionPolicy(java.lang.String dataProtectionPolicy)
The body of the policy document you want to use for this topic.
You can only add one policy per topic.
The policy must be in JSON string format.
Length Constraints: Maximum length of 30,720.
dataProtectionPolicy - The body of the policy document you want to use for this topic.
You can only add one policy per topic.
The policy must be in JSON string format.
Length Constraints: Maximum length of 30,720.
public CreateTopicRequest withDataProtectionPolicy(java.lang.String dataProtectionPolicy)
The body of the policy document you want to use for this topic.
You can only add one policy per topic.
The policy must be in JSON string format.
Length Constraints: Maximum length of 30,720.
Returns a reference to this object so that method calls can be chained together.
dataProtectionPolicy - The body of the policy document you want to use for this topic.
You can only add one policy per topic.
The policy must be in JSON string format.
Length Constraints: Maximum length of 30,720.
public java.lang.String toString()
toString in class java.lang.ObjectObject.toString()public int hashCode()
hashCode in class java.lang.Objectpublic boolean equals(java.lang.Object obj)
equals in class java.lang.Object