Interface AWSDeviceFarm

All Known Subinterfaces:
AWSDeviceFarmAsync
All Known Implementing Classes:
AbstractAWSDeviceFarm, AbstractAWSDeviceFarmAsync, AWSDeviceFarmAsyncClient, AWSDeviceFarmClient

public interface AWSDeviceFarm
Interface for accessing AWS Device Farm.

AWS Device Farm is a service that enables mobile app developers to test Android, iOS, and Fire OS apps on physical phones, tablets, and other devices in the cloud.

  • Method Details

    • setEndpoint

      void setEndpoint(String endpoint)
      Overrides the default endpoint for this client ("https://devicefarm.us-west-2.amazonaws.com"). Callers can use this method to control which AWS region they want to work with.

      Callers can pass in just the endpoint (ex: "devicefarm.us-west-2.amazonaws.com") or a full URL, including the protocol (ex: "https://devicefarm.us-west-2.amazonaws.com"). If the protocol is not specified here, the default protocol from this client's ClientConfiguration will be used, which by default is HTTPS.

      For more information on using AWS regions with the AWS SDK for Java, and a complete list of all available endpoints for all AWS services, see: http://developer.amazonwebservices.com/connect/entry.jspa?externalID= 3912

      This method is not threadsafe. An endpoint should be configured when the client is created and before any service requests are made. Changing it afterwards creates inevitable race conditions for any service requests in transit or retrying.

      Parameters:
      endpoint - The endpoint (ex: "devicefarm.us-west-2.amazonaws.com") or a full URL, including the protocol (ex: "https://devicefarm.us-west-2.amazonaws.com") of the region specific AWS endpoint this client will communicate with.
    • setRegion

      void setRegion(Region region)
      An alternative to setEndpoint(String), sets the regional endpoint for this client's service calls. Callers can use this method to control which AWS region they want to work with.

      By default, all service endpoints in all regions use the https protocol. To use http instead, specify it in the ClientConfiguration supplied at construction.

      This method is not threadsafe. A region should be configured when the client is created and before any service requests are made. Changing it afterwards creates inevitable race conditions for any service requests in transit or retrying.

      Parameters:
      region - The region this client will communicate with. See Region.getRegion(com.amazonaws.regions.Regions) for accessing a given region. Must not be null and must be a region where the service is available.
      See Also:
    • createDevicePool

      CreateDevicePoolResult createDevicePool(CreateDevicePoolRequest createDevicePoolRequest)

      Creates a device pool.

      Parameters:
      createDevicePoolRequest - Represents a request to the create device pool operation.
      Returns:
      Result of the CreateDevicePool operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • createProject

      CreateProjectResult createProject(CreateProjectRequest createProjectRequest)

      Creates a new project.

      Parameters:
      createProjectRequest - Represents a request to the create project operation.
      Returns:
      Result of the CreateProject operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • createUpload

      CreateUploadResult createUpload(CreateUploadRequest createUploadRequest)

      Uploads an app or test scripts.

      Parameters:
      createUploadRequest - Represents a request to the create upload operation.
      Returns:
      Result of the CreateUpload operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • deleteDevicePool

      DeleteDevicePoolResult deleteDevicePool(DeleteDevicePoolRequest deleteDevicePoolRequest)

      Deletes a device pool given the pool ARN. Does not allow deletion of curated pools owned by the system.

      Parameters:
      deleteDevicePoolRequest - Represents a request to the delete device pool operation.
      Returns:
      Result of the DeleteDevicePool operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • deleteProject

      DeleteProjectResult deleteProject(DeleteProjectRequest deleteProjectRequest)

      Deletes an AWS Device Farm project, given the project ARN.

      Note Deleting this resource does not stop an in-progress run.

      Parameters:
      deleteProjectRequest - Represents a request to the delete project operation.
      Returns:
      Result of the DeleteProject operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • deleteRun

      DeleteRunResult deleteRun(DeleteRunRequest deleteRunRequest)

      Deletes the run, given the run ARN.

      Note Deleting this resource does not stop an in-progress run.

      Parameters:
      deleteRunRequest - Represents a request to the delete run operation.
      Returns:
      Result of the DeleteRun operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • deleteUpload

      DeleteUploadResult deleteUpload(DeleteUploadRequest deleteUploadRequest)

      Deletes an upload given the upload ARN.

      Parameters:
      deleteUploadRequest - Represents a request to the delete upload operation.
      Returns:
      Result of the DeleteUpload operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • getAccountSettings

      GetAccountSettingsResult getAccountSettings(GetAccountSettingsRequest getAccountSettingsRequest)

      Returns the number of unmetered iOS and/or unmetered Android devices that have been purchased by the account.

      Parameters:
      getAccountSettingsRequest - Represents the request sent to retrieve the account settings.
      Returns:
      Result of the GetAccountSettings operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • getDevice

      GetDeviceResult getDevice(GetDeviceRequest getDeviceRequest)

      Gets information about a unique device type.

      Parameters:
      getDeviceRequest - Represents a request to the get device request.
      Returns:
      Result of the GetDevice operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • getDevicePool

      GetDevicePoolResult getDevicePool(GetDevicePoolRequest getDevicePoolRequest)

      Gets information about a device pool.

      Parameters:
      getDevicePoolRequest - Represents a request to the get device pool operation.
      Returns:
      Result of the GetDevicePool operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • getDevicePoolCompatibility

      GetDevicePoolCompatibilityResult getDevicePoolCompatibility(GetDevicePoolCompatibilityRequest getDevicePoolCompatibilityRequest)

      Gets information about compatibility with a device pool.

      Parameters:
      getDevicePoolCompatibilityRequest - Represents a request to the get device pool compatibility operation.
      Returns:
      Result of the GetDevicePoolCompatibility operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • getJob

      GetJobResult getJob(GetJobRequest getJobRequest)

      Gets information about a job.

      Parameters:
      getJobRequest - Represents a request to the get job operation.
      Returns:
      Result of the GetJob operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • getOfferingStatus

      GetOfferingStatusResult getOfferingStatus(GetOfferingStatusRequest getOfferingStatusRequest)

      Gets the current status and future status of all offerings purchased by an AWS account. The response indicates how many offerings are currently available and the offerings that will be available in the next period. The API returns a NotEligible error if the user is not permitted to invoke the operation. Please contact aws-devicefarm-support@amazon.com if you believe that you should be able to invoke this operation.

      Parameters:
      getOfferingStatusRequest - Represents the request to retrieve the offering status for the specified customer or account.
      Returns:
      Result of the GetOfferingStatus operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      NotEligibleException - Exception gets thrown when a user is not eligible to perform the specified transaction.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • getProject

      GetProjectResult getProject(GetProjectRequest getProjectRequest)

      Gets information about a project.

      Parameters:
      getProjectRequest - Represents a request to the get project operation.
      Returns:
      Result of the GetProject operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • getRun

      GetRunResult getRun(GetRunRequest getRunRequest)

      Gets information about a run.

      Parameters:
      getRunRequest - Represents a request to the get run operation.
      Returns:
      Result of the GetRun operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • getSuite

      GetSuiteResult getSuite(GetSuiteRequest getSuiteRequest)

      Gets information about a suite.

      Parameters:
      getSuiteRequest - Represents a request to the get suite operation.
      Returns:
      Result of the GetSuite operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • getTest

      GetTestResult getTest(GetTestRequest getTestRequest)

      Gets information about a test.

      Parameters:
      getTestRequest - Represents a request to the get test operation.
      Returns:
      Result of the GetTest operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • getUpload

      GetUploadResult getUpload(GetUploadRequest getUploadRequest)

      Gets information about an upload.

      Parameters:
      getUploadRequest - Represents a request to the get upload operation.
      Returns:
      Result of the GetUpload operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • listArtifacts

      ListArtifactsResult listArtifacts(ListArtifactsRequest listArtifactsRequest)

      Gets information about artifacts.

      Parameters:
      listArtifactsRequest - Represents a request to the list artifacts operation.
      Returns:
      Result of the ListArtifacts operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • listDevicePools

      ListDevicePoolsResult listDevicePools(ListDevicePoolsRequest listDevicePoolsRequest)

      Gets information about device pools.

      Parameters:
      listDevicePoolsRequest - Represents the result of a list device pools request.
      Returns:
      Result of the ListDevicePools operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • listDevices

      ListDevicesResult listDevices(ListDevicesRequest listDevicesRequest)

      Gets information about unique device types.

      Parameters:
      listDevicesRequest - Represents the result of a list devices request.
      Returns:
      Result of the ListDevices operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • listJobs

      ListJobsResult listJobs(ListJobsRequest listJobsRequest)

      Gets information about jobs.

      Parameters:
      listJobsRequest - Represents a request to the list jobs operation.
      Returns:
      Result of the ListJobs operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • listOfferingTransactions

      ListOfferingTransactionsResult listOfferingTransactions(ListOfferingTransactionsRequest listOfferingTransactionsRequest)

      Returns a list of all historical purchases, renewals, and system renewal transactions for an AWS account. The list is paginated and ordered by a descending timestamp (most recent transactions are first). The API returns a NotEligible error if the user is not permitted to invoke the operation. Please contact aws-devicefarm-support@amazon.com if you believe that you should be able to invoke this operation.

      Parameters:
      listOfferingTransactionsRequest - Represents the request to list the offering transaction history.
      Returns:
      Result of the ListOfferingTransactions operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      NotEligibleException - Exception gets thrown when a user is not eligible to perform the specified transaction.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • listOfferings

      ListOfferingsResult listOfferings(ListOfferingsRequest listOfferingsRequest)

      Returns a list of products or offerings that the user can manage through the API. Each offering record indicates the recurring price per unit and the frequency for that offering. The API returns a NotEligible error if the user is not permitted to invoke the operation. Please contact aws-devicefarm-support@amazon.com if you believe that you should be able to invoke this operation.

      Parameters:
      listOfferingsRequest - Represents the request to list all offerings.
      Returns:
      Result of the ListOfferings operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      NotEligibleException - Exception gets thrown when a user is not eligible to perform the specified transaction.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • listProjects

      ListProjectsResult listProjects(ListProjectsRequest listProjectsRequest)

      Gets information about projects.

      Parameters:
      listProjectsRequest - Represents a request to the list projects operation.
      Returns:
      Result of the ListProjects operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • listRuns

      ListRunsResult listRuns(ListRunsRequest listRunsRequest)

      Gets information about runs.

      Parameters:
      listRunsRequest - Represents a request to the list runs operation.
      Returns:
      Result of the ListRuns operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • listSamples

      ListSamplesResult listSamples(ListSamplesRequest listSamplesRequest)

      Gets information about samples.

      Parameters:
      listSamplesRequest - Represents a request to the list samples operation.
      Returns:
      Result of the ListSamples operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • listSuites

      ListSuitesResult listSuites(ListSuitesRequest listSuitesRequest)

      Gets information about suites.

      Parameters:
      listSuitesRequest - Represents a request to the list suites operation.
      Returns:
      Result of the ListSuites operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • listTests

      ListTestsResult listTests(ListTestsRequest listTestsRequest)

      Gets information about tests.

      Parameters:
      listTestsRequest - Represents a request to the list tests operation.
      Returns:
      Result of the ListTests operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • listUniqueProblems

      ListUniqueProblemsResult listUniqueProblems(ListUniqueProblemsRequest listUniqueProblemsRequest)

      Gets information about unique problems.

      Parameters:
      listUniqueProblemsRequest - Represents a request to the list unique problems operation.
      Returns:
      Result of the ListUniqueProblems operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • listUploads

      ListUploadsResult listUploads(ListUploadsRequest listUploadsRequest)

      Gets information about uploads.

      Parameters:
      listUploadsRequest - Represents a request to the list uploads operation.
      Returns:
      Result of the ListUploads operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • purchaseOffering

      PurchaseOfferingResult purchaseOffering(PurchaseOfferingRequest purchaseOfferingRequest)

      Immediately purchases offerings for an AWS account. Offerings renew with the latest total purchased quantity for an offering, unless the renewal was overridden. The API returns a NotEligible error if the user is not permitted to invoke the operation. Please contact aws-devicefarm-support@amazon.com if you believe that you should be able to invoke this operation.

      Parameters:
      purchaseOfferingRequest - Represents a request for a purchase offering.
      Returns:
      Result of the PurchaseOffering operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      NotEligibleException - Exception gets thrown when a user is not eligible to perform the specified transaction.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • renewOffering

      RenewOfferingResult renewOffering(RenewOfferingRequest renewOfferingRequest)

      Explicitly sets the quantity of devices to renew for an offering, starting from the effectiveDate of the next period. The API returns a NotEligible error if the user is not permitted to invoke the operation. Please contact aws-devicefarm-support@amazon.com if you believe that you should be able to invoke this operation.

      Parameters:
      renewOfferingRequest - A request representing an offering renewal.
      Returns:
      Result of the RenewOffering operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      NotEligibleException - Exception gets thrown when a user is not eligible to perform the specified transaction.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • scheduleRun

      ScheduleRunResult scheduleRun(ScheduleRunRequest scheduleRunRequest)

      Schedules a run.

      Parameters:
      scheduleRunRequest - Represents a request to the schedule run operation.
      Returns:
      Result of the ScheduleRun operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      IdempotencyException - An entity with the same name already exists.
      ServiceAccountException - There was a problem with the service account.
    • stopRun

      StopRunResult stopRun(StopRunRequest stopRunRequest)

      Initiates a stop request for the current test run. AWS Device Farm will immediately stop the run on devices where tests have not started executing, and you will not be billed for these devices. On devices where tests have started executing, Setup Suite and Teardown Suite tests will run to completion before stopping execution on those devices. You will be billed for Setup, Teardown, and any tests that were in progress or already completed.

      Parameters:
      stopRunRequest - Represents the request to stop a specific run.
      Returns:
      Result of the StopRun operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • updateDevicePool

      UpdateDevicePoolResult updateDevicePool(UpdateDevicePoolRequest updateDevicePoolRequest)

      Modifies the name, description, and rules in a device pool given the attributes and the pool ARN. Rule updates are all-or-nothing, meaning they can only be updated as a whole (or not at all).

      Parameters:
      updateDevicePoolRequest - Represents a request to the update device pool operation.
      Returns:
      Result of the UpdateDevicePool operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • updateProject

      UpdateProjectResult updateProject(UpdateProjectRequest updateProjectRequest)

      Modifies the specified project name, given the project ARN and a new name.

      Parameters:
      updateProjectRequest - Represents a request to the update project operation.
      Returns:
      Result of the UpdateProject operation returned by the service.
      Throws:
      ArgumentException - An invalid argument was specified.
      NotFoundException - The specified entity was not found.
      LimitExceededException - A limit was exceeded.
      ServiceAccountException - There was a problem with the service account.
    • shutdown

      void shutdown()
      Shuts down this client object, releasing any resources that might be held open. This is an optional method, and callers are not expected to call it, but can if they want to explicitly release any open resources. Once a client has been shutdown, it should not be used to make any more requests.
    • getCachedResponseMetadata

      ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request)
      Returns additional metadata for a previously executed successful request, typically used for debugging issues where a service isn't acting as expected. 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 a request.

      Parameters:
      request - The originally executed request.
      Returns:
      The response metadata for the specified request, or null if none is available.