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

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

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

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.Hardware;
import com.softlayer.api.service.account.Address;
import com.softlayer.api.service.hardware.Attribute;
import com.softlayer.api.service.locale.Timezone;
import com.softlayer.api.service.location.Group;
import com.softlayer.api.service.location.Region;
import com.softlayer.api.service.location.Status;
import com.softlayer.api.service.location.group.location.CrossReference;
import com.softlayer.api.service.location.reservation.rack.Member;
import com.softlayer.api.service.network.backbone.location.Dependent;
import com.softlayer.api.service.sales.presale.Event;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.Future;

/**
 * Every piece of hardware and network connection owned by SoftLayer is tracked physically by location and stored in the SoftLayer_Location data type. SoftLayer locations exist in parent/child relationships, a convenient way to track equipment from it's city, datacenter, server room, rack, then slot. Network backbones are tied to datacenters only, not to a room, rack, or slot. 
 *
 * @see SoftLayer_Location
 */
@ApiType("SoftLayer_Location")
public class Location extends Entity {

    @ApiProperty
    protected List activePresaleEvents;

    public List getActivePresaleEvents() {
        if (activePresaleEvents == null) {
            activePresaleEvents = new ArrayList();
        }
        return activePresaleEvents;
    }

    @ApiProperty
    protected List backboneDependents;

    public List getBackboneDependents() {
        if (backboneDependents == null) {
            backboneDependents = new ArrayList();
        }
        return backboneDependents;
    }

    /**
     * A location can be a member of 1 or more groups. This will show which groups to which a location belongs.
     */
    @ApiProperty
    protected List groups;

    public List getGroups() {
        if (groups == null) {
            groups = new ArrayList();
        }
        return groups;
    }

    @ApiProperty
    protected List hardwareFirewalls;

    public List getHardwareFirewalls() {
        if (hardwareFirewalls == null) {
            hardwareFirewalls = new ArrayList();
        }
        return hardwareFirewalls;
    }

    /**
     * A location's physical address.
     */
    @ApiProperty
    protected Address locationAddress;

    public Address getLocationAddress() {
        return locationAddress;
    }

    public void setLocationAddress(Address locationAddress) {
        this.locationAddress = locationAddress;
    }

    /**
     * A location's Dedicated Rack member
     */
    @ApiProperty
    protected Member locationReservationMember;

    public Member getLocationReservationMember() {
        return locationReservationMember;
    }

    public void setLocationReservationMember(Member locationReservationMember) {
        this.locationReservationMember = locationReservationMember;
    }

    /**
     * The current locations status.
     */
    @ApiProperty
    protected Status locationStatus;

    public Status getLocationStatus() {
        return locationStatus;
    }

    public void setLocationStatus(Status locationStatus) {
        this.locationStatus = locationStatus;
    }

    @ApiProperty
    protected Attribute networkConfigurationAttribute;

    public Attribute getNetworkConfigurationAttribute() {
        return networkConfigurationAttribute;
    }

    public void setNetworkConfigurationAttribute(Attribute networkConfigurationAttribute) {
        this.networkConfigurationAttribute = networkConfigurationAttribute;
    }

    /**
     * The total number of users online using SoftLayer's PPTP VPN service for a location.
     */
    @ApiProperty
    protected Long onlinePptpVpnUserCount;

    public Long getOnlinePptpVpnUserCount() {
        return onlinePptpVpnUserCount;
    }

    public void setOnlinePptpVpnUserCount(Long onlinePptpVpnUserCount) {
        this.onlinePptpVpnUserCount = onlinePptpVpnUserCount;
    }

    /**
     * The total number of users online using SoftLayer's SSL VPN service for a location.
     */
    @ApiProperty
    protected Long onlineSslVpnUserCount;

    public Long getOnlineSslVpnUserCount() {
        return onlineSslVpnUserCount;
    }

    public void setOnlineSslVpnUserCount(Long onlineSslVpnUserCount) {
        this.onlineSslVpnUserCount = onlineSslVpnUserCount;
    }

    @ApiProperty
    protected String pathString;

    public String getPathString() {
        return pathString;
    }

    public void setPathString(String pathString) {
        this.pathString = pathString;
    }

    /**
     * A location can be a member of 1 or more Price Groups. This will show which groups to which a location belongs.
     */
    @ApiProperty
    protected List priceGroups;

    public List getPriceGroups() {
        if (priceGroups == null) {
            priceGroups = new ArrayList();
        }
        return priceGroups;
    }

    /**
     * A location can be a member of 1 or more regions. This will show which regions to which a location belongs.
     */
    @ApiProperty
    protected List regions;

    public List getRegions() {
        if (regions == null) {
            regions = new ArrayList();
        }
        return regions;
    }

    @ApiProperty
    protected Timezone timezone;

    public Timezone getTimezone() {
        return timezone;
    }

    public void setTimezone(Timezone timezone) {
        this.timezone = timezone;
    }

    /**
     * A location can be a member of 1 Bandwidth Pooling Group. This will show which group to which a location belongs.
     */
    @ApiProperty
    protected CrossReference vdrGroup;

    public CrossReference getVdrGroup() {
        return vdrGroup;
    }

    public void setVdrGroup(CrossReference vdrGroup) {
        this.vdrGroup = vdrGroup;
    }

    /**
     * The unique identifier of a specific 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;
    }

    /**
     * A longer location description.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected String longName;

    public String getLongName() {
        return longName;
    }

    public void setLongName(String longName) {
        longNameSpecified = true;
        this.longName = longName;
    }

    protected boolean longNameSpecified;

    public boolean isLongNameSpecified() {
        return longNameSpecified;
    }

    public void unsetLongName() {
        longName = null;
        longNameSpecified = false;
    }

    /**
     * A short location description.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected String name;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        nameSpecified = true;
        this.name = name;
    }

    protected boolean nameSpecified;

    public boolean isNameSpecified() {
        return nameSpecified;
    }

    public void unsetName() {
        name = null;
        nameSpecified = false;
    }

    @ApiProperty(canBeNullOrNotSet = true)
    protected Long statusId;

    public Long getStatusId() {
        return statusId;
    }

    public void setStatusId(Long statusId) {
        statusIdSpecified = true;
        this.statusId = statusId;
    }

    protected boolean statusIdSpecified;

    public boolean isStatusIdSpecified() {
        return statusIdSpecified;
    }

    public void unsetStatusId() {
        statusId = null;
        statusIdSpecified = false;
    }

    /**
     * A count of 
     */
    @ApiProperty
    protected Long activePresaleEventCount;

    public Long getActivePresaleEventCount() {
        return activePresaleEventCount;
    }

    public void setActivePresaleEventCount(Long activePresaleEventCount) {
        this.activePresaleEventCount = activePresaleEventCount;
    }

    /**
     * A count of 
     */
    @ApiProperty
    protected Long backboneDependentCount;

    public Long getBackboneDependentCount() {
        return backboneDependentCount;
    }

    public void setBackboneDependentCount(Long backboneDependentCount) {
        this.backboneDependentCount = backboneDependentCount;
    }

    /**
     * A count of a location can be a member of 1 or more groups. This will show which groups to which a location belongs.
     */
    @ApiProperty
    protected Long groupCount;

    public Long getGroupCount() {
        return groupCount;
    }

    public void setGroupCount(Long groupCount) {
        this.groupCount = groupCount;
    }

    /**
     * A count of 
     */
    @ApiProperty
    protected Long hardwareFirewallCount;

    public Long getHardwareFirewallCount() {
        return hardwareFirewallCount;
    }

    public void setHardwareFirewallCount(Long hardwareFirewallCount) {
        this.hardwareFirewallCount = hardwareFirewallCount;
    }

    /**
     * A count of a location can be a member of 1 or more Price Groups. This will show which groups to which a location belongs.
     */
    @ApiProperty
    protected Long priceGroupCount;

    public Long getPriceGroupCount() {
        return priceGroupCount;
    }

    public void setPriceGroupCount(Long priceGroupCount) {
        this.priceGroupCount = priceGroupCount;
    }

    /**
     * A count of a location can be a member of 1 or more regions. This will show which regions to which a location belongs.
     */
    @ApiProperty
    protected Long regionCount;

    public Long getRegionCount() {
        return regionCount;
    }

    public void setRegionCount(Long regionCount) {
        this.regionCount = regionCount;
    }

    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_Location API service queries SoftLayer's location tree to find locations for all softlayer resources including bare metal servers, virtual servers, storage repositories, datacenters, points of presence, network backbones, and many more. 
     *
     * @see SoftLayer_Location
     */
    @com.softlayer.api.annotation.ApiService("SoftLayer_Location")
    public static interface Service extends com.softlayer.api.Service {

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

        /**
         * Object Storage is only available in select datacenters. This method will return all the datacenters where object storage is available. 
         *
         * @see SoftLayer_Location::getAvailableObjectStorageDatacenters
         */
        @ApiMethod
        public List getAvailableObjectStorageDatacenters();

        /**
         * Retrieve all datacenter locations. SoftLayer's datacenters exist in various cities and each contain one or more server rooms which house network and server infrastructure. 
         *
         * @see SoftLayer_Location::getDatacenters
         */
        @ApiMethod
        public List getDatacenters();

        /**
         * @see SoftLayer_Location::getDatacentersWithVirtualImageStoreServiceResourceRecord
         */
        @ApiMethod
        public List getDatacentersWithVirtualImageStoreServiceResourceRecord();

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

        /**
         * Retrieve all datacenter locations. SoftLayer's datacenters exist in various cities and each contain one or more server rooms which house network and server infrastructure. 
         *
         * @see SoftLayer_Location::getViewableDatacenters
         */
        @ApiMethod
        public List getViewableDatacenters();

        /**
         * Retrieve all viewable pop and datacenter locations. 
         *
         * @see SoftLayer_Location::getViewablePopsAndDataCenters
         */
        @ApiMethod
        public List getViewablePopsAndDataCenters();

        /**
         * Retrieve all viewable network locations. 
         *
         * @see SoftLayer_Location::getViewablepointOfPresence
         */
        @ApiMethod
        public List getViewablepointOfPresence();

        /**
         * Retrieve all point of presence locations. 
         *
         * @see SoftLayer_Location::getpointOfPresence
         */
        @ApiMethod
        public List getpointOfPresence();

        /**
         * @see SoftLayer_Location::getActivePresaleEvents
         */
        @ApiMethod(instanceRequired = true)
        public List getActivePresaleEvents();

        /**
         * @see SoftLayer_Location::getBackboneDependents
         */
        @ApiMethod(instanceRequired = true)
        public List getBackboneDependents();

        /**
         * A location can be a member of 1 or more groups. This will show which groups to which a location belongs.
         *
         * @see SoftLayer_Location::getGroups
         */
        @ApiMethod(instanceRequired = true)
        public List getGroups();

        /**
         * @see SoftLayer_Location::getHardwareFirewalls
         */
        @ApiMethod(instanceRequired = true)
        public List getHardwareFirewalls();

        /**
         * A location's physical address.
         *
         * @see SoftLayer_Location::getLocationAddress
         */
        @ApiMethod(instanceRequired = true)
        public Address getLocationAddress();

        /**
         * A location's Dedicated Rack member
         *
         * @see SoftLayer_Location::getLocationReservationMember
         */
        @ApiMethod(instanceRequired = true)
        public Member getLocationReservationMember();

        /**
         * The current locations status.
         *
         * @see SoftLayer_Location::getLocationStatus
         */
        @ApiMethod(instanceRequired = true)
        public Status getLocationStatus();

        /**
         * @see SoftLayer_Location::getNetworkConfigurationAttribute
         */
        @ApiMethod(instanceRequired = true)
        public Attribute getNetworkConfigurationAttribute();

        /**
         * The total number of users online using SoftLayer's PPTP VPN service for a location.
         *
         * @see SoftLayer_Location::getOnlinePptpVpnUserCount
         */
        @ApiMethod(instanceRequired = true)
        public Long getOnlinePptpVpnUserCount();

        /**
         * The total number of users online using SoftLayer's SSL VPN service for a location.
         *
         * @see SoftLayer_Location::getOnlineSslVpnUserCount
         */
        @ApiMethod(instanceRequired = true)
        public Long getOnlineSslVpnUserCount();

        /**
         * @see SoftLayer_Location::getPathString
         */
        @ApiMethod(instanceRequired = true)
        public String getPathString();

        /**
         * A location can be a member of 1 or more Price Groups. This will show which groups to which a location belongs.
         *
         * @see SoftLayer_Location::getPriceGroups
         */
        @ApiMethod(instanceRequired = true)
        public List getPriceGroups();

        /**
         * A location can be a member of 1 or more regions. This will show which regions to which a location belongs.
         *
         * @see SoftLayer_Location::getRegions
         */
        @ApiMethod(instanceRequired = true)
        public List getRegions();

        /**
         * @see SoftLayer_Location::getTimezone
         */
        @ApiMethod(instanceRequired = true)
        public Timezone getTimezone();

        /**
         * A location can be a member of 1 Bandwidth Pooling Group. This will show which group to which a location belongs.
         *
         * @see SoftLayer_Location::getVdrGroup
         */
        @ApiMethod(instanceRequired = true)
        public CrossReference getVdrGroup();

    }

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

        public Future getAvailableObjectStorageDatacenters(ResponseHandler> callback);

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

        public Future getDatacenters(ResponseHandler> callback);

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

        public Future getDatacentersWithVirtualImageStoreServiceResourceRecord(ResponseHandler> callback);

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

        public Future getObject(ResponseHandler callback);

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

        public Future getViewableDatacenters(ResponseHandler> callback);

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

        public Future getViewablePopsAndDataCenters(ResponseHandler> callback);

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

        public Future getViewablepointOfPresence(ResponseHandler> callback);

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

        public Future getpointOfPresence(ResponseHandler> callback);

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

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

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

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

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

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

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

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

        /**
         * Async version of {@link Service#getLocationAddress}
         */
        public Future
getLocationAddress(); /** * Async callback version of {@link Service#getLocationAddress} */ public Future getLocationAddress(ResponseHandler
callback); /** * Async version of {@link Service#getLocationReservationMember} */ public Future getLocationReservationMember(); /** * Async callback version of {@link Service#getLocationReservationMember} */ public Future getLocationReservationMember(ResponseHandler callback); /** * Async version of {@link Service#getLocationStatus} */ public Future getLocationStatus(); /** * Async callback version of {@link Service#getLocationStatus} */ public Future getLocationStatus(ResponseHandler callback); /** * Async version of {@link Service#getNetworkConfigurationAttribute} */ public Future getNetworkConfigurationAttribute(); /** * Async callback version of {@link Service#getNetworkConfigurationAttribute} */ public Future getNetworkConfigurationAttribute(ResponseHandler callback); /** * Async version of {@link Service#getOnlinePptpVpnUserCount} */ public Future getOnlinePptpVpnUserCount(); /** * Async callback version of {@link Service#getOnlinePptpVpnUserCount} */ public Future getOnlinePptpVpnUserCount(ResponseHandler callback); /** * Async version of {@link Service#getOnlineSslVpnUserCount} */ public Future getOnlineSslVpnUserCount(); /** * Async callback version of {@link Service#getOnlineSslVpnUserCount} */ public Future getOnlineSslVpnUserCount(ResponseHandler callback); /** * Async version of {@link Service#getPathString} */ public Future getPathString(); /** * Async callback version of {@link Service#getPathString} */ public Future getPathString(ResponseHandler callback); /** * Async version of {@link Service#getPriceGroups} */ public Future> getPriceGroups(); /** * Async callback version of {@link Service#getPriceGroups} */ public Future getPriceGroups(ResponseHandler> callback); /** * Async version of {@link Service#getRegions} */ public Future> getRegions(); /** * Async callback version of {@link Service#getRegions} */ public Future getRegions(ResponseHandler> callback); /** * Async version of {@link Service#getTimezone} */ public Future getTimezone(); /** * Async callback version of {@link Service#getTimezone} */ public Future getTimezone(ResponseHandler callback); /** * Async version of {@link Service#getVdrGroup} */ public Future getVdrGroup(); /** * Async callback version of {@link Service#getVdrGroup} */ public Future getVdrGroup(ResponseHandler callback); } public static class Mask extends Entity.Mask { public com.softlayer.api.service.sales.presale.Event.Mask activePresaleEvents() { return withSubMask("activePresaleEvents", com.softlayer.api.service.sales.presale.Event.Mask.class); } public com.softlayer.api.service.network.backbone.location.Dependent.Mask backboneDependents() { return withSubMask("backboneDependents", com.softlayer.api.service.network.backbone.location.Dependent.Mask.class); } public com.softlayer.api.service.location.Group.Mask groups() { return withSubMask("groups", com.softlayer.api.service.location.Group.Mask.class); } public Hardware.Mask hardwareFirewalls() { return withSubMask("hardwareFirewalls", Hardware.Mask.class); } public com.softlayer.api.service.account.Address.Mask locationAddress() { return withSubMask("locationAddress", com.softlayer.api.service.account.Address.Mask.class); } public com.softlayer.api.service.location.reservation.rack.Member.Mask locationReservationMember() { return withSubMask("locationReservationMember", com.softlayer.api.service.location.reservation.rack.Member.Mask.class); } public com.softlayer.api.service.location.Status.Mask locationStatus() { return withSubMask("locationStatus", com.softlayer.api.service.location.Status.Mask.class); } public com.softlayer.api.service.hardware.Attribute.Mask networkConfigurationAttribute() { return withSubMask("networkConfigurationAttribute", com.softlayer.api.service.hardware.Attribute.Mask.class); } public Mask onlinePptpVpnUserCount() { withLocalProperty("onlinePptpVpnUserCount"); return this; } public Mask onlineSslVpnUserCount() { withLocalProperty("onlineSslVpnUserCount"); return this; } public Mask pathString() { withLocalProperty("pathString"); return this; } public com.softlayer.api.service.location.Group.Mask priceGroups() { return withSubMask("priceGroups", com.softlayer.api.service.location.Group.Mask.class); } public com.softlayer.api.service.location.Region.Mask regions() { return withSubMask("regions", com.softlayer.api.service.location.Region.Mask.class); } public com.softlayer.api.service.locale.Timezone.Mask timezone() { return withSubMask("timezone", com.softlayer.api.service.locale.Timezone.Mask.class); } public com.softlayer.api.service.location.group.location.CrossReference.Mask vdrGroup() { return withSubMask("vdrGroup", com.softlayer.api.service.location.group.location.CrossReference.Mask.class); } public Mask id() { withLocalProperty("id"); return this; } public Mask longName() { withLocalProperty("longName"); return this; } public Mask name() { withLocalProperty("name"); return this; } public Mask statusId() { withLocalProperty("statusId"); return this; } public Mask activePresaleEventCount() { withLocalProperty("activePresaleEventCount"); return this; } public Mask backboneDependentCount() { withLocalProperty("backboneDependentCount"); return this; } public Mask groupCount() { withLocalProperty("groupCount"); return this; } public Mask hardwareFirewallCount() { withLocalProperty("hardwareFirewallCount"); return this; } public Mask priceGroupCount() { withLocalProperty("priceGroupCount"); return this; } public Mask regionCount() { withLocalProperty("regionCount"); return this; } } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy