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.importexport;
 
 import org.w3c.dom.*;
 
 import java.net.*;
 import java.util.*;
 
 
 
Client for accessing AWS Import/Export. All service calls made using this client are blocking, and will not return until the service call completes.

<fullname>AWS Import/Export Service</fullname> AWS Import/Export accelerates transferring large amounts of data between the AWS cloud and portable storage devices that you mail to us. AWS Import/Export transfers data directly onto and off of your storage devices using Amazon's high-speed internal network and bypassing the Internet. For large data sets, AWS Import/Export is often faster than Internet transfer and more cost effective than upgrading your connectivity.

 
 public class AmazonImportExportClient extends AmazonWebServiceClient implements
         AmazonImportExport {
    
Provider for AWS credentials.
 
 
     private static final Log log = LogFactory.getLog(AmazonImportExport.class);

    
List of exception unmarshallers for all AWS Import/Export exceptions.
 
Constructs a new client to invoke service methods on AWS Import/Export. 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 AmazonImportExportClient() {
         this(new DefaultAWSCredentialsProviderChain(),
                 new ClientConfiguration());
     }

    
Constructs a new client to invoke service methods on AWS Import/Export. 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 AWS Import/Export (ex: proxy settings, retry counts, etc.).
See also:
com.amazonaws.auth.DefaultAWSCredentialsProviderChain
    public AmazonImportExportClient(ClientConfiguration clientConfiguration) {
        this(new DefaultAWSCredentialsProviderChain(), clientConfiguration);
    }

    
Constructs a new client to invoke service methods on AWS Import/Export using the specified AWS account credentials.

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

Parameters:
awsCredentials The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.
    public AmazonImportExportClient(AWSCredentials awsCredentials) {
        this(awsCredentialsnew ClientConfiguration());
    }

    
Constructs a new client to invoke service methods on AWS Import/Export using the specified AWS account credentials and client configuration options.

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

Parameters:
awsCredentials The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.
clientConfiguration The client configuration options controlling how this client connects to AWS Import/Export (ex: proxy settings, retry counts, etc.).
    public AmazonImportExportClient(AWSCredentials awsCredentials,
            ClientConfiguration clientConfiguration) {
        super(clientConfiguration);
                awsCredentials);
        init();
    }

    
Constructs a new client to invoke service methods on AWS Import/Export using the specified AWS account credentials provider.

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

Parameters:
awsCredentialsProvider The AWS credentials provider which will provide credentials to authenticate requests with AWS services.
            AWSCredentialsProvider awsCredentialsProvider) {
        this(awsCredentialsProvidernew ClientConfiguration());
    }

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

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

Parameters:
awsCredentialsProvider The AWS credentials provider which will provide credentials to authenticate requests with AWS services.
clientConfiguration The client configuration options controlling how this client connects to AWS Import/Export (ex: proxy settings, retry counts, etc.).
            AWSCredentialsProvider awsCredentialsProvider,
            ClientConfiguration clientConfiguration) {
        this(awsCredentialsProviderclientConfigurationnull);
    }

    
Constructs a new client to invoke service methods on AWS Import/Export using the specified AWS account credentials provider, client configuration options, and request metric collector.

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

Parameters:
awsCredentialsProvider The AWS credentials provider which will provide credentials to authenticate requests with AWS services.
clientConfiguration The client configuration options controlling how this client connects to AWS Import/Export (ex: proxy settings, retry counts, etc.).
requestMetricCollector optional request metric collector
            AWSCredentialsProvider awsCredentialsProvider,
            ClientConfiguration clientConfiguration,
            RequestMetricCollector requestMetricCollector) {
        super(adjustClientConfiguration(clientConfiguration),
                requestMetricCollector);
        this. = awsCredentialsProvider;
        init();
    }
    private void init() {
                .add(new InvalidManifestFieldExceptionUnmarshaller());
                .add(new MissingManifestFieldExceptionUnmarshaller());
                .add(new MalformedManifestExceptionUnmarshaller());
                .add(new InvalidFileSystemExceptionUnmarshaller());
                .add(new UnableToCancelJobIdExceptionUnmarshaller());
                .add(new UnableToUpdateJobIdExceptionUnmarshaller());
                .add(new InvalidAccessKeyIdExceptionUnmarshaller());
                .add(new CreateJobQuotaExceededExceptionUnmarshaller());
        // calling this.setEndPoint(...) will also modify the signer accordingly
        this.setEndpoint("https://importexport.amazonaws.com");
        HandlerChainFactory chainFactory = new HandlerChainFactory();
        
                .addAll(chainFactory
                        .newRequestHandlerChain("/com/amazonaws/services/importexport/request.handlers"));
        
                .addAll(chainFactory
                        .newRequestHandler2Chain("/com/amazonaws/services/importexport/request.handler2s"));
    }
            ClientConfiguration orig) {
        ClientConfiguration config = orig;
        return config;
    }

    
This operation cancels a specified job. Only the job owner can cancel it. The operation fails if the job has already started or is complete.

Parameters:
cancelJobRequest Input structure for the CancelJob operation.
Returns:
Result of the CancelJob operation returned by the service.
Throws:
com.amazonaws.services.importexport.model.InvalidJobIdException The JOBID was missing, not found, or not associated with the AWS account.
com.amazonaws.services.importexport.model.ExpiredJobIdException Indicates that the specified job has expired out of the system.
com.amazonaws.services.importexport.model.CanceledJobIdException The specified job ID has been canceled and is no longer valid.
com.amazonaws.services.importexport.model.UnableToCancelJobIdException AWS Import/Export cannot cancel the job
com.amazonaws.services.importexport.model.InvalidAccessKeyIdException The AWS Access Key ID specified in the request did not match the manifest's accessKeyId value. The manifest and the request authentication must use the same AWS Access Key ID.
com.amazonaws.services.importexport.model.InvalidVersionException The client tool version is invalid.
    @Override
    public CancelJobResult cancelJob(CancelJobRequest cancelJobRequest) {
        ExecutionContext executionContext = createExecutionContext(cancelJobRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext
                .getAwsRequestMetrics();
        awsRequestMetrics.startEvent(.);
        Request<CancelJobRequestrequest = null;
        Response<CancelJobResultresponse = null;
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new CancelJobRequestMarshaller()
                        .marshall(cancelJobRequest);
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
            } finally {
                awsRequestMetrics.endEvent(.);
            }
            response = invoke(requestnew CancelJobResultStaxUnmarshaller(),
                    executionContext);
            return response.getAwsResponse();
        } finally {
            endClientExecution(awsRequestMetricsrequestresponse);
        }
    }

    
This operation initiates the process of scheduling an upload or download of your data. You include in the request a manifest that describes the data transfer specifics. The response to the request includes a job ID, which you can use in other operations, a signature that you use to identify your storage device, and the address where you should ship your storage device.

Parameters:
createJobRequest Input structure for the CreateJob operation.
Returns:
Result of the CreateJob operation returned by the service.
Throws:
com.amazonaws.services.importexport.model.MissingParameterException One or more required parameters was missing from the request.
com.amazonaws.services.importexport.model.InvalidParameterException One or more parameters had an invalid value.
com.amazonaws.services.importexport.model.InvalidAccessKeyIdException The AWS Access Key ID specified in the request did not match the manifest's accessKeyId value. The manifest and the request authentication must use the same AWS Access Key ID.
com.amazonaws.services.importexport.model.InvalidAddressException The address specified in the manifest is invalid.
com.amazonaws.services.importexport.model.InvalidManifestFieldException One or more manifest fields was invalid. Please correct and resubmit.
com.amazonaws.services.importexport.model.MissingManifestFieldException One or more required fields were missing from the manifest file. Please correct and resubmit.
com.amazonaws.services.importexport.model.NoSuchBucketException The specified bucket does not exist. Create the specified bucket or change the manifest's bucket, exportBucket, or logBucket field to a bucket that the account, as specified by the manifest's Access Key ID, has write permissions to.
com.amazonaws.services.importexport.model.MissingCustomsException One or more required customs parameters was missing from the manifest.
com.amazonaws.services.importexport.model.InvalidCustomsException One or more customs parameters was invalid. Please correct and resubmit.
com.amazonaws.services.importexport.model.InvalidFileSystemException File system specified in export manifest is invalid.
com.amazonaws.services.importexport.model.MultipleRegionsException Your manifest file contained buckets from multiple regions. A job is restricted to buckets from one region. Please correct and resubmit.
com.amazonaws.services.importexport.model.BucketPermissionException The account specified does not have the appropriate bucket permissions.
com.amazonaws.services.importexport.model.MalformedManifestException Your manifest is not well-formed.
com.amazonaws.services.importexport.model.CreateJobQuotaExceededException Each account can create only a certain number of jobs per day. If you need to create more than this, please contact awsimportexport@amazon.com to explain your particular use case.
com.amazonaws.services.importexport.model.InvalidJobIdException The JOBID was missing, not found, or not associated with the AWS account.
com.amazonaws.services.importexport.model.InvalidVersionException The client tool version is invalid.
    @Override
    public CreateJobResult createJob(CreateJobRequest createJobRequest) {
        ExecutionContext executionContext = createExecutionContext(createJobRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext
                .getAwsRequestMetrics();
        awsRequestMetrics.startEvent(.);
        Request<CreateJobRequestrequest = null;
        Response<CreateJobResultresponse = null;
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new CreateJobRequestMarshaller()
                        .marshall(createJobRequest);
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
            } finally {
                awsRequestMetrics.endEvent(.);
            }
            response = invoke(requestnew CreateJobResultStaxUnmarshaller(),
                    executionContext);
            return response.getAwsResponse();
        } finally {
            endClientExecution(awsRequestMetricsrequestresponse);
        }
    }

    
This operation generates a pre-paid UPS shipping label that you will use to ship your device to AWS for processing.

Parameters:
getShippingLabelRequest null
Returns:
Result of the GetShippingLabel operation returned by the service.
Throws:
com.amazonaws.services.importexport.model.InvalidJobIdException The JOBID was missing, not found, or not associated with the AWS account.
com.amazonaws.services.importexport.model.ExpiredJobIdException Indicates that the specified job has expired out of the system.
com.amazonaws.services.importexport.model.CanceledJobIdException The specified job ID has been canceled and is no longer valid.
com.amazonaws.services.importexport.model.InvalidAccessKeyIdException The AWS Access Key ID specified in the request did not match the manifest's accessKeyId value. The manifest and the request authentication must use the same AWS Access Key ID.
com.amazonaws.services.importexport.model.InvalidAddressException The address specified in the manifest is invalid.
com.amazonaws.services.importexport.model.InvalidVersionException The client tool version is invalid.
com.amazonaws.services.importexport.model.InvalidParameterException One or more parameters had an invalid value.
    @Override
            GetShippingLabelRequest getShippingLabelRequest) {
        ExecutionContext executionContext = createExecutionContext(getShippingLabelRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext
                .getAwsRequestMetrics();
        awsRequestMetrics.startEvent(.);
        Request<GetShippingLabelRequestrequest = null;
        Response<GetShippingLabelResultresponse = null;
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new GetShippingLabelRequestMarshaller()
                        .marshall(getShippingLabelRequest);
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
            } finally {
                awsRequestMetrics.endEvent(.);
            }
            response = invoke(request,
                    new GetShippingLabelResultStaxUnmarshaller(),
                    executionContext);
            return response.getAwsResponse();
        } finally {
            endClientExecution(awsRequestMetricsrequestresponse);
        }
    }

    
This operation returns information about a job, including where the job is in the processing pipeline, the status of the results, and the signature value associated with the job. You can only return information about jobs you own.

Parameters:
getStatusRequest Input structure for the GetStatus operation.
Returns:
Result of the GetStatus operation returned by the service.
Throws:
com.amazonaws.services.importexport.model.InvalidJobIdException The JOBID was missing, not found, or not associated with the AWS account.
com.amazonaws.services.importexport.model.ExpiredJobIdException Indicates that the specified job has expired out of the system.
com.amazonaws.services.importexport.model.CanceledJobIdException The specified job ID has been canceled and is no longer valid.
com.amazonaws.services.importexport.model.InvalidAccessKeyIdException The AWS Access Key ID specified in the request did not match the manifest's accessKeyId value. The manifest and the request authentication must use the same AWS Access Key ID.
com.amazonaws.services.importexport.model.InvalidVersionException The client tool version is invalid.
    @Override
    public GetStatusResult getStatus(GetStatusRequest getStatusRequest) {
        ExecutionContext executionContext = createExecutionContext(getStatusRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext
                .getAwsRequestMetrics();
        awsRequestMetrics.startEvent(.);
        Request<GetStatusRequestrequest = null;
        Response<GetStatusResultresponse = null;
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new GetStatusRequestMarshaller()
                        .marshall(getStatusRequest);
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
            } finally {
                awsRequestMetrics.endEvent(.);
            }
            response = invoke(requestnew GetStatusResultStaxUnmarshaller(),
                    executionContext);
            return response.getAwsResponse();
        } finally {
            endClientExecution(awsRequestMetricsrequestresponse);
        }
    }

    
This operation returns the jobs associated with the requester. AWS Import/Export lists the jobs in reverse chronological order based on the date of creation. For example if Job Test1 was created 2009Dec30 and Test2 was created 2010Feb05, the ListJobs operation would return Test2 followed by Test1.

Parameters:
listJobsRequest Input structure for the ListJobs operation.
Returns:
Result of the ListJobs operation returned by the service.
Throws:
com.amazonaws.services.importexport.model.InvalidParameterException One or more parameters had an invalid value.
com.amazonaws.services.importexport.model.InvalidAccessKeyIdException The AWS Access Key ID specified in the request did not match the manifest's accessKeyId value. The manifest and the request authentication must use the same AWS Access Key ID.
com.amazonaws.services.importexport.model.InvalidVersionException The client tool version is invalid.
    @Override
    public ListJobsResult listJobs(ListJobsRequest listJobsRequest) {
        ExecutionContext executionContext = createExecutionContext(listJobsRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext
                .getAwsRequestMetrics();
        awsRequestMetrics.startEvent(.);
        Request<ListJobsRequestrequest = null;
        Response<ListJobsResultresponse = null;
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new ListJobsRequestMarshaller()
                        .marshall(listJobsRequest);
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
            } finally {
                awsRequestMetrics.endEvent(.);
            }
            response = invoke(requestnew ListJobsResultStaxUnmarshaller(),
                    executionContext);
            return response.getAwsResponse();
        } finally {
            endClientExecution(awsRequestMetricsrequestresponse);
        }
    }
    @Override
    public ListJobsResult listJobs() {
        return listJobs(new ListJobsRequest());
    }

    
You use this operation to change the parameters specified in the original manifest file by supplying a new manifest file. The manifest file attached to this request replaces the original manifest file. You can only use the operation after a CreateJob request but before the data transfer starts and you can only use it on jobs you own.

Parameters:
updateJobRequest Input structure for the UpateJob operation.
Returns:
Result of the UpdateJob operation returned by the service.
Throws:
com.amazonaws.services.importexport.model.MissingParameterException One or more required parameters was missing from the request.
com.amazonaws.services.importexport.model.InvalidParameterException One or more parameters had an invalid value.
com.amazonaws.services.importexport.model.InvalidAccessKeyIdException The AWS Access Key ID specified in the request did not match the manifest's accessKeyId value. The manifest and the request authentication must use the same AWS Access Key ID.
com.amazonaws.services.importexport.model.InvalidAddressException The address specified in the manifest is invalid.
com.amazonaws.services.importexport.model.InvalidManifestFieldException One or more manifest fields was invalid. Please correct and resubmit.
com.amazonaws.services.importexport.model.InvalidJobIdException The JOBID was missing, not found, or not associated with the AWS account.
com.amazonaws.services.importexport.model.MissingManifestFieldException One or more required fields were missing from the manifest file. Please correct and resubmit.
com.amazonaws.services.importexport.model.NoSuchBucketException The specified bucket does not exist. Create the specified bucket or change the manifest's bucket, exportBucket, or logBucket field to a bucket that the account, as specified by the manifest's Access Key ID, has write permissions to.
com.amazonaws.services.importexport.model.ExpiredJobIdException Indicates that the specified job has expired out of the system.
com.amazonaws.services.importexport.model.CanceledJobIdException The specified job ID has been canceled and is no longer valid.
com.amazonaws.services.importexport.model.MissingCustomsException One or more required customs parameters was missing from the manifest.
com.amazonaws.services.importexport.model.InvalidCustomsException One or more customs parameters was invalid. Please correct and resubmit.
com.amazonaws.services.importexport.model.InvalidFileSystemException File system specified in export manifest is invalid.
com.amazonaws.services.importexport.model.MultipleRegionsException Your manifest file contained buckets from multiple regions. A job is restricted to buckets from one region. Please correct and resubmit.
com.amazonaws.services.importexport.model.BucketPermissionException The account specified does not have the appropriate bucket permissions.
com.amazonaws.services.importexport.model.MalformedManifestException Your manifest is not well-formed.
com.amazonaws.services.importexport.model.UnableToUpdateJobIdException AWS Import/Export cannot update the job
com.amazonaws.services.importexport.model.InvalidVersionException The client tool version is invalid.
    @Override
    public UpdateJobResult updateJob(UpdateJobRequest updateJobRequest) {
        ExecutionContext executionContext = createExecutionContext(updateJobRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext
                .getAwsRequestMetrics();
        awsRequestMetrics.startEvent(.);
        Request<UpdateJobRequestrequest = null;
        Response<UpdateJobResultresponse = null;
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new UpdateJobRequestMarshaller()
                        .marshall(updateJobRequest);
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
            } finally {
                awsRequestMetrics.endEvent(.);
            }
            response = invoke(requestnew UpdateJobResultStaxUnmarshaller(),
                    executionContext);
            return response.getAwsResponse();
        } finally {
            endClientExecution(awsRequestMetricsrequestresponse);
        }
    }

    
Returns additional metadata for a previously executed successful, request, typically used for debugging issues where a service isn't acting as expected. This data isn't considered part of the result data returned by an operation, so it's available through this separate, diagnostic interface.

Response 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 the request.

Parameters:
request The originally executed request
Returns:
The response metadata for the specified request, or null if none is available.
            AmazonWebServiceRequest request) {
        return .getResponseMetadataForRequest(request);
    }
    private <X, Y extends AmazonWebServiceRequestResponse<X> invoke(
            Request<Y> request,
            Unmarshaller<X, StaxUnmarshallerContextunmarshaller,
            ExecutionContext executionContext) {
        request.setEndpoint();
        request.setTimeOffset();
        AWSRequestMetrics awsRequestMetrics = executionContext
                .getAwsRequestMetrics();
        AWSCredentials credentials;
        awsRequestMetrics.startEvent(.);
        try {
            credentials = .getCredentials();
        } finally {
            awsRequestMetrics.endEvent(.);
        }
        AmazonWebServiceRequest originalRequest = request.getOriginalRequest();
        if (originalRequest != null
                && originalRequest.getRequestCredentials() != null) {
            credentials = originalRequest.getRequestCredentials();
        }
        executionContext.setCredentials(credentials);
        StaxResponseHandler<X> responseHandler = new StaxResponseHandler<X>(
                unmarshaller);
        DefaultErrorResponseHandler errorResponseHandler = new DefaultErrorResponseHandler(
                );
        return .execute(requestresponseHandlererrorResponseHandler,
                executionContext);
    }
New to GrepCode? Check out our FAQ X