microsoft-bonsai-api-main/Java/com.microsoft.bonsai.api/simulator/generated/src/main/java/com/microsoft/bonsai/simulatorapi/models/SimulatorContext.java
<gh_stars>0/**
 * Code generated by Microsoft (R) AutoRest Code Generator.
 * Changes may cause incorrect behavior and will be lost if the code is
 * regenerated.
 */

package com.microsoft.bonsai.simulatorapi.models;

import com.fasterxml.jackson.annotation.JsonProperty;

/**
 * This structure is passed (as a string) to a simulator running
 * when launched by the Socrates backend.
 */
public class SimulatorContext {
    /**
     * Possible values include: 'Unspecified', 'Hosted', 'Testing'.
     */
    @JsonProperty(value = "deploymentMode")
    private SimulatorContextTypesDeploymentMode deploymentMode;

    /**
     * Where is this simulator deployed.
     */
    @JsonProperty(value = "deploymentDetails")
    private String deploymentDetails;

    /**
     * A simulator id generated by the client.
     */
    @JsonProperty(value = "simulatorClientId")
    private String simulatorClientId;

    /**
     * The id of the collection.
     */
    @JsonProperty(value = "collection")
    private String collection;

    /**
     * The id of the package.
     */
    @JsonProperty(value = "package")
    private String packageProperty;

    /**
     * The purpose property.
     */
    @JsonProperty(value = "purpose")
    private Purpose purpose;

    /**
     * Get possible values include: 'Unspecified', 'Hosted', 'Testing'.
     *
     * @return the deploymentMode value
     */
    public SimulatorContextTypesDeploymentMode deploymentMode() {
        return this.deploymentMode;
    }

    /**
     * Set possible values include: 'Unspecified', 'Hosted', 'Testing'.
     *
     * @param deploymentMode the deploymentMode value to set
     * @return the SimulatorContext object itself.
     */
    public SimulatorContext withDeploymentMode(SimulatorContextTypesDeploymentMode deploymentMode) {
        this.deploymentMode = deploymentMode;
        return this;
    }

    /**
     * Get where is this simulator deployed.
     *
     * @return the deploymentDetails value
     */
    public String deploymentDetails() {
        return this.deploymentDetails;
    }

    /**
     * Set where is this simulator deployed.
     *
     * @param deploymentDetails the deploymentDetails value to set
     * @return the SimulatorContext object itself.
     */
    public SimulatorContext withDeploymentDetails(String deploymentDetails) {
        this.deploymentDetails = deploymentDetails;
        return this;
    }

    /**
     * Get a simulator id generated by the client.
     *
     * @return the simulatorClientId value
     */
    public String simulatorClientId() {
        return this.simulatorClientId;
    }

    /**
     * Set a simulator id generated by the client.
     *
     * @param simulatorClientId the simulatorClientId value to set
     * @return the SimulatorContext object itself.
     */
    public SimulatorContext withSimulatorClientId(String simulatorClientId) {
        this.simulatorClientId = simulatorClientId;
        return this;
    }

    /**
     * Get the id of the collection.
     *
     * @return the collection value
     */
    public String collection() {
        return this.collection;
    }

    /**
     * Set the id of the collection.
     *
     * @param collection the collection value to set
     * @return the SimulatorContext object itself.
     */
    public SimulatorContext withCollection(String collection) {
        this.collection = collection;
        return this;
    }

    /**
     * Get the id of the package.
     *
     * @return the packageProperty value
     */
    public String packageProperty() {
        return this.packageProperty;
    }

    /**
     * Set the id of the package.
     *
     * @param packageProperty the packageProperty value to set
     * @return the SimulatorContext object itself.
     */
    public SimulatorContext withPackageProperty(String packageProperty) {
        this.packageProperty = packageProperty;
        return this;
    }

    /**
     * Get the purpose value.
     *
     * @return the purpose value
     */
    public Purpose purpose() {
        return this.purpose;
    }

    /**
     * Set the purpose value.
     *
     * @param purpose the purpose value to set
     * @return the SimulatorContext object itself.
     */
    public SimulatorContext withPurpose(Purpose purpose) {
        this.purpose = purpose;
        return this;
    }

}
