All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.softlayer.api.service.network.directlink.Location Maven / Gradle / Ivy

There is a newer version: 0.3.4
Show newest version
package com.softlayer.api.service.network.directlink;

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.Entity;
import com.softlayer.api.service.network.directlink.Provider;
import com.softlayer.api.service.network.directlink.ServiceType;
import java.util.List;
import java.util.concurrent.Future;

/**
 * The SoftLayer_Network_DirectLink_Location presents a structure containing attributes of a Direct Link location, and its related object SoftLayer location. 
 *
 * @see SoftLayer_Network_DirectLink_Location
 */
@ApiType("SoftLayer_Network_DirectLink_Location")
public class Location extends Entity {

    /**
     * The location of Direct Link facility.
     */
    @ApiProperty
    protected com.softlayer.api.service.Location location;

    public com.softlayer.api.service.Location getLocation() {
        return location;
    }

    public void setLocation(com.softlayer.api.service.Location location) {
        this.location = location;
    }

    /**
     * The Id of Direct Link provider.
     */
    @ApiProperty
    protected Provider provider;

    public Provider getProvider() {
        return provider;
    }

    public void setProvider(Provider provider) {
        this.provider = provider;
    }

    /**
     * The Id of Direct Link service type.
     */
    @ApiProperty
    protected ServiceType serviceType;

    public ServiceType getServiceType() {
        return serviceType;
    }

    public void setServiceType(ServiceType serviceType) {
        this.serviceType = serviceType;
    }

    /**
     * The Direct Link specific location owner for POP/DC facilities. Like Equinix, Pacnet, Verizon etc. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected String buildingColocationOwner;

    public String getBuildingColocationOwner() {
        return buildingColocationOwner;
    }

    public void setBuildingColocationOwner(String buildingColocationOwner) {
        buildingColocationOwnerSpecified = true;
        this.buildingColocationOwner = buildingColocationOwner;
    }

    protected boolean buildingColocationOwnerSpecified;

    public boolean isBuildingColocationOwnerSpecified() {
        return buildingColocationOwnerSpecified;
    }

    public void unsetBuildingColocationOwner() {
        buildingColocationOwner = null;
        buildingColocationOwnerSpecified = false;
    }

    /**
     * The unique identifier of a Direct Link location.
     */
    @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;
    }

    /**
     * Specifies if The Direct Link specific location has Redundancy:secondary XCR availability. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Boolean isRedundantXcr;

    public Boolean getIsRedundantXcr() {
        return isRedundantXcr;
    }

    public void setIsRedundantXcr(Boolean isRedundantXcr) {
        isRedundantXcrSpecified = true;
        this.isRedundantXcr = isRedundantXcr;
    }

    protected boolean isRedundantXcrSpecified;

    public boolean isIsRedundantXcrSpecified() {
        return isRedundantXcrSpecified;
    }

    public void unsetIsRedundantXcr() {
        isRedundantXcr = null;
        isRedundantXcrSpecified = false;
    }

    /**
     * The Direct Link specific location ie. Data Center & Network POP facility. Refer to location object Like Dallas in US, London in England etc. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Long locationId;

    public Long getLocationId() {
        return locationId;
    }

    public void setLocationId(Long locationId) {
        locationIdSpecified = true;
        this.locationId = locationId;
    }

    protected boolean locationIdSpecified;

    public boolean isLocationIdSpecified() {
        return locationIdSpecified;
    }

    public void unsetLocationId() {
        locationId = null;
        locationIdSpecified = false;
    }

    /**
     * The Direct Link Market location used in Direct Link Order. Like Europe, North America, Asia pacific etc. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected String marketGeography;

    public String getMarketGeography() {
        return marketGeography;
    }

    public void setMarketGeography(String marketGeography) {
        marketGeographySpecified = true;
        this.marketGeography = marketGeography;
    }

    protected boolean marketGeographySpecified;

    public boolean isMarketGeographySpecified() {
        return marketGeographySpecified;
    }

    public void unsetMarketGeography() {
        marketGeography = null;
        marketGeographySpecified = 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());
    }

    /**
     * The SoftLayer_Network_DirectLink_Location service allows users to create, update, delete, get details of a Direct Link location and retrieve all existing details. 
     *
     * @see SoftLayer_Network_DirectLink_Location
     */
    @com.softlayer.api.annotation.ApiService("SoftLayer_Network_DirectLink_Location")
    public static interface Service extends com.softlayer.api.Service {

        public ServiceAsync asAsync();
        public Mask withNewMask();
        public Mask withMask();
        public void setMask(Mask mask);

        /**
         * Return all existing Direct Link location. 
         *
         * @see SoftLayer_Network_DirectLink_Location::getAllObjects
         */
        @ApiMethod
        public List getAllObjects();

        /**
         * @see SoftLayer_Network_DirectLink_Location::getObject
         */
        @ApiMethod(instanceRequired = true)
        public Location getObject();

        /**
         * The location of Direct Link facility.
         *
         * @see SoftLayer_Network_DirectLink_Location::getLocation
         */
        @ApiMethod(instanceRequired = true)
        public com.softlayer.api.service.Location getLocation();

        /**
         * The Id of Direct Link provider.
         *
         * @see SoftLayer_Network_DirectLink_Location::getProvider
         */
        @ApiMethod(instanceRequired = true)
        public Provider getProvider();

        /**
         * The Id of Direct Link service type.
         *
         * @see SoftLayer_Network_DirectLink_Location::getServiceType
         */
        @ApiMethod(instanceRequired = true)
        public ServiceType getServiceType();

    }

    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#getAllObjects}
         */
        public Future> getAllObjects();

        public Future getAllObjects(ResponseHandler> callback);

        /**
         * Async version of {@link Service#getObject}
         */
        public Future getObject();

        public Future getObject(ResponseHandler callback);

        /**
         * Async version of {@link Service#getLocation}
         */
        public Future getLocation();

        /**
         * Async callback version of {@link Service#getLocation}
         */
        public Future getLocation(ResponseHandler callback);

        /**
         * Async version of {@link Service#getProvider}
         */
        public Future getProvider();

        /**
         * Async callback version of {@link Service#getProvider}
         */
        public Future getProvider(ResponseHandler callback);

        /**
         * Async version of {@link Service#getServiceType}
         */
        public Future getServiceType();

        /**
         * Async callback version of {@link Service#getServiceType}
         */
        public Future getServiceType(ResponseHandler callback);

    }

    public static class Mask extends com.softlayer.api.service.Entity.Mask {

        public com.softlayer.api.service.Location.Mask location() {
            return withSubMask("location", com.softlayer.api.service.Location.Mask.class);
        }

        public Provider.Mask provider() {
            return withSubMask("provider", Provider.Mask.class);
        }

        public ServiceType.Mask serviceType() {
            return withSubMask("serviceType", ServiceType.Mask.class);
        }

        public Mask buildingColocationOwner() {
            withLocalProperty("buildingColocationOwner");
            return this;
        }

        public Mask id() {
            withLocalProperty("id");
            return this;
        }

        public Mask isRedundantXcr() {
            withLocalProperty("isRedundantXcr");
            return this;
        }

        public Mask locationId() {
            withLocalProperty("locationId");
            return this;
        }

        public Mask marketGeography() {
            withLocalProperty("marketGeography");
            return this;
        }

    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy