com.softlayer.api.service.network.subnet.swip.Transaction Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of softlayer-api-client Show documentation
Show all versions of softlayer-api-client Show documentation
API client for accessing the SoftLayer API
package com.softlayer.api.service.network.subnet.swip;
import com.softlayer.api.ApiClient;
import com.softlayer.api.ResponseHandler;
import com.softlayer.api.annotation.ApiMethod;
import com.softlayer.api.annotation.ApiProperty;
import com.softlayer.api.annotation.ApiType;
import com.softlayer.api.service.Account;
import com.softlayer.api.service.Entity;
import com.softlayer.api.service.network.Subnet;
import java.util.List;
import java.util.concurrent.Future;
/**
* The SoftLayer_Network_Subnet_Swip_Transaction data type contains basic information tracked at SoftLayer to allow automation of Swip creation, update, and removal requests. A specific transaction is attached to an accountId and a subnetId. This also contains a "Status Name" which tells the customer what the transaction is doing:
*
*
* * REQUEST QUEUED: Request is queued up to be sent to ARIN
* * REQUEST SENT: The email request has been sent to ARIN
* * REQUEST CONFIRMED: ARIN has confirmed that the request is good, and should be available in 24 hours
* * OK: The subnet has been checked with WHOIS and it the SWIP transaction has completed correctly
* * REMOVE QUEUED: A subnet is queued to be removed from ARIN's systems
* * REMOVE SENT: The removal email request has been sent to ARIN
* * REMOVE CONFIRMED: ARIN has confirmed that the removal request is good, and the subnet should be clear in WHOIS in 24 hours
* * DELETED: This specific SWIP Transaction has been removed from ARIN and is no longer in effect
* * SOFTLAYER MANUALLY PROCESSING: Sometimes a request doesn't go through correctly and has to be manually processed by SoftLayer. This may take some time.
*
* @see SoftLayer_Network_Subnet_Swip_Transaction
*/
@ApiType("SoftLayer_Network_Subnet_Swip_Transaction")
public class Transaction extends Entity {
/**
* The Account whose RWHOIS data was used to SWIP this subnet
*/
@ApiProperty
protected Account account;
public Account getAccount() {
return account;
}
public void setAccount(Account account) {
this.account = account;
}
/**
* The subnet that this SWIP transaction was created for.
*/
@ApiProperty
protected Subnet subnet;
public Subnet getSubnet() {
return subnet;
}
public void setSubnet(Subnet subnet) {
this.subnet = subnet;
}
/**
* A SWIP transaction's unique identifier.
*/
@ApiProperty(canBeNullOrNotSet = true)
protected Long id;
public Long getId() {
return id;
}
public void setId(Long id) {
idSpecified = true;
this.id = id;
}
protected boolean idSpecified;
public boolean isIdSpecified() {
return idSpecified;
}
public void unsetId() {
id = null;
idSpecified = false;
}
/**
* A Name describing which state a SWIP transaction is in.
*/
@ApiProperty(canBeNullOrNotSet = true)
protected String statusName;
public String getStatusName() {
return statusName;
}
public void setStatusName(String statusName) {
statusNameSpecified = true;
this.statusName = statusName;
}
protected boolean statusNameSpecified;
public boolean isStatusNameSpecified() {
return statusNameSpecified;
}
public void unsetStatusName() {
statusName = null;
statusNameSpecified = false;
}
/**
* ID Number of the Subnet for this SWIP transaction.
*/
@ApiProperty(canBeNullOrNotSet = true)
protected Long subnetId;
public Long getSubnetId() {
return subnetId;
}
public void setSubnetId(Long subnetId) {
subnetIdSpecified = true;
this.subnetId = subnetId;
}
protected boolean subnetIdSpecified;
public boolean isSubnetIdSpecified() {
return subnetIdSpecified;
}
public void unsetSubnetId() {
subnetId = null;
subnetIdSpecified = false;
}
public Service asService(ApiClient client) {
return service(client, id);
}
public static Service service(ApiClient client) {
return client.createService(Service.class, null);
}
public static Service service(ApiClient client, Long id) {
return client.createService(Service.class, id == null ? null : id.toString());
}
/**
* SoftLayer's Automated Swip System is a finite state machine; it works by locally tracking a transaction between SoftLayer and the relevant Regional Internet Registry (RIR), assigning responsibility of a subnet to a customer. Transactions are dictated by the RIR's processing system, and the nature of the communication medium with each RIR, namely their REST API.
*
* Using this API, SoftLayer Customers are able to initiate, monitor, update, and remove Swip system transactions with ARIN and RIPE.
*
* @see SoftLayer_Network_Subnet_Swip_Transaction
*/
@com.softlayer.api.annotation.ApiService("SoftLayer_Network_Subnet_Swip_Transaction")
public static interface Service extends com.softlayer.api.Service {
public ServiceAsync asAsync();
public Mask withNewMask();
public Mask withMask();
public void setMask(Mask mask);
/**
* This function will return an array of SoftLayer_Network_Subnet_Swip_Transaction objects, one for each SWIP that is currently in transaction with ARIN. This includes all swip registrations, swip removal requests, and SWIP objects that are currently OK.
*
* @see SoftLayer_Network_Subnet_Swip_Transaction::findMyTransactions
*/
@ApiMethod
public List findMyTransactions();
/**
* getObject retrieves the SoftLayer_Network_Subnet_Swip_Transaction object whose ID number corresponds to the ID number of the init parameter passed to the SoftLayer_Network_Subnet_Swip_transaction service. You can only retrieve Swip transactions tied to the account.
*
* @see SoftLayer_Network_Subnet_Swip_Transaction::getObject
*/
@ApiMethod(instanceRequired = true)
public Transaction getObject();
/**
* This method finds all subnets attached to your account that are in OK status and starts "DELETE" transactions with ARIN, allowing you to remove your SWIP registration information.
*
* @see SoftLayer_Network_Subnet_Swip_Transaction::removeAllSubnetSwips
*/
@ApiMethod
public Long removeAllSubnetSwips();
/**
* This function, when called on an instantiated SWIP transaction, will allow you to start a "DELETE" transaction with ARIN, allowing you to remove your SWIP registration information.
*
* @see SoftLayer_Network_Subnet_Swip_Transaction::removeSwipData
*/
@ApiMethod(instanceRequired = true)
public Boolean removeSwipData();
/**
* This function will allow you to update ARIN's registration data for a subnet to your current RWHOIS data.
*
* @see SoftLayer_Network_Subnet_Swip_Transaction::resendSwipData
*/
@ApiMethod(instanceRequired = true)
public Boolean resendSwipData();
/**
* swipAllSubnets finds all subnets attached to your account and attempts to create a SWIP transaction for all subnets that do not already have a SWIP transaction in progress.
*
* @see SoftLayer_Network_Subnet_Swip_Transaction::swipAllSubnets
*/
@ApiMethod
public Long swipAllSubnets();
/**
* This method finds all subnets attached to your account that are in "OK" status and updates their data with ARIN. Use this function after you have updated your RWHOIS data if you want to keep SWIP up to date.
*
* @see SoftLayer_Network_Subnet_Swip_Transaction::updateAllSubnetSwips
*/
@ApiMethod
public Long updateAllSubnetSwips();
/**
* The Account whose RWHOIS data was used to SWIP this subnet
*
* @see SoftLayer_Network_Subnet_Swip_Transaction::getAccount
*/
@ApiMethod(instanceRequired = true)
public Account getAccount();
/**
* The subnet that this SWIP transaction was created for.
*
* @see SoftLayer_Network_Subnet_Swip_Transaction::getSubnet
*/
@ApiMethod(instanceRequired = true)
public Subnet getSubnet();
}
public static interface ServiceAsync extends com.softlayer.api.ServiceAsync {
public Mask withNewMask();
public Mask withMask();
public void setMask(Mask mask);
/**
* Async version of {@link Service#findMyTransactions}
*/
public Future> findMyTransactions();
public Future> findMyTransactions(ResponseHandler> callback);
/**
* Async version of {@link Service#getObject}
*/
public Future getObject();
public Future> getObject(ResponseHandler callback);
/**
* Async version of {@link Service#removeAllSubnetSwips}
*/
public Future removeAllSubnetSwips();
public Future> removeAllSubnetSwips(ResponseHandler callback);
/**
* Async version of {@link Service#removeSwipData}
*/
public Future removeSwipData();
public Future> removeSwipData(ResponseHandler callback);
/**
* Async version of {@link Service#resendSwipData}
*/
public Future resendSwipData();
public Future> resendSwipData(ResponseHandler callback);
/**
* Async version of {@link Service#swipAllSubnets}
*/
public Future swipAllSubnets();
public Future> swipAllSubnets(ResponseHandler callback);
/**
* Async version of {@link Service#updateAllSubnetSwips}
*/
public Future updateAllSubnetSwips();
public Future> updateAllSubnetSwips(ResponseHandler callback);
/**
* Async version of {@link Service#getAccount}
*/
public Future getAccount();
/**
* Async callback version of {@link Service#getAccount}
*/
public Future> getAccount(ResponseHandler callback);
/**
* Async version of {@link Service#getSubnet}
*/
public Future getSubnet();
/**
* Async callback version of {@link Service#getSubnet}
*/
public Future> getSubnet(ResponseHandler callback);
}
public static class Mask extends com.softlayer.api.service.Entity.Mask {
public com.softlayer.api.service.Account.Mask account() {
return withSubMask("account", com.softlayer.api.service.Account.Mask.class);
}
public com.softlayer.api.service.network.Subnet.Mask subnet() {
return withSubMask("subnet", com.softlayer.api.service.network.Subnet.Mask.class);
}
public Mask id() {
withLocalProperty("id");
return this;
}
public Mask statusName() {
withLocalProperty("statusName");
return this;
}
public Mask subnetId() {
withLocalProperty("subnetId");
return this;
}
}
}