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

com.softlayer.api.service.account.proofofconcept.campaign.Code Maven / Gradle / Ivy

The newest version!
package com.softlayer.api.service.account.proofofconcept.campaign;

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

/**
 * A [SoftLayer_Account_ProofOfConcept_Campaign_Code] provides a `code` and an optional `description`. 
 *
 * @see SoftLayer_Account_ProofOfConcept_Campaign_Code
 */
@ApiType("SoftLayer_Account_ProofOfConcept_Campaign_Code")
public class Code extends Entity {

    @ApiProperty(canBeNullOrNotSet = true)
    protected String code;

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        codeSpecified = true;
        this.code = code;
    }

    protected boolean codeSpecified;

    public boolean isCodeSpecified() {
        return codeSpecified;
    }

    public void unsetCode() {
        code = null;
        codeSpecified = false;
    }

    @ApiProperty(canBeNullOrNotSet = true)
    protected String description;

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        descriptionSpecified = true;
        this.description = description;
    }

    protected boolean descriptionSpecified;

    public boolean isDescriptionSpecified() {
        return descriptionSpecified;
    }

    public void unsetDescription() {
        description = null;
        descriptionSpecified = false;
    }

    public static Service service(ApiClient client) {
        return client.createService(Service.class, null);
    }

    /**
     * This service provides Internal IBM Proof of Concept account campaign or promotion codes. 
     *
     * @see SoftLayer_Account_ProofOfConcept_Campaign_Code
     */
    @com.softlayer.api.annotation.ApiService("SoftLayer_Account_ProofOfConcept_Campaign_Code")
    public static interface Service extends com.softlayer.api.Service {

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

        /**
         * This method will retrieve all SoftLayer_Account_ProofOfConcept_Campaign_Code objects. Use the `code` field when submitting a request on the [[SoftLayer_Container_Account_ProofOfConcept_Request_Opportunity]] container. 
         *
         * @see SoftLayer_Account_ProofOfConcept_Campaign_Code::getAllObjects
         */
        @ApiMethod
        public List getAllObjects();

        /**
         * @see SoftLayer_Account_ProofOfConcept_Campaign_Code::getObject
         */
        @ApiMethod(instanceRequired = true)
        public Code getObject();

    }

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

    }

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

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

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

    }

}