Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
   /*
    * Copyright 2010-2015 Amazon.com, Inc. or its affiliates. All Rights Reserved.
    * 
    * Licensed under the Apache License, Version 2.0 (the "License").
    * You may not use this file except in compliance with the License.
    * A copy of the License is located at
    * 
    *  http://aws.amazon.com/apache2.0
    * 
   * or in the "license" file accompanying this file. This file is distributed
   * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
   * express or implied. See the License for the specific language governing
   * permissions and limitations under the License.
   */
  package com.amazonaws.services.sns;
  
  
  
Asynchronous client for accessing AmazonSNS. All asynchronous calls made using this client are non-blocking. Callers could either process the result and handle the exceptions in the worker thread by providing a callback handler when making the call, or use the returned Future object to check the result of the call in the calling thread. Amazon Simple Notification Service

Amazon Simple Notification Service (Amazon SNS) is a web service that enables you to build distributed web-enabled applications. Applications can use Amazon SNS to easily push real-time notification messages to interested subscribers over multiple delivery protocols. For more information about this product see http://aws.amazon.com/sns . For detailed information about Amazon SNS features and their associated API calls, see the Amazon SNS Developer Guide .

We also provide SDKs that enable you to access Amazon SNS from your preferred programming language. The SDKs contain functionality that automatically takes care of tasks such as: cryptographically signing your service requests, retrying requests, and handling error responses. For a list of available SDKs, go to Tools for Amazon Web Services .

  
  public class AmazonSNSAsyncClient extends AmazonSNSClient
          implements AmazonSNSAsync {

    
Executor service for executing asynchronous requests.
  
      private ExecutorService executorService;
  
      private static final int DEFAULT_THREAD_POOL_SIZE = 50;

    
Constructs a new asynchronous client to invoke service methods on AmazonSNS. A credentials provider chain will be used that searches for credentials in this order:
  • Environment Variables - AWS_ACCESS_KEY_ID and AWS_SECRET_KEY
  • Java System Properties - aws.accessKeyId and aws.secretKey
  • Instance profile credentials delivered through the Amazon EC2 metadata service

All service calls made using this new client object are blocking, and will not return until the service call completes.

  
      public AmazonSNSAsyncClient() {
          this(new DefaultAWSCredentialsProviderChain());
      }

    
Constructs a new asynchronous client to invoke service methods on AmazonSNS. A credentials provider chain will be used that searches for credentials in this order:
  • Environment Variables - AWS_ACCESS_KEY_ID and AWS_SECRET_KEY
  • Java System Properties - aws.accessKeyId and aws.secretKey
  • Instance profile credentials delivered through the Amazon EC2 metadata service

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
clientConfiguration The client configuration options controlling how this client connects to AmazonSNS (ex: proxy settings, retry counts, etc.).
See also:
com.amazonaws.auth.DefaultAWSCredentialsProviderChain
 
     public AmazonSNSAsyncClient(ClientConfiguration clientConfiguration) {
         this(new DefaultAWSCredentialsProviderChain(), clientConfiguration, Executors.newFixedThreadPool(clientConfiguration.getMaxConnections()));
     }

    
Constructs a new asynchronous client to invoke service methods on AmazonSNS using the specified AWS account credentials. Default client settings will be used, and a fixed size thread pool will be created for executing the asynchronous tasks.

All calls made using this new client object are non-blocking, and will immediately return a Java Future object that the caller can later check to see if the service call has actually completed.

Parameters:
awsCredentials The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.
 
     public AmazonSNSAsyncClient(AWSCredentials awsCredentials) {
         this(awsCredentials, Executors.newFixedThreadPool());
     }

    
Constructs a new asynchronous client to invoke service methods on AmazonSNS using the specified AWS account credentials and executor service. Default client settings will be used.

All calls made using this new client object are non-blocking, and will immediately return a Java Future object that the caller can later check to see if the service call has actually completed.

Parameters:
awsCredentials The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.
executorService The executor service by which all asynchronous requests will be executed.
 
     public AmazonSNSAsyncClient(AWSCredentials awsCredentialsExecutorService executorService) {
         super(awsCredentials);
         this. = executorService;
     }

    
Constructs a new asynchronous client to invoke service methods on AmazonSNS using the specified AWS account credentials, executor service, and client configuration options.

All calls made using this new client object are non-blocking, and will immediately return a Java Future object that the caller can later check to see if the service call has actually completed.

Parameters:
awsCredentials The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.
clientConfiguration Client configuration options (ex: max retry limit, proxy settings, etc).
executorService The executor service by which all asynchronous requests will be executed.
 
     public AmazonSNSAsyncClient(AWSCredentials awsCredentials,
                 ClientConfiguration clientConfigurationExecutorService executorService) {
         super(awsCredentialsclientConfiguration);
         this. = executorService;
     }

    
Constructs a new asynchronous client to invoke service methods on AmazonSNS using the specified AWS account credentials provider. Default client settings will be used, and a fixed size thread pool will be created for executing the asynchronous tasks.

All calls made using this new client object are non-blocking, and will immediately return a Java Future object that the caller can later check to see if the service call has actually completed.

Parameters:
awsCredentialsProvider The AWS credentials provider which will provide credentials to authenticate requests with AWS services.
 
     public AmazonSNSAsyncClient(AWSCredentialsProvider awsCredentialsProvider) {
         this(awsCredentialsProvider, Executors.newFixedThreadPool());
     }

    
Constructs a new asynchronous client to invoke service methods on AmazonSNS using the specified AWS account credentials provider and executor service. Default client settings will be used.

All calls made using this new client object are non-blocking, and will immediately return a Java Future object that the caller can later check to see if the service call has actually completed.

Parameters:
awsCredentialsProvider The AWS credentials provider which will provide credentials to authenticate requests with AWS services.
executorService The executor service by which all asynchronous requests will be executed.
 
     public AmazonSNSAsyncClient(AWSCredentialsProvider awsCredentialsProviderExecutorService executorService) {
         this(awsCredentialsProvidernew ClientConfiguration(), executorService);
     }

    
Constructs a new asynchronous client to invoke service methods on AmazonSNS using the specified AWS account credentials provider and client configuration options.

All calls made using this new client object are non-blocking, and will immediately return a Java Future object that the caller can later check to see if the service call has actually completed.

Parameters:
awsCredentialsProvider The AWS credentials provider which will provide credentials to authenticate requests with AWS services.
clientConfiguration Client configuration options (ex: max retry limit, proxy settings, etc).
 
     public AmazonSNSAsyncClient(AWSCredentialsProvider awsCredentialsProvider,
                 ClientConfiguration clientConfiguration) {
         this(awsCredentialsProviderclientConfiguration, Executors.newFixedThreadPool(clientConfiguration.getMaxConnections()));
     }

    
Constructs a new asynchronous client to invoke service methods on AmazonSNS using the specified AWS account credentials provider, executor service, and client configuration options.

All calls made using this new client object are non-blocking, and will immediately return a Java Future object that the caller can later check to see if the service call has actually completed.

Parameters:
awsCredentialsProvider The AWS credentials provider which will provide credentials to authenticate requests with AWS services.
clientConfiguration Client configuration options (ex: max retry limit, proxy settings, etc).
executorService The executor service by which all asynchronous requests will be executed.
 
     public AmazonSNSAsyncClient(AWSCredentialsProvider awsCredentialsProvider,
                 ClientConfiguration clientConfigurationExecutorService executorService) {
         super(awsCredentialsProviderclientConfiguration);
         this. = executorService;
     }

    
Returns the executor service used by this async client to execute requests.

Returns:
The executor service used by this async client to execute requests.
 
     public ExecutorService getExecutorService() {
         return ;
     }

    
Shuts down the client, releasing all managed resources. This includes forcibly terminating all pending asynchronous service calls. Clients who wish to give pending asynchronous service calls time to complete should call getExecutorService().shutdown() followed by getExecutorService().awaitTermination() prior to calling this method.
 
     @Override
     public void shutdown() {
         super.shutdown();
         .shutdownNow();
     }
            
    

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".

Parameters:
confirmSubscriptionRequest Container for the necessary parameters to execute the ConfirmSubscription operation on AmazonSNS.
Returns:
A Java Future object containing the response from the ConfirmSubscription service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
 
     public Future<ConfirmSubscriptionResultconfirmSubscriptionAsync(final ConfirmSubscriptionRequest confirmSubscriptionRequest
             throws AmazonServiceExceptionAmazonClientException {
         return .submit(new Callable<ConfirmSubscriptionResult>() {
             public ConfirmSubscriptionResult call() throws Exception {
                 return confirmSubscription(confirmSubscriptionRequest);
         }
     });
     }

    

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".

Parameters:
confirmSubscriptionRequest Container for the necessary parameters to execute the ConfirmSubscription operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the ConfirmSubscription service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
 
             final ConfirmSubscriptionRequest confirmSubscriptionRequest,
             final AsyncHandler<ConfirmSubscriptionRequestConfirmSubscriptionResultasyncHandler)
                     throws AmazonServiceExceptionAmazonClientException {
         return .submit(new Callable<ConfirmSubscriptionResult>() {
             public ConfirmSubscriptionResult call() throws Exception {
               ConfirmSubscriptionResult result;
                 try {
                 result = confirmSubscription(confirmSubscriptionRequest);
               } catch (Exception ex) {
                   asyncHandler.onError(ex);
             throw ex;
               }
               asyncHandler.onSuccess(confirmSubscriptionRequestresult);
                  return result;
         }
     });
     }
    
    

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 .

Parameters:
createPlatformApplicationRequest Container for the necessary parameters to execute the CreatePlatformApplication operation on AmazonSNS.
Returns:
A Java Future object containing the response from the CreatePlatformApplication service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
 
             throws AmazonServiceExceptionAmazonClientException {
             public CreatePlatformApplicationResult call() throws Exception {
                 return createPlatformApplication(createPlatformApplicationRequest);
         }
     });
     }

    

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 .

Parameters:
createPlatformApplicationRequest Container for the necessary parameters to execute the CreatePlatformApplication operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the CreatePlatformApplication service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
 
             final CreatePlatformApplicationRequest createPlatformApplicationRequest,
             final AsyncHandler<CreatePlatformApplicationRequestCreatePlatformApplicationResultasyncHandler)
                     throws AmazonServiceExceptionAmazonClientException {
             public CreatePlatformApplicationResult call() throws Exception {
               CreatePlatformApplicationResult result;
                 try {
                 result = createPlatformApplication(createPlatformApplicationRequest);
               } catch (Exception ex) {
                   asyncHandler.onError(ex);
             throw ex;
               }
               asyncHandler.onSuccess(createPlatformApplicationRequestresult);
                  return result;
         }
     });
     }
    
    

Returns all of the properties of a topic. Topic properties returned might differ based on the authorization of the user.

Parameters:
getTopicAttributesRequest Container for the necessary parameters to execute the GetTopicAttributes operation on AmazonSNS.
Returns:
A Java Future object containing the response from the GetTopicAttributes service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
 
     public Future<GetTopicAttributesResultgetTopicAttributesAsync(final GetTopicAttributesRequest getTopicAttributesRequest
             throws AmazonServiceExceptionAmazonClientException {
         return .submit(new Callable<GetTopicAttributesResult>() {
             public GetTopicAttributesResult call() throws Exception {
                 return getTopicAttributes(getTopicAttributesRequest);
         }
     });
     }

    

Returns all of the properties of a topic. Topic properties returned might differ based on the authorization of the user.

Parameters:
getTopicAttributesRequest Container for the necessary parameters to execute the GetTopicAttributes operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the GetTopicAttributes service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
 
             final GetTopicAttributesRequest getTopicAttributesRequest,
             final AsyncHandler<GetTopicAttributesRequestGetTopicAttributesResultasyncHandler)
                     throws AmazonServiceExceptionAmazonClientException {
         return .submit(new Callable<GetTopicAttributesResult>() {
             public GetTopicAttributesResult call() throws Exception {
               GetTopicAttributesResult result;
                 try {
                 result = getTopicAttributes(getTopicAttributesRequest);
               } catch (Exception ex) {
                   asyncHandler.onError(ex);
             throw ex;
               }
               asyncHandler.onSuccess(getTopicAttributesRequestresult);
                  return result;
         }
     });
     }
    
    

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.

Parameters:
subscribeRequest Container for the necessary parameters to execute the Subscribe operation on AmazonSNS.
Returns:
A Java Future object containing the response from the Subscribe service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
 
     public Future<SubscribeResultsubscribeAsync(final SubscribeRequest subscribeRequest
             throws AmazonServiceExceptionAmazonClientException {
         return .submit(new Callable<SubscribeResult>() {
             public SubscribeResult call() throws Exception {
                 return subscribe(subscribeRequest);
         }
     });
     }

    

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.

Parameters:
subscribeRequest Container for the necessary parameters to execute the Subscribe operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the Subscribe service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
 
             final SubscribeRequest subscribeRequest,
             final AsyncHandler<SubscribeRequestSubscribeResultasyncHandler)
                     throws AmazonServiceExceptionAmazonClientException {
         return .submit(new Callable<SubscribeResult>() {
             public SubscribeResult call() throws Exception {
               SubscribeResult result;
                 try {
                 result = subscribe(subscribeRequest);
               } catch (Exception ex) {
                   asyncHandler.onError(ex);
             throw ex;
               }
               asyncHandler.onSuccess(subscribeRequestresult);
                  return result;
         }
     });
     }
    
    

Deletes the endpoint from Amazon SNS. This action is idempotent. For more information, see Using Amazon SNS Mobile Push Notifications .

Parameters:
deleteEndpointRequest Container for the necessary parameters to execute the DeleteEndpoint operation on AmazonSNS.
Returns:
A Java Future object containing the response from the DeleteEndpoint service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
 
     public Future<VoiddeleteEndpointAsync(final DeleteEndpointRequest deleteEndpointRequest
             throws AmazonServiceExceptionAmazonClientException {
         return .submit(new Callable<Void>() {
             public Void call() throws Exception {
                 deleteEndpoint(deleteEndpointRequest);
                 return null;
         }
     });
     }

    

Deletes the endpoint from Amazon SNS. This action is idempotent. For more information, see Using Amazon SNS Mobile Push Notifications .

Parameters:
deleteEndpointRequest Container for the necessary parameters to execute the DeleteEndpoint operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the DeleteEndpoint service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
 
     public Future<VoiddeleteEndpointAsync(
             final DeleteEndpointRequest deleteEndpointRequest,
             final AsyncHandler<DeleteEndpointRequestVoidasyncHandler)
                     throws AmazonServiceExceptionAmazonClientException {
         return .submit(new Callable<Void>() {
             public Void call() throws Exception {
               try {
                 deleteEndpoint(deleteEndpointRequest);
               } catch (Exception ex) {
                   asyncHandler.onError(ex);
             throw ex;
               }
               asyncHandler.onSuccess(deleteEndpointRequestnull);
                  return null;
         }
     });
     }
    
    

Allows a topic owner to set an attribute of the topic to a new value.

Parameters:
setTopicAttributesRequest Container for the necessary parameters to execute the SetTopicAttributes operation on AmazonSNS.
Returns:
A Java Future object containing the response from the SetTopicAttributes service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
 
     public Future<VoidsetTopicAttributesAsync(final SetTopicAttributesRequest setTopicAttributesRequest
             throws AmazonServiceExceptionAmazonClientException {
         return .submit(new Callable<Void>() {
             public Void call() throws Exception {
                 setTopicAttributes(setTopicAttributesRequest);
                 return null;
         }
     });
     }

    

Allows a topic owner to set an attribute of the topic to a new value.

Parameters:
setTopicAttributesRequest Container for the necessary parameters to execute the SetTopicAttributes operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the SetTopicAttributes service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
 
             final SetTopicAttributesRequest setTopicAttributesRequest,
             final AsyncHandler<SetTopicAttributesRequestVoidasyncHandler)
                     throws AmazonServiceExceptionAmazonClientException {
         return .submit(new Callable<Void>() {
             public Void call() throws Exception {
               try {
                 setTopicAttributes(setTopicAttributesRequest);
               } catch (Exception ex) {
                   asyncHandler.onError(ex);
             throw ex;
               }
               asyncHandler.onSuccess(setTopicAttributesRequestnull);
                  return null;
         }
     });
     }
    
    

Removes a statement from a topic's access control policy.

Parameters:
removePermissionRequest Container for the necessary parameters to execute the RemovePermission operation on AmazonSNS.
Returns:
A Java Future object containing the response from the RemovePermission service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
 
     public Future<VoidremovePermissionAsync(final RemovePermissionRequest removePermissionRequest
             throws AmazonServiceExceptionAmazonClientException {
         return .submit(new Callable<Void>() {
             public Void call() throws Exception {
                 removePermission(removePermissionRequest);
                 return null;
         }
     });
     }

    

Removes a statement from a topic's access control policy.

Parameters:
removePermissionRequest Container for the necessary parameters to execute the RemovePermission operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the RemovePermission service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
 
     public Future<VoidremovePermissionAsync(
             final RemovePermissionRequest removePermissionRequest,
             final AsyncHandler<RemovePermissionRequestVoidasyncHandler)
                     throws AmazonServiceExceptionAmazonClientException {
         return .submit(new Callable<Void>() {
             public Void call() throws Exception {
               try {
                 removePermission(removePermissionRequest);
               } catch (Exception ex) {
                   asyncHandler.onError(ex);
             throw ex;
               }
               asyncHandler.onSuccess(removePermissionRequestnull);
                  return null;
         }
     });
     }
    
    

Retrieves 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 .

Parameters:
getEndpointAttributesRequest Container for the necessary parameters to execute the GetEndpointAttributes operation on AmazonSNS.
Returns:
A Java Future object containing the response from the GetEndpointAttributes service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
 
     public Future<GetEndpointAttributesResultgetEndpointAttributesAsync(final GetEndpointAttributesRequest getEndpointAttributesRequest
             throws AmazonServiceExceptionAmazonClientException {
         return .submit(new Callable<GetEndpointAttributesResult>() {
             public GetEndpointAttributesResult call() throws Exception {
                 return getEndpointAttributes(getEndpointAttributesRequest);
         }
     });
     }

    

Retrieves 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 .

Parameters:
getEndpointAttributesRequest Container for the necessary parameters to execute the GetEndpointAttributes operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the GetEndpointAttributes service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
 
             final GetEndpointAttributesRequest getEndpointAttributesRequest,
             final AsyncHandler<GetEndpointAttributesRequestGetEndpointAttributesResultasyncHandler)
                     throws AmazonServiceExceptionAmazonClientException {
         return .submit(new Callable<GetEndpointAttributesResult>() {
             public GetEndpointAttributesResult call() throws Exception {
               GetEndpointAttributesResult result;
                 try {
                 result = getEndpointAttributes(getEndpointAttributesRequest);
               } catch (Exception ex) {
                   asyncHandler.onError(ex);
             throw ex;
               }
               asyncHandler.onSuccess(getEndpointAttributesRequestresult);
                  return result;
         }
     });
     }
    
    

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.

Parameters:
listSubscriptionsRequest Container for the necessary parameters to execute the ListSubscriptions operation on AmazonSNS.
Returns:
A Java Future object containing the response from the ListSubscriptions service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
 
     public Future<ListSubscriptionsResultlistSubscriptionsAsync(final ListSubscriptionsRequest listSubscriptionsRequest
             throws AmazonServiceExceptionAmazonClientException {
         return .submit(new Callable<ListSubscriptionsResult>() {
             public ListSubscriptionsResult call() throws Exception {
                 return listSubscriptions(listSubscriptionsRequest);
         }
     });
     }

    

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.

Parameters:
listSubscriptionsRequest Container for the necessary parameters to execute the ListSubscriptions operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the ListSubscriptions service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
 
             final ListSubscriptionsRequest listSubscriptionsRequest,
             final AsyncHandler<ListSubscriptionsRequestListSubscriptionsResultasyncHandler)
                     throws AmazonServiceExceptionAmazonClientException {
         return .submit(new Callable<ListSubscriptionsResult>() {
            public ListSubscriptionsResult call() throws Exception {
              ListSubscriptionsResult result;
                try {
                result = listSubscriptions(listSubscriptionsRequest);
              } catch (Exception ex) {
                  asyncHandler.onError(ex);
            throw ex;
              }
              asyncHandler.onSuccess(listSubscriptionsRequestresult);
                 return result;
        }
    });
    }
    
    

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 .

Parameters:
createPlatformEndpointRequest Container for the necessary parameters to execute the CreatePlatformEndpoint operation on AmazonSNS.
Returns:
A Java Future object containing the response from the CreatePlatformEndpoint service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
            throws AmazonServiceExceptionAmazonClientException {
            public CreatePlatformEndpointResult call() throws Exception {
                return createPlatformEndpoint(createPlatformEndpointRequest);
        }
    });
    }

    

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 .

Parameters:
createPlatformEndpointRequest Container for the necessary parameters to execute the CreatePlatformEndpoint operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the CreatePlatformEndpoint service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
            final CreatePlatformEndpointRequest createPlatformEndpointRequest,
            final AsyncHandler<CreatePlatformEndpointRequestCreatePlatformEndpointResultasyncHandler)
                    throws AmazonServiceExceptionAmazonClientException {
            public CreatePlatformEndpointResult call() throws Exception {
              CreatePlatformEndpointResult result;
                try {
                result = createPlatformEndpoint(createPlatformEndpointRequest);
              } catch (Exception ex) {
                  asyncHandler.onError(ex);
            throw ex;
              }
              asyncHandler.onSuccess(createPlatformEndpointRequestresult);
                 return result;
        }
    });
    }
    
    

Allows a subscription owner to set an attribute of the topic to a new value.

Parameters:
setSubscriptionAttributesRequest Container for the necessary parameters to execute the SetSubscriptionAttributes operation on AmazonSNS.
Returns:
A Java Future object containing the response from the SetSubscriptionAttributes service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
    public Future<VoidsetSubscriptionAttributesAsync(final SetSubscriptionAttributesRequest setSubscriptionAttributesRequest
            throws AmazonServiceExceptionAmazonClientException {
        return .submit(new Callable<Void>() {
            public Void call() throws Exception {
                setSubscriptionAttributes(setSubscriptionAttributesRequest);
                return null;
        }
    });
    }

    

Allows a subscription owner to set an attribute of the topic to a new value.

Parameters:
setSubscriptionAttributesRequest Container for the necessary parameters to execute the SetSubscriptionAttributes operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the SetSubscriptionAttributes service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
            final SetSubscriptionAttributesRequest setSubscriptionAttributesRequest,
            final AsyncHandler<SetSubscriptionAttributesRequestVoidasyncHandler)
                    throws AmazonServiceExceptionAmazonClientException {
        return .submit(new Callable<Void>() {
            public Void call() throws Exception {
              try {
                setSubscriptionAttributes(setSubscriptionAttributesRequest);
              } catch (Exception ex) {
                  asyncHandler.onError(ex);
            throw ex;
              }
              asyncHandler.onSuccess(setSubscriptionAttributesRequestnull);
                 return null;
        }
    });
    }
    
    

Creates 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.

Parameters:
createTopicRequest Container for the necessary parameters to execute the CreateTopic operation on AmazonSNS.
Returns:
A Java Future object containing the response from the CreateTopic service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
    public Future<CreateTopicResultcreateTopicAsync(final CreateTopicRequest createTopicRequest
            throws AmazonServiceExceptionAmazonClientException {
        return .submit(new Callable<CreateTopicResult>() {
            public CreateTopicResult call() throws Exception {
                return createTopic(createTopicRequest);
        }
    });
    }

    

Creates 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.

Parameters:
createTopicRequest Container for the necessary parameters to execute the CreateTopic operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the CreateTopic service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
            final CreateTopicRequest createTopicRequest,
            final AsyncHandler<CreateTopicRequestCreateTopicResultasyncHandler)
                    throws AmazonServiceExceptionAmazonClientException {
        return .submit(new Callable<CreateTopicResult>() {
            public CreateTopicResult call() throws Exception {
              CreateTopicResult result;
                try {
                result = createTopic(createTopicRequest);
              } catch (Exception ex) {
                  asyncHandler.onError(ex);
            throw ex;
              }
              asyncHandler.onSuccess(createTopicRequestresult);
                 return result;
        }
    });
    }
    
    

Returns all of the properties of a subscription.

Parameters:
getSubscriptionAttributesRequest Container for the necessary parameters to execute the GetSubscriptionAttributes operation on AmazonSNS.
Returns:
A Java Future object containing the response from the GetSubscriptionAttributes service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
            throws AmazonServiceExceptionAmazonClientException {
            public GetSubscriptionAttributesResult call() throws Exception {
                return getSubscriptionAttributes(getSubscriptionAttributesRequest);
        }
    });
    }

    

Returns all of the properties of a subscription.

Parameters:
getSubscriptionAttributesRequest Container for the necessary parameters to execute the GetSubscriptionAttributes operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the GetSubscriptionAttributes service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
            final GetSubscriptionAttributesRequest getSubscriptionAttributesRequest,
                    throws AmazonServiceExceptionAmazonClientException {
            public GetSubscriptionAttributesResult call() throws Exception {
              GetSubscriptionAttributesResult result;
                try {
                result = getSubscriptionAttributes(getSubscriptionAttributesRequest);
              } catch (Exception ex) {
                  asyncHandler.onError(ex);
            throw ex;
              }
              asyncHandler.onSuccess(getSubscriptionAttributesRequestresult);
                 return result;
        }
    });
    }
    
    

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.

Parameters:
listTopicsRequest Container for the necessary parameters to execute the ListTopics operation on AmazonSNS.
Returns:
A Java Future object containing the response from the ListTopics service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
    public Future<ListTopicsResultlistTopicsAsync(final ListTopicsRequest listTopicsRequest
            throws AmazonServiceExceptionAmazonClientException {
        return .submit(new Callable<ListTopicsResult>() {
            public ListTopicsResult call() throws Exception {
                return listTopics(listTopicsRequest);
        }
    });
    }

    

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.

Parameters:
listTopicsRequest Container for the necessary parameters to execute the ListTopics operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the ListTopics service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
            final ListTopicsRequest listTopicsRequest,
            final AsyncHandler<ListTopicsRequestListTopicsResultasyncHandler)
                    throws AmazonServiceExceptionAmazonClientException {
        return .submit(new Callable<ListTopicsResult>() {
            public ListTopicsResult call() throws Exception {
              ListTopicsResult result;
                try {
                result = listTopics(listTopicsRequest);
              } catch (Exception ex) {
                  asyncHandler.onError(ex);
            throw ex;
              }
              asyncHandler.onSuccess(listTopicsRequestresult);
                 return result;
        }
    });
    }
    
    

Deletes 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 .

Parameters:
deletePlatformApplicationRequest Container for the necessary parameters to execute the DeletePlatformApplication operation on AmazonSNS.
Returns:
A Java Future object containing the response from the DeletePlatformApplication service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
    public Future<VoiddeletePlatformApplicationAsync(final DeletePlatformApplicationRequest deletePlatformApplicationRequest
            throws AmazonServiceExceptionAmazonClientException {
        return .submit(new Callable<Void>() {
            public Void call() throws Exception {
                deletePlatformApplication(deletePlatformApplicationRequest);
                return null;
        }
    });
    }

    

Deletes 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 .

Parameters:
deletePlatformApplicationRequest Container for the necessary parameters to execute the DeletePlatformApplication operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the DeletePlatformApplication service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
            final DeletePlatformApplicationRequest deletePlatformApplicationRequest,
            final AsyncHandler<DeletePlatformApplicationRequestVoidasyncHandler)
                    throws AmazonServiceExceptionAmazonClientException {
        return .submit(new Callable<Void>() {
            public Void call() throws Exception {
              try {
                deletePlatformApplication(deletePlatformApplicationRequest);
              } catch (Exception ex) {
                  asyncHandler.onError(ex);
            throw ex;
              }
              asyncHandler.onSuccess(deletePlatformApplicationRequestnull);
                 return null;
        }
    });
    }
    
    

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 .

Parameters:
listPlatformApplicationsRequest Container for the necessary parameters to execute the ListPlatformApplications operation on AmazonSNS.
Returns:
A Java Future object containing the response from the ListPlatformApplications service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
            throws AmazonServiceExceptionAmazonClientException {
            public ListPlatformApplicationsResult call() throws Exception {
                return listPlatformApplications(listPlatformApplicationsRequest);
        }
    });
    }

    

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 .

Parameters:
listPlatformApplicationsRequest Container for the necessary parameters to execute the ListPlatformApplications operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the ListPlatformApplications service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
            final ListPlatformApplicationsRequest listPlatformApplicationsRequest,
                    throws AmazonServiceExceptionAmazonClientException {
            public ListPlatformApplicationsResult call() throws Exception {
              ListPlatformApplicationsResult result;
                try {
                result = listPlatformApplications(listPlatformApplicationsRequest);
              } catch (Exception ex) {
                  asyncHandler.onError(ex);
            throw ex;
              }
              asyncHandler.onSuccess(listPlatformApplicationsRequestresult);
                 return result;
        }
    });
    }
    
    

Sets 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 .

Parameters:
setEndpointAttributesRequest Container for the necessary parameters to execute the SetEndpointAttributes operation on AmazonSNS.
Returns:
A Java Future object containing the response from the SetEndpointAttributes service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
    public Future<VoidsetEndpointAttributesAsync(final SetEndpointAttributesRequest setEndpointAttributesRequest
            throws AmazonServiceExceptionAmazonClientException {
        return .submit(new Callable<Void>() {
            public Void call() throws Exception {
                setEndpointAttributes(setEndpointAttributesRequest);
                return null;
        }
    });
    }

    

Sets 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 .

Parameters:
setEndpointAttributesRequest Container for the necessary parameters to execute the SetEndpointAttributes operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the SetEndpointAttributes service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
            final SetEndpointAttributesRequest setEndpointAttributesRequest,
            final AsyncHandler<SetEndpointAttributesRequestVoidasyncHandler)
                    throws AmazonServiceExceptionAmazonClientException {
        return .submit(new Callable<Void>() {
            public Void call() throws Exception {
              try {
                setEndpointAttributes(setEndpointAttributesRequest);
              } catch (Exception ex) {
                  asyncHandler.onError(ex);
            throw ex;
              }
              asyncHandler.onSuccess(setEndpointAttributesRequestnull);
                 return null;
        }
    });
    }
    
    

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.

Parameters:
unsubscribeRequest Container for the necessary parameters to execute the Unsubscribe operation on AmazonSNS.
Returns:
A Java Future object containing the response from the Unsubscribe service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
    public Future<VoidunsubscribeAsync(final UnsubscribeRequest unsubscribeRequest
            throws AmazonServiceExceptionAmazonClientException {
        return .submit(new Callable<Void>() {
            public Void call() throws Exception {
                unsubscribe(unsubscribeRequest);
                return null;
        }
    });
    }

    

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.

Parameters:
unsubscribeRequest Container for the necessary parameters to execute the Unsubscribe operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the Unsubscribe service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
    public Future<VoidunsubscribeAsync(
            final UnsubscribeRequest unsubscribeRequest,
            final AsyncHandler<UnsubscribeRequestVoidasyncHandler)
                    throws AmazonServiceExceptionAmazonClientException {
        return .submit(new Callable<Void>() {
            public Void call() throws Exception {
              try {
                unsubscribe(unsubscribeRequest);
              } catch (Exception ex) {
                  asyncHandler.onError(ex);
            throw ex;
              }
              asyncHandler.onSuccess(unsubscribeRequestnull);
                 return null;
        }
    });
    }
    
    

Deletes 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.

Parameters:
deleteTopicRequest Container for the necessary parameters to execute the DeleteTopic operation on AmazonSNS.
Returns:
A Java Future object containing the response from the DeleteTopic service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
    public Future<VoiddeleteTopicAsync(final DeleteTopicRequest deleteTopicRequest
            throws AmazonServiceExceptionAmazonClientException {
        return .submit(new Callable<Void>() {
            public Void call() throws Exception {
                deleteTopic(deleteTopicRequest);
                return null;
        }
    });
    }

    

Deletes 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.

Parameters:
deleteTopicRequest Container for the necessary parameters to execute the DeleteTopic operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the DeleteTopic service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
    public Future<VoiddeleteTopicAsync(
            final DeleteTopicRequest deleteTopicRequest,
            final AsyncHandler<DeleteTopicRequestVoidasyncHandler)
                    throws AmazonServiceExceptionAmazonClientException {
        return .submit(new Callable<Void>() {
            public Void call() throws Exception {
              try {
                deleteTopic(deleteTopicRequest);
              } catch (Exception ex) {
                  asyncHandler.onError(ex);
            throw ex;
              }
              asyncHandler.onSuccess(deleteTopicRequestnull);
                 return null;
        }
    });
    }
    
    

Retrieves 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 .

Parameters:
getPlatformApplicationAttributesRequest Container for the necessary parameters to execute the GetPlatformApplicationAttributes operation on AmazonSNS.
Returns:
A Java Future object containing the response from the GetPlatformApplicationAttributes service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
            throws AmazonServiceExceptionAmazonClientException {
            public GetPlatformApplicationAttributesResult call() throws Exception {
                return getPlatformApplicationAttributes(getPlatformApplicationAttributesRequest);
        }
    });
    }

    

Retrieves 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 .

Parameters:
getPlatformApplicationAttributesRequest Container for the necessary parameters to execute the GetPlatformApplicationAttributes operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the GetPlatformApplicationAttributes service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
            final GetPlatformApplicationAttributesRequest getPlatformApplicationAttributesRequest,
                    throws AmazonServiceExceptionAmazonClientException {
            public GetPlatformApplicationAttributesResult call() throws Exception {
              GetPlatformApplicationAttributesResult result;
                try {
                result = getPlatformApplicationAttributes(getPlatformApplicationAttributesRequest);
              } catch (Exception ex) {
                  asyncHandler.onError(ex);
            throw ex;
              }
              asyncHandler.onSuccess(getPlatformApplicationAttributesRequestresult);
                 return result;
        }
    });
    }
    
    

Sets 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 .

Parameters:
setPlatformApplicationAttributesRequest Container for the necessary parameters to execute the SetPlatformApplicationAttributes operation on AmazonSNS.
Returns:
A Java Future object containing the response from the SetPlatformApplicationAttributes service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
    public Future<VoidsetPlatformApplicationAttributesAsync(final SetPlatformApplicationAttributesRequest setPlatformApplicationAttributesRequest
            throws AmazonServiceExceptionAmazonClientException {
        return .submit(new Callable<Void>() {
            public Void call() throws Exception {
                setPlatformApplicationAttributes(setPlatformApplicationAttributesRequest);
                return null;
        }
    });
    }

    

Sets 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 .

Parameters:
setPlatformApplicationAttributesRequest Container for the necessary parameters to execute the SetPlatformApplicationAttributes operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the SetPlatformApplicationAttributes service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
            final SetPlatformApplicationAttributesRequest setPlatformApplicationAttributesRequest,
            final AsyncHandler<SetPlatformApplicationAttributesRequestVoidasyncHandler)
                    throws AmazonServiceExceptionAmazonClientException {
        return .submit(new Callable<Void>() {
            public Void call() throws Exception {
              try {
                setPlatformApplicationAttributes(setPlatformApplicationAttributesRequest);
              } catch (Exception ex) {
                  asyncHandler.onError(ex);
            throw ex;
              }
              asyncHandler.onSuccess(setPlatformApplicationAttributesRequestnull);
                 return null;
        }
    });
    }
    
    

Adds a statement to a topic's access control policy, granting access for the specified AWS accounts to the specified actions.

Parameters:
addPermissionRequest Container for the necessary parameters to execute the AddPermission operation on AmazonSNS.
Returns:
A Java Future object containing the response from the AddPermission service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
    public Future<VoidaddPermissionAsync(final AddPermissionRequest addPermissionRequest
            throws AmazonServiceExceptionAmazonClientException {
        return .submit(new Callable<Void>() {
            public Void call() throws Exception {
                addPermission(addPermissionRequest);
                return null;
        }
    });
    }

    

Adds a statement to a topic's access control policy, granting access for the specified AWS accounts to the specified actions.

Parameters:
addPermissionRequest Container for the necessary parameters to execute the AddPermission operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the AddPermission service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
            final AddPermissionRequest addPermissionRequest,
            final AsyncHandler<AddPermissionRequestVoidasyncHandler)
                    throws AmazonServiceExceptionAmazonClientException {
        return .submit(new Callable<Void>() {
            public Void call() throws Exception {
              try {
                addPermission(addPermissionRequest);
              } catch (Exception ex) {
                  asyncHandler.onError(ex);
            throw ex;
              }
              asyncHandler.onSuccess(addPermissionRequestnull);
                 return null;
        }
    });
    }
    
    

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 .

Parameters:
listEndpointsByPlatformApplicationRequest Container for the necessary parameters to execute the ListEndpointsByPlatformApplication operation on AmazonSNS.
Returns:
A Java Future object containing the response from the ListEndpointsByPlatformApplication service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
            throws AmazonServiceExceptionAmazonClientException {
            public ListEndpointsByPlatformApplicationResult call() throws Exception {
                return listEndpointsByPlatformApplication(listEndpointsByPlatformApplicationRequest);
        }
    });
    }

    

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 .

Parameters:
listEndpointsByPlatformApplicationRequest Container for the necessary parameters to execute the ListEndpointsByPlatformApplication operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the ListEndpointsByPlatformApplication service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
            final ListEndpointsByPlatformApplicationRequest listEndpointsByPlatformApplicationRequest,
                    throws AmazonServiceExceptionAmazonClientException {
            public ListEndpointsByPlatformApplicationResult call() throws Exception {
              ListEndpointsByPlatformApplicationResult result;
                try {
                result = listEndpointsByPlatformApplication(listEndpointsByPlatformApplicationRequest);
              } catch (Exception ex) {
                  asyncHandler.onError(ex);
            throw ex;
              }
              asyncHandler.onSuccess(listEndpointsByPlatformApplicationRequestresult);
                 return result;
        }
    });
    }
    
    

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.

Parameters:
listSubscriptionsByTopicRequest Container for the necessary parameters to execute the ListSubscriptionsByTopic operation on AmazonSNS.
Returns:
A Java Future object containing the response from the ListSubscriptionsByTopic service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
            throws AmazonServiceExceptionAmazonClientException {
            public ListSubscriptionsByTopicResult call() throws Exception {
                return listSubscriptionsByTopic(listSubscriptionsByTopicRequest);
        }
    });
    }

    

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.

Parameters:
listSubscriptionsByTopicRequest Container for the necessary parameters to execute the ListSubscriptionsByTopic operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the ListSubscriptionsByTopic service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
            final ListSubscriptionsByTopicRequest listSubscriptionsByTopicRequest,
                    throws AmazonServiceExceptionAmazonClientException {
            public ListSubscriptionsByTopicResult call() throws Exception {
              ListSubscriptionsByTopicResult result;
                try {
                result = listSubscriptionsByTopic(listSubscriptionsByTopicRequest);
              } catch (Exception ex) {
                  asyncHandler.onError(ex);
            throw ex;
              }
              asyncHandler.onSuccess(listSubscriptionsByTopicRequestresult);
                 return result;
        }
    });
    }
    
    

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.

Parameters:
publishRequest Container for the necessary parameters to execute the Publish operation on AmazonSNS.
Returns:
A Java Future object containing the response from the Publish service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
    public Future<PublishResultpublishAsync(final PublishRequest publishRequest
            throws AmazonServiceExceptionAmazonClientException {
        return .submit(new Callable<PublishResult>() {
            public PublishResult call() throws Exception {
                return publish(publishRequest);
        }
    });
    }

    

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.

Parameters:
publishRequest Container for the necessary parameters to execute the Publish operation on AmazonSNS.
asyncHandler Asynchronous callback handler for events in the life-cycle of the request. Users could provide the implementation of the four callback methods in this interface to process the operation result or handle the exception.
Returns:
A Java Future object containing the response from the Publish service method, as returned by AmazonSNS.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonSNS indicating either a problem with the data in the request, or a server side issue.
            final PublishRequest publishRequest,
            final AsyncHandler<PublishRequestPublishResultasyncHandler)
                    throws AmazonServiceExceptionAmazonClientException {
        return .submit(new Callable<PublishResult>() {
            public PublishResult call() throws Exception {
              PublishResult result;
                try {
                result = publish(publishRequest);
              } catch (Exception ex) {
                  asyncHandler.onError(ex);
            throw ex;