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

com.softlayer.api.service.account.shipment.tracking.Data Maven / Gradle / Ivy

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

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.account.Shipment;
import com.softlayer.api.service.user.Customer;
import com.softlayer.api.service.user.Employee;
import java.util.List;
import java.util.concurrent.Future;

/**
 * The SoftLayer_Account_Shipment_Tracking_Data data type contains information on a single piece of tracking information pertaining to a shipment. This tracking information tracking numbers by which the shipment may be tracked through the shipping courier. 
 *
 * @see SoftLayer_Account_Shipment_Tracking_Data
 */
@ApiType("SoftLayer_Account_Shipment_Tracking_Data")
public class Data extends Entity {

    /**
     * The employee who created the tracking datum.
     */
    @ApiProperty
    protected Employee createEmployee;

    public Employee getCreateEmployee() {
        return createEmployee;
    }

    public void setCreateEmployee(Employee createEmployee) {
        this.createEmployee = createEmployee;
    }

    /**
     * The customer user who created the tracking datum.
     */
    @ApiProperty
    protected Customer createUser;

    public Customer getCreateUser() {
        return createUser;
    }

    public void setCreateUser(Customer createUser) {
        this.createUser = createUser;
    }

    /**
     * The employee who last modified the tracking datum.
     */
    @ApiProperty
    protected Employee modifyEmployee;

    public Employee getModifyEmployee() {
        return modifyEmployee;
    }

    public void setModifyEmployee(Employee modifyEmployee) {
        this.modifyEmployee = modifyEmployee;
    }

    /**
     * The customer user who last modified the tracking datum.
     */
    @ApiProperty
    protected Customer modifyUser;

    public Customer getModifyUser() {
        return modifyUser;
    }

    public void setModifyUser(Customer modifyUser) {
        this.modifyUser = modifyUser;
    }

    /**
     * The shipment of the tracking datum.
     */
    @ApiProperty
    protected Shipment shipment;

    public Shipment getShipment() {
        return shipment;
    }

    public void setShipment(Shipment shipment) {
        this.shipment = shipment;
    }

    /**
     * The create user id of the tracking data.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Long createUserId;

    public Long getCreateUserId() {
        return createUserId;
    }

    public void setCreateUserId(Long createUserId) {
        createUserIdSpecified = true;
        this.createUserId = createUserId;
    }

    protected boolean createUserIdSpecified;

    public boolean isCreateUserIdSpecified() {
        return createUserIdSpecified;
    }

    public void unsetCreateUserId() {
        createUserId = null;
        createUserIdSpecified = false;
    }

    /**
     * The unique id of the tracking data.
     */
    @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;
    }

    /**
     * The user id of the tracking data.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Long modifyUserId;

    public Long getModifyUserId() {
        return modifyUserId;
    }

    public void setModifyUserId(Long modifyUserId) {
        modifyUserIdSpecified = true;
        this.modifyUserId = modifyUserId;
    }

    protected boolean modifyUserIdSpecified;

    public boolean isModifyUserIdSpecified() {
        return modifyUserIdSpecified;
    }

    public void unsetModifyUserId() {
        modifyUserId = null;
        modifyUserIdSpecified = false;
    }

    /**
     * The package id of the tracking data.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Long packageId;

    public Long getPackageId() {
        return packageId;
    }

    public void setPackageId(Long packageId) {
        packageIdSpecified = true;
        this.packageId = packageId;
    }

    protected boolean packageIdSpecified;

    public boolean isPackageIdSpecified() {
        return packageIdSpecified;
    }

    public void unsetPackageId() {
        packageId = null;
        packageIdSpecified = false;
    }

    /**
     * The sequence of the tracking data.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Long sequence;

    public Long getSequence() {
        return sequence;
    }

    public void setSequence(Long sequence) {
        sequenceSpecified = true;
        this.sequence = sequence;
    }

    protected boolean sequenceSpecified;

    public boolean isSequenceSpecified() {
        return sequenceSpecified;
    }

    public void unsetSequence() {
        sequence = null;
        sequenceSpecified = false;
    }

    /**
     * The shipment id of the tracking data.
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Long shipmentId;

    public Long getShipmentId() {
        return shipmentId;
    }

    public void setShipmentId(Long shipmentId) {
        shipmentIdSpecified = true;
        this.shipmentId = shipmentId;
    }

    protected boolean shipmentIdSpecified;

    public boolean isShipmentIdSpecified() {
        return shipmentIdSpecified;
    }

    public void unsetShipmentId() {
        shipmentId = null;
        shipmentIdSpecified = false;
    }

    /**
     * The tracking data (tracking number/reference number).
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected String trackingData;

    public String getTrackingData() {
        return trackingData;
    }

    public void setTrackingData(String trackingData) {
        trackingDataSpecified = true;
        this.trackingData = trackingData;
    }

    protected boolean trackingDataSpecified;

    public boolean isTrackingDataSpecified() {
        return trackingDataSpecified;
    }

    public void unsetTrackingData() {
        trackingData = null;
        trackingDataSpecified = 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());
    }

    /**
     * SoftLayer's tracking data service allows the user to access and manage tracking information on shipments sent from the user to SoftLayer or from SoftLayer to the user. 
     *
     * @see SoftLayer_Account_Shipment_Tracking_Data
     */
    @com.softlayer.api.annotation.ApiService("SoftLayer_Account_Shipment_Tracking_Data")
    public static interface Service extends com.softlayer.api.Service {

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

        /**
         * Create a new shipment tracking data. The ''shipmentId'', ''sequence'', and ''trackingData'' properties in the templateObject parameter are required parameters to create a tracking data record. 
         *
         * @see SoftLayer_Account_Shipment_Tracking_Data::createObject
         */
        @ApiMethod
        public Data createObject(Data templateObject);

        /**
         * Create a new shipment tracking data. The ''shipmentId'', ''sequence'', and ''trackingData'' properties of each templateObject in the templateObjects array are required parameters to create a tracking data record. 
         *
         * @see SoftLayer_Account_Shipment_Tracking_Data::createObjects
         */
        @ApiMethod
        public List createObjects(List templateObjects);

        /**
         * deleteObject permanently removes a shipment tracking datum (number) 
         *
         * @see SoftLayer_Account_Shipment_Tracking_Data::deleteObject
         */
        @ApiMethod(instanceRequired = true)
        public Boolean deleteObject();

        /**
         * Edit the properties of a tracking data record by passing in a modified instance of a SoftLayer_Account_Shipment_Tracking_Data object. 
         *
         * @see SoftLayer_Account_Shipment_Tracking_Data::editObject
         */
        @ApiMethod(instanceRequired = true)
        public Boolean editObject(Data templateObject);

        /**
         * @see SoftLayer_Account_Shipment_Tracking_Data::getObject
         */
        @ApiMethod(instanceRequired = true)
        public Data getObject();

        /**
         * The employee who created the tracking datum.
         *
         * @see SoftLayer_Account_Shipment_Tracking_Data::getCreateEmployee
         */
        @ApiMethod(instanceRequired = true)
        public Employee getCreateEmployee();

        /**
         * The customer user who created the tracking datum.
         *
         * @see SoftLayer_Account_Shipment_Tracking_Data::getCreateUser
         */
        @ApiMethod(instanceRequired = true)
        public Customer getCreateUser();

        /**
         * The employee who last modified the tracking datum.
         *
         * @see SoftLayer_Account_Shipment_Tracking_Data::getModifyEmployee
         */
        @ApiMethod(instanceRequired = true)
        public Employee getModifyEmployee();

        /**
         * The customer user who last modified the tracking datum.
         *
         * @see SoftLayer_Account_Shipment_Tracking_Data::getModifyUser
         */
        @ApiMethod(instanceRequired = true)
        public Customer getModifyUser();

        /**
         * The shipment of the tracking datum.
         *
         * @see SoftLayer_Account_Shipment_Tracking_Data::getShipment
         */
        @ApiMethod(instanceRequired = true)
        public Shipment getShipment();

    }

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

        public Future createObject(Data templateObject, ResponseHandler callback);

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

        public Future createObjects(List templateObjects, ResponseHandler> callback);

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

        public Future deleteObject(ResponseHandler callback);

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

        public Future editObject(Data templateObject, ResponseHandler callback);

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

        public Future getObject(ResponseHandler callback);

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

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

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

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

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

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

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

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

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

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

    }

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

        public com.softlayer.api.service.user.Employee.Mask createEmployee() {
            return withSubMask("createEmployee", com.softlayer.api.service.user.Employee.Mask.class);
        }

        public com.softlayer.api.service.user.Customer.Mask createUser() {
            return withSubMask("createUser", com.softlayer.api.service.user.Customer.Mask.class);
        }

        public com.softlayer.api.service.user.Employee.Mask modifyEmployee() {
            return withSubMask("modifyEmployee", com.softlayer.api.service.user.Employee.Mask.class);
        }

        public com.softlayer.api.service.user.Customer.Mask modifyUser() {
            return withSubMask("modifyUser", com.softlayer.api.service.user.Customer.Mask.class);
        }

        public com.softlayer.api.service.account.Shipment.Mask shipment() {
            return withSubMask("shipment", com.softlayer.api.service.account.Shipment.Mask.class);
        }

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

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

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

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

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

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

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

    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy