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

com.softlayer.api.service.scale.asset.virtual.Guest Maven / Gradle / Ivy

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

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.scale.Asset;
import java.util.concurrent.Future;

/**
 * A guest asset is a fixed asset of scale group. It is not automatically scaled up or down in any way. Its purpose is to provide information (e.g. metrics) to policies to affect scaling decisions. 
 *
 * @see SoftLayer_Scale_Asset_Virtual_Guest
 */
@ApiType("SoftLayer_Scale_Asset_Virtual_Guest")
public class Guest extends Asset {

    /**
     * The guest for this asset.
     */
    @ApiProperty
    protected com.softlayer.api.service.virtual.Guest virtualGuest;

    public com.softlayer.api.service.virtual.Guest getVirtualGuest() {
        return virtualGuest;
    }

    public void setVirtualGuest(com.softlayer.api.service.virtual.Guest virtualGuest) {
        this.virtualGuest = virtualGuest;
    }

    /**
     * The identifier of the guest for this asset.
     */
    @ApiProperty
    protected Long virtualGuestId;

    public Long getVirtualGuestId() {
        return virtualGuestId;
    }

    public void setVirtualGuestId(Long virtualGuestId) {
        this.virtualGuestId = virtualGuestId;
    }

    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());
    }

    /**
     * A guest asset is a fixed asset of scale group. It is not automatically scaled up or down in any way. Its purpose is to provide information (e.g. metrics) to policies to affect scaling decisions. 
     *
     * @see SoftLayer_Scale_Asset_Virtual_Guest
     */
    @com.softlayer.api.annotation.ApiService("SoftLayer_Scale_Asset_Virtual_Guest")
    public static interface Service extends Asset.Service {

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

        /**
         * @see SoftLayer_Scale_Asset_Virtual_Guest::createObject
         */
        @ApiMethod
        public Guest createObject(Guest templateObject);

        /**
         * @see SoftLayer_Scale_Asset_Virtual_Guest::getObject
         */
        @ApiMethod(value = "getObject", instanceRequired = true)
        public Guest getObjectForGuest();

        /**
         * The guest for this asset.
         *
         * @see SoftLayer_Scale_Asset_Virtual_Guest::getVirtualGuest
         */
        @ApiMethod(instanceRequired = true)
        public com.softlayer.api.service.virtual.Guest getVirtualGuest();

        /**
         * The identifier of the guest for this asset.
         *
         * @see SoftLayer_Scale_Asset_Virtual_Guest::getVirtualGuestId
         */
        @ApiMethod(instanceRequired = true)
        public Long getVirtualGuestId();

    }

    public static interface ServiceAsync extends Asset.ServiceAsync {

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

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

        public Future createObject(Guest templateObject, ResponseHandler callback);

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

        public Future getObjectForGuest(ResponseHandler callback);

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

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

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

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

    }

    public static class Mask extends com.softlayer.api.service.scale.Asset.Mask {

        public com.softlayer.api.service.virtual.Guest.Mask virtualGuest() {
            return withSubMask("virtualGuest", com.softlayer.api.service.virtual.Guest.Mask.class);
        }

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

    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy