public class AbstractAmazonSNS extends Object implements AmazonSNS
AmazonSNS. Convenient method forms pass
through to the corresponding overload that takes a request object, which
throws an UnsupportedOperationException.| Modifier and Type | Method and Description |
|---|---|
void |
addPermission(AddPermissionRequest request)
Adds a statement to a topic's access control policy, granting access for
the specified AWS accounts to the specified actions.
|
void |
addPermission(String topicArn,
String label,
List<String> aWSAccountIds,
List<String> actionNames)
Simplified method form for invoking the AddPermission operation.
|
ConfirmSubscriptionResult |
confirmSubscription(ConfirmSubscriptionRequest request)
Verifies an endpoint owner's intent to receive messages by validating the
token sent to the endpoint by an earlier
Subscribe action. |
ConfirmSubscriptionResult |
confirmSubscription(String topicArn,
String token)
Simplified method form for invoking the ConfirmSubscription operation.
|
ConfirmSubscriptionResult |
confirmSubscription(String topicArn,
String token,
String authenticateOnUnsubscribe)
Simplified method form for invoking the ConfirmSubscription operation.
|
CreatePlatformApplicationResult |
createPlatformApplication(CreatePlatformApplicationRequest request)
Creates a platform application object for one of the supported push
notification services, such as APNS and GCM, to which devices and mobile
apps may register.
|
CreatePlatformEndpointResult |
createPlatformEndpoint(CreatePlatformEndpointRequest request)
Creates an endpoint for a device and mobile app on one of the supported
push notification services, such as GCM and APNS.
|
CreateTopicResult |
createTopic(CreateTopicRequest request)
Creates a topic to which notifications can be published.
|
CreateTopicResult |
createTopic(String name)
Simplified method form for invoking the CreateTopic operation.
|
void |
deleteEndpoint(DeleteEndpointRequest request)
Deletes the endpoint from Amazon SNS.
|
void |
deletePlatformApplication(DeletePlatformApplicationRequest request)
Deletes a platform application object for one of the supported push
notification services, such as APNS and GCM.
|
void |
deleteTopic(DeleteTopicRequest request)
Deletes a topic and all its subscriptions.
|
void |
deleteTopic(String topicArn)
Simplified method form for invoking the DeleteTopic operation.
|
ResponseMetadata |
getCachedResponseMetadata(AmazonWebServiceRequest request)
Returns additional metadata for a previously executed successful request,
typically used for debugging issues where a service isn't acting as
expected.
|
GetEndpointAttributesResult |
getEndpointAttributes(GetEndpointAttributesRequest request)
Retrieves the endpoint attributes for a device on one of the supported
push notification services, such as GCM and APNS.
|
GetPlatformApplicationAttributesResult |
getPlatformApplicationAttributes(GetPlatformApplicationAttributesRequest request)
Retrieves the attributes of the platform application object for the
supported push notification services, such as APNS and GCM.
|
GetSubscriptionAttributesResult |
getSubscriptionAttributes(GetSubscriptionAttributesRequest request)
Returns all of the properties of a subscription.
|
GetSubscriptionAttributesResult |
getSubscriptionAttributes(String subscriptionArn)
Simplified method form for invoking the GetSubscriptionAttributes
operation.
|
GetTopicAttributesResult |
getTopicAttributes(GetTopicAttributesRequest request)
Returns all of the properties of a topic.
|
GetTopicAttributesResult |
getTopicAttributes(String topicArn)
Simplified method form for invoking the GetTopicAttributes operation.
|
ListEndpointsByPlatformApplicationResult |
listEndpointsByPlatformApplication(ListEndpointsByPlatformApplicationRequest request)
Lists the endpoints and endpoint attributes for devices in a supported
push notification service, such as GCM and APNS.
|
ListPlatformApplicationsResult |
listPlatformApplications()
Simplified method form for invoking the ListPlatformApplications
operation.
|
ListPlatformApplicationsResult |
listPlatformApplications(ListPlatformApplicationsRequest request)
Lists the platform application objects for the supported push
notification services, such as APNS and GCM.
|
ListSubscriptionsResult |
listSubscriptions()
Simplified method form for invoking the ListSubscriptions operation.
|
ListSubscriptionsResult |
listSubscriptions(ListSubscriptionsRequest request)
Returns a list of the requester's subscriptions.
|
ListSubscriptionsResult |
listSubscriptions(String nextToken)
Simplified method form for invoking the ListSubscriptions operation.
|
ListSubscriptionsByTopicResult |
listSubscriptionsByTopic(ListSubscriptionsByTopicRequest request)
Returns a list of the subscriptions to a specific topic.
|
ListSubscriptionsByTopicResult |
listSubscriptionsByTopic(String topicArn)
Simplified method form for invoking the ListSubscriptionsByTopic
operation.
|
ListSubscriptionsByTopicResult |
listSubscriptionsByTopic(String topicArn,
String nextToken)
Simplified method form for invoking the ListSubscriptionsByTopic
operation.
|
ListTopicsResult |
listTopics()
Simplified method form for invoking the ListTopics operation.
|
ListTopicsResult |
listTopics(ListTopicsRequest request)
Returns a list of the requester's topics.
|
ListTopicsResult |
listTopics(String nextToken)
Simplified method form for invoking the ListTopics operation.
|
PublishResult |
publish(PublishRequest request)
Sends a message to all of a topic's subscribed endpoints.
|
PublishResult |
publish(String topicArn,
String message)
Simplified method form for invoking the Publish operation.
|
PublishResult |
publish(String topicArn,
String message,
String subject)
Simplified method form for invoking the Publish operation.
|
void |
removePermission(RemovePermissionRequest request)
Removes a statement from a topic's access control policy.
|
void |
removePermission(String topicArn,
String label)
Simplified method form for invoking the RemovePermission operation.
|
void |
setEndpoint(String endpoint)
Overrides the default endpoint for this client
("https://sns.us-east-1.amazonaws.com").
|
void |
setEndpointAttributes(SetEndpointAttributesRequest request)
Sets the attributes for an endpoint for a device on one of the supported
push notification services, such as GCM and APNS.
|
void |
setPlatformApplicationAttributes(SetPlatformApplicationAttributesRequest request)
Sets the attributes of the platform application object for the supported
push notification services, such as APNS and GCM.
|
void |
setRegion(Region region)
An alternative to
AmazonSNS.setEndpoint(String), sets the
regional endpoint for this client's service calls. |
void |
setSubscriptionAttributes(SetSubscriptionAttributesRequest request)
Allows a subscription owner to set an attribute of the topic to a new
value.
|
void |
setSubscriptionAttributes(String subscriptionArn,
String attributeName,
String attributeValue)
Simplified method form for invoking the SetSubscriptionAttributes
operation.
|
void |
setTopicAttributes(SetTopicAttributesRequest request)
Allows a topic owner to set an attribute of the topic to a new value.
|
void |
setTopicAttributes(String topicArn,
String attributeName,
String attributeValue)
Simplified method form for invoking the SetTopicAttributes operation.
|
void |
shutdown()
Shuts down this client object, releasing any resources that might be held
open.
|
SubscribeResult |
subscribe(String topicArn,
String protocol,
String endpoint)
Simplified method form for invoking the Subscribe operation.
|
SubscribeResult |
subscribe(SubscribeRequest request)
Prepares to subscribe an endpoint by sending the endpoint a confirmation
message.
|
void |
unsubscribe(String subscriptionArn)
Simplified method form for invoking the Unsubscribe operation.
|
void |
unsubscribe(UnsubscribeRequest request)
Deletes a subscription.
|
public void setEndpoint(String endpoint)
AmazonSNS
Callers can pass in just the endpoint (ex: "sns.us-east-1.amazonaws.com")
or a full URL, including the protocol (ex:
"https://sns.us-east-1.amazonaws.com"). If the protocol is not specified
here, the default protocol from this client's ClientConfiguration
will be used, which by default is HTTPS.
For more information on using AWS regions with the AWS SDK for Java, and a complete list of all available endpoints for all AWS services, see: http://developer.amazonwebservices.com/connect/entry.jspa?externalID= 3912
This method is not threadsafe. An endpoint should be configured when the client is created and before any service requests are made. Changing it afterwards creates inevitable race conditions for any service requests in transit or retrying.
setEndpoint in interface AmazonSNSendpoint - The endpoint (ex: "sns.us-east-1.amazonaws.com") or a full URL,
including the protocol (ex: "https://sns.us-east-1.amazonaws.com")
of the region specific AWS endpoint this client will communicate
with.public void setRegion(Region region)
AmazonSNSAmazonSNS.setEndpoint(String), sets the
regional endpoint for this client's service calls. Callers can use this
method to control which AWS region they want to work with.
By default, all service endpoints in all regions use the https protocol.
To use http instead, specify it in the ClientConfiguration
supplied at construction.
This method is not threadsafe. A region should be configured when the client is created and before any service requests are made. Changing it afterwards creates inevitable race conditions for any service requests in transit or retrying.
setRegion in interface AmazonSNSregion - The region this client will communicate with. See
Region.getRegion(com.amazonaws.regions.Regions) for
accessing a given region. Must not be null and must be a region
where the service is available.Region.getRegion(com.amazonaws.regions.Regions),
Region.createClient(Class,
com.amazonaws.auth.AWSCredentialsProvider, ClientConfiguration),
Region.isServiceSupported(String)public void addPermission(AddPermissionRequest request)
AmazonSNSAdds a statement to a topic's access control policy, granting access for the specified AWS accounts to the specified actions.
addPermission in interface AmazonSNSpublic void addPermission(String topicArn, String label, List<String> aWSAccountIds, List<String> actionNames)
AmazonSNSaddPermission in interface AmazonSNSAmazonSNS.addPermission(AddPermissionRequest)public ConfirmSubscriptionResult confirmSubscription(ConfirmSubscriptionRequest request)
AmazonSNS
Verifies an endpoint owner's intent to receive messages by validating the
token sent to the endpoint by an earlier Subscribe action.
If the token is valid, the action creates a new subscription and returns
its Amazon Resource Name (ARN). This call requires an AWS signature only
when the AuthenticateOnUnsubscribe flag is set to "true".
confirmSubscription in interface AmazonSNSrequest - Input for ConfirmSubscription action.public ConfirmSubscriptionResult confirmSubscription(String topicArn, String token, String authenticateOnUnsubscribe)
AmazonSNSconfirmSubscription in interface AmazonSNSAmazonSNS.confirmSubscription(ConfirmSubscriptionRequest)public ConfirmSubscriptionResult confirmSubscription(String topicArn, String token)
AmazonSNSconfirmSubscription in interface AmazonSNSAmazonSNS.confirmSubscription(ConfirmSubscriptionRequest)public CreatePlatformApplicationResult createPlatformApplication(CreatePlatformApplicationRequest request)
AmazonSNS
Creates a platform application object for one of the supported push
notification services, such as APNS and GCM, to which devices and mobile
apps may register. You must specify PlatformPrincipal and
PlatformCredential attributes when using the
CreatePlatformApplication action. The PlatformPrincipal is
received from the notification service. For APNS/APNS_SANDBOX,
PlatformPrincipal is "SSL certificate". For GCM, PlatformPrincipal is not
applicable. For ADM, PlatformPrincipal is "client id". The
PlatformCredential is also received from the notification service. For
APNS/APNS_SANDBOX, PlatformCredential is "private key". For GCM,
PlatformCredential is "API key". For ADM, PlatformCredential is
"client secret". The PlatformApplicationArn that is returned when using
CreatePlatformApplication is then used as an attribute for
the CreatePlatformEndpoint action. For more information, see
Using Amazon SNS Mobile Push Notifications.
createPlatformApplication in interface AmazonSNSrequest - Input for CreatePlatformApplication action.public CreatePlatformEndpointResult createPlatformEndpoint(CreatePlatformEndpointRequest request)
AmazonSNS
Creates an endpoint for a device and mobile app on one of the supported
push notification services, such as GCM and APNS.
CreatePlatformEndpoint requires the PlatformApplicationArn
that is returned from CreatePlatformApplication. The
EndpointArn that is returned when using
CreatePlatformEndpoint can then be used by the
Publish action to send a message to a mobile app or by the
Subscribe action for subscription to a topic. The
CreatePlatformEndpoint action is idempotent, so if the
requester already owns an endpoint with the same device token and
attributes, that endpoint's ARN is returned without creating a new
endpoint. For more information, see Using
Amazon SNS Mobile Push Notifications.
When using CreatePlatformEndpoint with Baidu, two attributes
must be provided: ChannelId and UserId. The token field must also contain
the ChannelId. For more information, see Creating an Amazon SNS Endpoint for Baidu.
createPlatformEndpoint in interface AmazonSNSrequest - Input for CreatePlatformEndpoint action.public CreateTopicResult createTopic(CreateTopicRequest request)
AmazonSNSCreates a topic to which notifications can be published. Users can create at most 3000 topics. For more information, see http://aws.amazon.com/sns. 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.
createTopic in interface AmazonSNSrequest - Input for CreateTopic action.public CreateTopicResult createTopic(String name)
AmazonSNScreateTopic in interface AmazonSNSAmazonSNS.createTopic(CreateTopicRequest)public void deleteEndpoint(DeleteEndpointRequest request)
AmazonSNSDeletes the endpoint from Amazon SNS. This action is idempotent. For more information, see Using Amazon SNS Mobile Push Notifications.
deleteEndpoint in interface AmazonSNSrequest - Input for DeleteEndpoint action.public void deletePlatformApplication(DeletePlatformApplicationRequest request)
AmazonSNSDeletes a platform application object for one of the supported push notification services, such as APNS and GCM. For more information, see Using Amazon SNS Mobile Push Notifications.
deletePlatformApplication in interface AmazonSNSrequest - Input for DeletePlatformApplication action.public void deleteTopic(DeleteTopicRequest request)
AmazonSNSDeletes a topic and all its subscriptions. Deleting a topic might prevent some messages previously sent to the topic from being delivered to subscribers. This action is idempotent, so deleting a topic that does not exist does not result in an error.
deleteTopic in interface AmazonSNSpublic void deleteTopic(String topicArn)
AmazonSNSdeleteTopic in interface AmazonSNSAmazonSNS.deleteTopic(DeleteTopicRequest)public GetEndpointAttributesResult getEndpointAttributes(GetEndpointAttributesRequest request)
AmazonSNSRetrieves the endpoint attributes for a device on one of the supported push notification services, such as GCM and APNS. For more information, see Using Amazon SNS Mobile Push Notifications.
getEndpointAttributes in interface AmazonSNSrequest - Input for GetEndpointAttributes action.public GetPlatformApplicationAttributesResult getPlatformApplicationAttributes(GetPlatformApplicationAttributesRequest request)
AmazonSNSRetrieves the attributes of the platform application object for the supported push notification services, such as APNS and GCM. For more information, see Using Amazon SNS Mobile Push Notifications.
getPlatformApplicationAttributes in interface AmazonSNSrequest - Input for GetPlatformApplicationAttributes action.public GetSubscriptionAttributesResult getSubscriptionAttributes(GetSubscriptionAttributesRequest request)
AmazonSNSReturns all of the properties of a subscription.
getSubscriptionAttributes in interface AmazonSNSrequest - Input for GetSubscriptionAttributes.public GetSubscriptionAttributesResult getSubscriptionAttributes(String subscriptionArn)
AmazonSNSgetSubscriptionAttributes in interface AmazonSNSAmazonSNS.getSubscriptionAttributes(GetSubscriptionAttributesRequest)public GetTopicAttributesResult getTopicAttributes(GetTopicAttributesRequest request)
AmazonSNSReturns all of the properties of a topic. Topic properties returned might differ based on the authorization of the user.
getTopicAttributes in interface AmazonSNSrequest - Input for GetTopicAttributes action.public GetTopicAttributesResult getTopicAttributes(String topicArn)
AmazonSNSgetTopicAttributes in interface AmazonSNSAmazonSNS.getTopicAttributes(GetTopicAttributesRequest)public ListEndpointsByPlatformApplicationResult listEndpointsByPlatformApplication(ListEndpointsByPlatformApplicationRequest request)
AmazonSNS
Lists the endpoints and endpoint attributes for devices in a supported
push notification service, such as GCM and APNS. The results for
ListEndpointsByPlatformApplication are paginated and return
a limited list of endpoints, up to 100. If additional records are
available after the first page results, then a NextToken string will be
returned. To receive the next page, you call
ListEndpointsByPlatformApplication again using the NextToken
string received from the previous call. When there are no more records to
return, NextToken will be null. For more information, see Using
Amazon SNS Mobile Push Notifications.
listEndpointsByPlatformApplication in interface AmazonSNSrequest - Input for ListEndpointsByPlatformApplication action.public ListPlatformApplicationsResult listPlatformApplications(ListPlatformApplicationsRequest request)
AmazonSNS
Lists the platform application objects for the supported push
notification services, such as APNS and GCM. The results for
ListPlatformApplications are paginated and return a limited
list of applications, up to 100. If additional records are available
after the first page results, then a NextToken string will be returned.
To receive the next page, you call ListPlatformApplications
using the NextToken string received from the previous call. When there
are no more records to return, NextToken will be null. For more
information, see Using
Amazon SNS Mobile Push Notifications.
listPlatformApplications in interface AmazonSNSrequest - Input for ListPlatformApplications action.public ListPlatformApplicationsResult listPlatformApplications()
AmazonSNSlistPlatformApplications in interface AmazonSNSAmazonSNS.listPlatformApplications(ListPlatformApplicationsRequest)public ListSubscriptionsResult listSubscriptions(ListSubscriptionsRequest request)
AmazonSNS
Returns a list of the requester's subscriptions. Each call returns a
limited list of subscriptions, up to 100. If there are more
subscriptions, a NextToken is also returned. Use the
NextToken parameter in a new ListSubscriptions
call to get further results.
listSubscriptions in interface AmazonSNSrequest - Input for ListSubscriptions action.public ListSubscriptionsResult listSubscriptions()
AmazonSNSlistSubscriptions in interface AmazonSNSAmazonSNS.listSubscriptions(ListSubscriptionsRequest)public ListSubscriptionsResult listSubscriptions(String nextToken)
AmazonSNSlistSubscriptions in interface AmazonSNSAmazonSNS.listSubscriptions(ListSubscriptionsRequest)public ListSubscriptionsByTopicResult listSubscriptionsByTopic(ListSubscriptionsByTopicRequest request)
AmazonSNS
Returns a list of the subscriptions to a specific topic. Each call
returns a limited list of subscriptions, up to 100. If there are more
subscriptions, a NextToken is also returned. Use the
NextToken parameter in a new
ListSubscriptionsByTopic call to get further results.
listSubscriptionsByTopic in interface AmazonSNSrequest - Input for ListSubscriptionsByTopic action.public ListSubscriptionsByTopicResult listSubscriptionsByTopic(String topicArn)
AmazonSNSlistSubscriptionsByTopic in interface AmazonSNSAmazonSNS.listSubscriptionsByTopic(ListSubscriptionsByTopicRequest)public ListSubscriptionsByTopicResult listSubscriptionsByTopic(String topicArn, String nextToken)
AmazonSNSlistSubscriptionsByTopic in interface AmazonSNSAmazonSNS.listSubscriptionsByTopic(ListSubscriptionsByTopicRequest)public ListTopicsResult listTopics(ListTopicsRequest request)
AmazonSNS
Returns a list of the requester's topics. Each call returns a limited
list of topics, up to 100. If there are more topics, a
NextToken is also returned. Use the NextToken
parameter in a new ListTopics call to get further results.
listTopics in interface AmazonSNSpublic ListTopicsResult listTopics()
AmazonSNSlistTopics in interface AmazonSNSAmazonSNS.listTopics(ListTopicsRequest)public ListTopicsResult listTopics(String nextToken)
AmazonSNSlistTopics in interface AmazonSNSAmazonSNS.listTopics(ListTopicsRequest)public PublishResult publish(PublishRequest request)
AmazonSNS
Sends a message to all of a topic's subscribed endpoints. When a
messageId is returned, the message has been saved and Amazon
SNS will attempt to deliver it to the topic's subscribers shortly. The
format of the outgoing message to each subscribed endpoint depends on the
notification protocol selected.
To use the Publish action for sending a message to a mobile
endpoint, such as an app on a Kindle device or mobile phone, you must
specify the EndpointArn. The EndpointArn is returned when making a call
with the CreatePlatformEndpoint action. The second example
below shows a request and response for publishing to a mobile endpoint.
public PublishResult publish(String topicArn, String message)
AmazonSNSpublish in interface AmazonSNSAmazonSNS.publish(PublishRequest)public PublishResult publish(String topicArn, String message, String subject)
AmazonSNSpublish in interface AmazonSNSAmazonSNS.publish(PublishRequest)public void removePermission(RemovePermissionRequest request)
AmazonSNSRemoves a statement from a topic's access control policy.
removePermission in interface AmazonSNSrequest - Input for RemovePermission action.public void removePermission(String topicArn, String label)
AmazonSNSremovePermission in interface AmazonSNSAmazonSNS.removePermission(RemovePermissionRequest)public void setEndpointAttributes(SetEndpointAttributesRequest request)
AmazonSNSSets the attributes for an endpoint for a device on one of the supported push notification services, such as GCM and APNS. For more information, see Using Amazon SNS Mobile Push Notifications.
setEndpointAttributes in interface AmazonSNSrequest - Input for SetEndpointAttributes action.public void setPlatformApplicationAttributes(SetPlatformApplicationAttributesRequest request)
AmazonSNSSets the attributes of the platform application object for the supported push notification services, such as APNS and GCM. For more information, see Using Amazon SNS Mobile Push Notifications.
setPlatformApplicationAttributes in interface AmazonSNSrequest - Input for SetPlatformApplicationAttributes action.public void setSubscriptionAttributes(SetSubscriptionAttributesRequest request)
AmazonSNSAllows a subscription owner to set an attribute of the topic to a new value.
setSubscriptionAttributes in interface AmazonSNSrequest - Input for SetSubscriptionAttributes action.public void setSubscriptionAttributes(String subscriptionArn, String attributeName, String attributeValue)
AmazonSNSsetSubscriptionAttributes in interface AmazonSNSAmazonSNS.setSubscriptionAttributes(SetSubscriptionAttributesRequest)public void setTopicAttributes(SetTopicAttributesRequest request)
AmazonSNSAllows a topic owner to set an attribute of the topic to a new value.
setTopicAttributes in interface AmazonSNSrequest - Input for SetTopicAttributes action.public void setTopicAttributes(String topicArn, String attributeName, String attributeValue)
AmazonSNSsetTopicAttributes in interface AmazonSNSAmazonSNS.setTopicAttributes(SetTopicAttributesRequest)public SubscribeResult subscribe(SubscribeRequest request)
AmazonSNS
Prepares to subscribe an endpoint by sending the endpoint a confirmation
message. To actually create a subscription, the endpoint owner must call
the ConfirmSubscription action with the token from the
confirmation message. Confirmation tokens are valid for three days.
public SubscribeResult subscribe(String topicArn, String protocol, String endpoint)
AmazonSNSsubscribe in interface AmazonSNSAmazonSNS.subscribe(SubscribeRequest)public void unsubscribe(UnsubscribeRequest request)
AmazonSNS
Deletes a subscription. If the subscription requires authentication for
deletion, only the owner of the subscription or the topic's owner can
unsubscribe, and an AWS signature is required. If the
Unsubscribe call does not require authentication and the
requester is not the subscription owner, a final cancellation message is
delivered to the endpoint, so that the endpoint owner can easily
resubscribe to the topic if the Unsubscribe request was
unintended.
unsubscribe in interface AmazonSNSrequest - Input for Unsubscribe action.public void unsubscribe(String subscriptionArn)
AmazonSNSunsubscribe in interface AmazonSNSAmazonSNS.unsubscribe(UnsubscribeRequest)public void shutdown()
AmazonSNSpublic ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request)
AmazonSNSResponse metadata is only cached for a limited period of time, so if you need to access this extra diagnostic information for an executed request, you should use this method to retrieve it as soon as possible after executing a request.
getCachedResponseMetadata in interface AmazonSNSrequest - The originally executed request.Copyright © 2013 Amazon Web Services, Inc. All Rights Reserved.