com.amazonaws.services.servermigration

## Class AbstractAWSServerMigration

- java.lang.Object
- - com.amazonaws.services.servermigration.AbstractAWSServerMigration

All Implemented Interfaces:
  AWSServerMigration

Direct Known Subclasses:
  AbstractAWSServerMigrationAsync

    public class AbstractAWSServerMigration
    extends Object
    implements AWSServerMigration

Abstract implementation of `AWSServerMigration`. Convenient method forms pass through to the corresponding overload that takes a request object, which throws an `UnsupportedOperationException`.

### Field Summary

### Fields inherited from interface com.amazonaws.services.servermigration.AWSServerMigration

`ENDPOINT_PREFIX`

### Constructor Summary

Constructors
`protected` `AbstractAWSServerMigration()`

### Method Summary

All Methods Instance Methods Concrete Methods
`CreateReplicationJobResult` `createReplicationJob(CreateReplicationJobRequest request)` The CreateReplicationJob API is used to create a ReplicationJob to replicate a server on AWS.
`DeleteReplicationJobResult` `deleteReplicationJob(DeleteReplicationJobRequest request)` The DeleteReplicationJob API is used to delete a ReplicationJob, resulting in no further ReplicationRuns.
`DeleteServerCatalogResult` `deleteServerCatalog(DeleteServerCatalogRequest request)` The DeleteServerCatalog API clears all servers from your server catalog.
`DisassociateConnectorResult` `disassociateConnector(DisassociateConnectorRequest request)` The DisassociateConnector API will disassociate a connector from the Server Migration Service, rendering it unavailable to support replication jobs.
`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.
`GetConnectorsResult` `getConnectors(GetConnectorsRequest request)` The GetConnectors API returns a list of connectors that are registered with the Server Migration Service.
`GetReplicationJobsResult` `getReplicationJobs(GetReplicationJobsRequest request)` The GetReplicationJobs API will return all of your ReplicationJobs and their details.
`GetReplicationRunsResult` `getReplicationRuns(GetReplicationRunsRequest request)` The GetReplicationRuns API will return all ReplicationRuns for a given ReplicationJob.
`GetServersResult` `getServers(GetServersRequest request)` The GetServers API returns a list of all servers in your server catalog.
`ImportServerCatalogResult` `importServerCatalog(ImportServerCatalogRequest request)` The ImportServerCatalog API is used to gather the complete list of on-premises servers on your premises.
`void` `setEndpoint(String endpoint)` Overrides the default endpoint for this client ("sms.us-east-1.amazonaws.com").
`void` `setRegion(Region region)` An alternative to `AWSServerMigration.setEndpoint(String)`, sets the regional endpoint for this client's service calls.
`void` `shutdown()` Shuts down this client object, releasing any resources that might be held open.
`StartOnDemandReplicationRunResult` `startOnDemandReplicationRun(StartOnDemandReplicationRunRequest request)` The StartOnDemandReplicationRun API is used to start a ReplicationRun on demand (in addition to those that are scheduled based on your frequency).
`UpdateReplicationJobResult` `updateReplicationJob(UpdateReplicationJobRequest request)` The UpdateReplicationJob API is used to change the settings of your existing ReplicationJob created using CreateReplicationJob.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### AbstractAWSServerMigration

    protected AbstractAWSServerMigration()

### Method Detail

#### setEndpoint

    public void setEndpoint(String endpoint)

Description copied from interface: `AWSServerMigration`
Overrides the default endpoint for this client ("sms.us-east-1.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: "sms.us-east-1.amazonaws.com") or a full URL, including the protocol (ex: "sms.us-east-1.amazonaws.com"). If the protocol is not specified here, the default protocol from this client's `ClientConfiguration` will be used, which by default is HTTPS.

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

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

Specified by:
  `setEndpoint` in interface `AWSServerMigration`
Parameters:
  `endpoint` - The endpoint (ex: "sms.us-east-1.amazonaws.com") or a full URL, including the protocol (ex: "sms.us-east-1.amazonaws.com") of the region specific AWS endpoint this client will communicate with.

#### setRegion

    public void setRegion(Region region)

Description copied from interface: `AWSServerMigration`
An alternative to `AWSServerMigration.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.

Specified by:
  `setRegion` in interface `AWSServerMigration`
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:
  `Region.getRegion(com.amazonaws.regions.Regions)`, `Region.createClient(Class, com.amazonaws.auth.AWSCredentialsProvider, ClientConfiguration)`, `Region.isServiceSupported(String)`

#### createReplicationJob

    public CreateReplicationJobResult createReplicationJob(CreateReplicationJobRequest request)

Description copied from interface: `AWSServerMigration`
The CreateReplicationJob API is used to create a ReplicationJob to replicate a server on AWS. Call this API to first create a ReplicationJob, which will then schedule periodic ReplicationRuns to replicate your server to AWS. Each ReplicationRun will result in the creation of an AWS AMI.

Specified by:
  `createReplicationJob` in interface `AWSServerMigration`
Returns:
  Result of the CreateReplicationJob operation returned by the service.

#### deleteReplicationJob

    public DeleteReplicationJobResult deleteReplicationJob(DeleteReplicationJobRequest request)

Description copied from interface: `AWSServerMigration`
The DeleteReplicationJob API is used to delete a ReplicationJob, resulting in no further ReplicationRuns. This will delete the contents of the S3 bucket used to store SMS artifacts, but will not delete any AMIs created by the SMS service.

Specified by:
  `deleteReplicationJob` in interface `AWSServerMigration`
Returns:
  Result of the DeleteReplicationJob operation returned by the service.

#### deleteServerCatalog

    public DeleteServerCatalogResult deleteServerCatalog(DeleteServerCatalogRequest request)

Description copied from interface: `AWSServerMigration`
The DeleteServerCatalog API clears all servers from your server catalog. This means that these servers will no longer be accessible to the Server Migration Service.

Specified by:
  `deleteServerCatalog` in interface `AWSServerMigration`
Returns:
  Result of the DeleteServerCatalog operation returned by the service.

#### disassociateConnector

    public DisassociateConnectorResult disassociateConnector(DisassociateConnectorRequest request)

Description copied from interface: `AWSServerMigration`
The DisassociateConnector API will disassociate a connector from the Server Migration Service, rendering it unavailable to support replication jobs.

Specified by:
  `disassociateConnector` in interface `AWSServerMigration`
Returns:
  Result of the DisassociateConnector operation returned by the service.

#### getConnectors

    public GetConnectorsResult getConnectors(GetConnectorsRequest request)

Description copied from interface: `AWSServerMigration`
The GetConnectors API returns a list of connectors that are registered with the Server Migration Service.

Specified by:
  `getConnectors` in interface `AWSServerMigration`
Returns:
  Result of the GetConnectors operation returned by the service.

#### getReplicationJobs

    public GetReplicationJobsResult getReplicationJobs(GetReplicationJobsRequest request)

Description copied from interface: `AWSServerMigration`
The GetReplicationJobs API will return all of your ReplicationJobs and their details. This API returns a paginated list, that may be consecutively called with nextToken to retrieve all ReplicationJobs.

Specified by:
  `getReplicationJobs` in interface `AWSServerMigration`
Returns:
  Result of the GetReplicationJobs operation returned by the service.

#### getReplicationRuns

    public GetReplicationRunsResult getReplicationRuns(GetReplicationRunsRequest request)

Description copied from interface: `AWSServerMigration`
The GetReplicationRuns API will return all ReplicationRuns for a given ReplicationJob. This API returns a paginated list, that may be consecutively called with nextToken to retrieve all ReplicationRuns for a ReplicationJob.

Specified by:
  `getReplicationRuns` in interface `AWSServerMigration`
Returns:
  Result of the GetReplicationRuns operation returned by the service.

#### getServers

    public GetServersResult getServers(GetServersRequest request)

Description copied from interface: `AWSServerMigration`
The GetServers API returns a list of all servers in your server catalog. For this call to succeed, you must previously have called ImportServerCatalog.

Specified by:
  `getServers` in interface `AWSServerMigration`
Returns:
  Result of the GetServers operation returned by the service.

#### importServerCatalog

    public ImportServerCatalogResult importServerCatalog(ImportServerCatalogRequest request)

Description copied from interface: `AWSServerMigration`
The ImportServerCatalog API is used to gather the complete list of on-premises servers on your premises. This API call requires connectors to be installed and monitoring all servers you would like imported. This API call returns immediately, but may take some time to retrieve all of the servers.

Specified by:
  `importServerCatalog` in interface `AWSServerMigration`
Returns:
  Result of the ImportServerCatalog operation returned by the service.

#### startOnDemandReplicationRun

    public StartOnDemandReplicationRunResult startOnDemandReplicationRun(StartOnDemandReplicationRunRequest request)

Description copied from interface: `AWSServerMigration`
The StartOnDemandReplicationRun API is used to start a ReplicationRun on demand (in addition to those that are scheduled based on your frequency). This ReplicationRun will start immediately. StartOnDemandReplicationRun is subject to limits on how many on demand ReplicationRuns you may call per 24-hour period.

Specified by:
  `startOnDemandReplicationRun` in interface `AWSServerMigration`
Returns:
  Result of the StartOnDemandReplicationRun operation returned by the service.

#### updateReplicationJob

    public UpdateReplicationJobResult updateReplicationJob(UpdateReplicationJobRequest request)

Description copied from interface: `AWSServerMigration`
The UpdateReplicationJob API is used to change the settings of your existing ReplicationJob created using CreateReplicationJob. Calling this API will affect the next scheduled ReplicationRun.

Specified by:
  `updateReplicationJob` in interface `AWSServerMigration`
Returns:
  Result of the UpdateReplicationJob operation returned by the service.

#### shutdown

    public void shutdown()

Description copied from interface: `AWSServerMigration`
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.

Specified by:
  `shutdown` in interface `AWSServerMigration`

#### getCachedResponseMetadata

    public ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request)

Description copied from interface: `AWSServerMigration`
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.

Specified by:
  `getCachedResponseMetadata` in interface `AWSServerMigration`
Parameters:
  `request` - The originally executed request.
Returns:
  The response metadata for the specified request, or null if none is available.