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

com.softlayer.api.service.billing.item.virtual.DedicatedHost Maven / Gradle / Ivy

The newest version!
package com.softlayer.api.service.billing.item.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.billing.Item;
import java.util.concurrent.Future;

/**
 * @see SoftLayer_Billing_Item_Virtual_DedicatedHost
 */
@ApiType("SoftLayer_Billing_Item_Virtual_DedicatedHost")
public class DedicatedHost extends Item {

    /**
     * The resource for a virtual dedicated host billing item.
     */
    @ApiProperty
    protected com.softlayer.api.service.virtual.DedicatedHost resource;

    public com.softlayer.api.service.virtual.DedicatedHost getResource() {
        return resource;
    }

    public void setResource(com.softlayer.api.service.virtual.DedicatedHost resource) {
        this.resource = resource;
    }

    /**
     * The resource (unique identifier) for a server billing item.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Long resourceTableId;

    public Long getResourceTableId() {
        return resourceTableId;
    }

    public void setResourceTableId(Long resourceTableId) {
        resourceTableIdSpecified = true;
        this.resourceTableId = resourceTableId;
    }

    protected boolean resourceTableIdSpecified;

    public boolean isResourceTableIdSpecified() {
        return resourceTableIdSpecified;
    }

    public void unsetResourceTableId() {
        resourceTableId = null;
        resourceTableIdSpecified = 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());
    }

    /**
     * @see SoftLayer_Billing_Item_Virtual_DedicatedHost
     */
    @com.softlayer.api.annotation.ApiService("SoftLayer_Billing_Item_Virtual_DedicatedHost")
    public static interface Service extends Item.Service {

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

        /**
         * @see SoftLayer_Billing_Item_Virtual_DedicatedHost::getObject
         */
        @ApiMethod(value = "getObject", instanceRequired = true)
        public DedicatedHost getObjectForDedicatedHost();

        /**
         * The resource for a virtual dedicated host billing item.
         *
         * @see SoftLayer_Billing_Item_Virtual_DedicatedHost::getResource
         */
        @ApiMethod(instanceRequired = true)
        public com.softlayer.api.service.virtual.DedicatedHost getResource();

    }

    public static interface ServiceAsync extends Item.ServiceAsync {

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

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

        public Future getObjectForDedicatedHost(ResponseHandler callback);

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

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

    }

    public static class Mask extends com.softlayer.api.service.billing.Item.Mask {

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

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

    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy