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

com.softlayer.api.service.ticket.update.Employee Maven / Gradle / Ivy

The newest version!
package com.softlayer.api.service.ticket.update;

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

/**
 * The SoftLayer_Ticket_Update_Employee data type models an update to a ticket made by a SoftLayer employee. 
 *
 * @see SoftLayer_Ticket_Update_Employee
 */
@ApiType("SoftLayer_Ticket_Update_Employee")
public class Employee extends Update {

    /**
     * A ticket update's response rating. Ticket updates posted by SoftLayer employees have the option of earning a rating from SoftLayer's customers. Ratings are based on a 1 - 5 scale, with one being a poor rating while 5 is a very high rating. This is only used if a ticket update's ''editorType'' property is "EMPLOYEE". 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Long responseRating;

    public Long getResponseRating() {
        return responseRating;
    }

    public void setResponseRating(Long responseRating) {
        responseRatingSpecified = true;
        this.responseRating = responseRating;
    }

    protected boolean responseRatingSpecified;

    public boolean isResponseRatingSpecified() {
        return responseRatingSpecified;
    }

    public void unsetResponseRating() {
        responseRating = null;
        responseRatingSpecified = 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());
    }

    /**
     * Retrieve an update to a ticket made by a SoftLayer employee. Ticket updates created by employees have the option of being rated on a one to five scale. Because customer updates don't have this ability the SoftLayer_Ticket_Update_Employee class has it's own service. 
     *
     * @see SoftLayer_Ticket_Update_Employee
     */
    @com.softlayer.api.annotation.ApiService("SoftLayer_Ticket_Update_Employee")
    public static interface Service extends com.softlayer.api.Service {

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

        /**
         * As part of the customer service process SoftLayer has provided a quick feedback mechanism for its customers to rate the responses that its employees give on tickets. addResponseRating() sets the rating for a single ticket update made by a SoftLayer employee. Ticket ratings have the integer values 1 through 5, with 1 being the worst and 5 being the best. Once the rating is set ''addResponseRating()'' returns a boolean true. 
         *
         * @see SoftLayer_Ticket_Update_Employee::addResponseRating
         */
        @ApiMethod(instanceRequired = true)
        public Boolean addResponseRating(Long responseRating, Long responseIndex);

        /**
         * getObject retrieves the SoftLayer_Ticket_Update_Employee object whose ID number corresponds to the ID number of the init parameter passed to the SoftLayer_Ticket_Update_Employee service. You can only retrieve employee updates to tickets that your API account has access to. 
         *
         * @see SoftLayer_Ticket_Update_Employee::getObject
         */
        @ApiMethod(instanceRequired = true)
        public Employee 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#addResponseRating}
         */
        public Future addResponseRating(Long responseRating, Long responseIndex);

        public Future addResponseRating(Long responseRating, Long responseIndex, 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.ticket.Update.Mask {

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

    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy