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

com.mux.sdk.models.CreateWebInputRequest Maven / Gradle / Ivy

The newest version!
/*
 * Mux API
 * Mux is how developers build online video. This API encompasses both Mux Video and Mux Data functionality to help you build your video-related projects better and faster than ever before.
 *
 * The version of the OpenAPI document: v1
 * Contact: [email protected]
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */


package com.mux.sdk.models;

import java.util.Objects;
import java.util.Arrays;
import com.google.gson.TypeAdapter;
import com.google.gson.annotations.JsonAdapter;
import com.google.gson.annotations.SerializedName;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonWriter;
import com.mux.sdk.models.WebInput;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.IOException;

/**
 * CreateWebInputRequest
 */
@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
public class CreateWebInputRequest {
  public static final String SERIALIZED_NAME_ID = "id";
  @SerializedName(SERIALIZED_NAME_ID)
  private String id;

  public static final String SERIALIZED_NAME_CREATED_AT = "created_at";
  @SerializedName(SERIALIZED_NAME_CREATED_AT)
  private String createdAt;

  public static final String SERIALIZED_NAME_URL = "url";
  @SerializedName(SERIALIZED_NAME_URL)
  private String url;

  public static final String SERIALIZED_NAME_AUTO_LAUNCH = "auto_launch";
  @SerializedName(SERIALIZED_NAME_AUTO_LAUNCH)
  private Boolean autoLaunch;

  public static final String SERIALIZED_NAME_LIVE_STREAM_ID = "live_stream_id";
  @SerializedName(SERIALIZED_NAME_LIVE_STREAM_ID)
  private String liveStreamId;

  /**
   * Gets or Sets status
   */
  @JsonAdapter(StatusEnum.Adapter.class)
  public enum StatusEnum {
    IDLE("idle"),
    
    LAUNCHING("launching"),
    
    STREAMING("streaming");

    private String value;

    StatusEnum(String value) {
      this.value = value;
    }

    public String getValue() {
      return value;
    }

    @Override
    public String toString() {
      return String.valueOf(value);
    }

    public static StatusEnum fromValue(String value) {
      for (StatusEnum b : StatusEnum.values()) {
        if (b.value.equals(value)) {
          return b;
        }
      }
      throw new IllegalArgumentException("Unexpected value '" + value + "'");
    }

    public static class Adapter extends TypeAdapter {
      @Override
      public void write(final JsonWriter jsonWriter, final StatusEnum enumeration) throws IOException {
        jsonWriter.value(enumeration.getValue());
      }

      @Override
      public StatusEnum read(final JsonReader jsonReader) throws IOException {
        String value =  jsonReader.nextString();
        return StatusEnum.fromValue(value);
      }
    }
  }

  public static final String SERIALIZED_NAME_STATUS = "status";
  @SerializedName(SERIALIZED_NAME_STATUS)
  private StatusEnum status;

  public static final String SERIALIZED_NAME_PASSTHROUGH = "passthrough";
  @SerializedName(SERIALIZED_NAME_PASSTHROUGH)
  private String passthrough;

  /**
   * The resolution of the viewport of the Web Input's browser instance. Defaults to 1920x1080 if not set.
   */
  @JsonAdapter(ResolutionEnum.Adapter.class)
  public enum ResolutionEnum {
    _1920X1080("1920x1080"),
    
    _1280X720("1280x720"),
    
    _1080X1920("1080x1920"),
    
    _720X1280("720x1280"),
    
    _1080X1080("1080x1080"),
    
    _720X720("720x720");

    private String value;

    ResolutionEnum(String value) {
      this.value = value;
    }

    public String getValue() {
      return value;
    }

    @Override
    public String toString() {
      return String.valueOf(value);
    }

    public static ResolutionEnum fromValue(String value) {
      for (ResolutionEnum b : ResolutionEnum.values()) {
        if (b.value.equals(value)) {
          return b;
        }
      }
      throw new IllegalArgumentException("Unexpected value '" + value + "'");
    }

    public static class Adapter extends TypeAdapter {
      @Override
      public void write(final JsonWriter jsonWriter, final ResolutionEnum enumeration) throws IOException {
        jsonWriter.value(enumeration.getValue());
      }

      @Override
      public ResolutionEnum read(final JsonReader jsonReader) throws IOException {
        String value =  jsonReader.nextString();
        return ResolutionEnum.fromValue(value);
      }
    }
  }

  public static final String SERIALIZED_NAME_RESOLUTION = "resolution";
  @SerializedName(SERIALIZED_NAME_RESOLUTION)
  private ResolutionEnum resolution = ResolutionEnum._1920X1080;

  public static final String SERIALIZED_NAME_TIMEOUT = "timeout";
  @SerializedName(SERIALIZED_NAME_TIMEOUT)
  private Integer timeout = 3600;


  public CreateWebInputRequest id(String id) {
    
    this.id = id;
    return this;
  }

   /**
   * Unique identifier for the Web Input.
   * @return id
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(value = "Unique identifier for the Web Input.")

  public String getId() {
    return id;
  }


  public void setId(String id) {
    this.id = id;
  }


  public CreateWebInputRequest createdAt(String createdAt) {
    
    this.createdAt = createdAt;
    return this;
  }

   /**
   * Time the Web Input was created, defined as a Unix timestamp (seconds since epoch).
   * @return createdAt
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(value = "Time the Web Input was created, defined as a Unix timestamp (seconds since epoch).")

  public String getCreatedAt() {
    return createdAt;
  }


  public void setCreatedAt(String createdAt) {
    this.createdAt = createdAt;
  }


  public CreateWebInputRequest url(String url) {
    
    this.url = url;
    return this;
  }

   /**
   * The URL for the Web Input to load.
   * @return url
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(value = "The URL for the Web Input to load.")

  public String getUrl() {
    return url;
  }


  public void setUrl(String url) {
    this.url = url;
  }


  public CreateWebInputRequest autoLaunch(Boolean autoLaunch) {
    
    this.autoLaunch = autoLaunch;
    return this;
  }

   /**
   * When set to `true` the Web Input will automatically launch and start streaming immediately after creation
   * @return autoLaunch
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(value = "When set to `true` the Web Input will automatically launch and start streaming immediately after creation")

  public Boolean getAutoLaunch() {
    return autoLaunch;
  }


  public void setAutoLaunch(Boolean autoLaunch) {
    this.autoLaunch = autoLaunch;
  }


  public CreateWebInputRequest liveStreamId(String liveStreamId) {
    
    this.liveStreamId = liveStreamId;
    return this;
  }

   /**
   * The Live Stream ID to broadcast this Web Input to
   * @return liveStreamId
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(value = "The Live Stream ID to broadcast this Web Input to")

  public String getLiveStreamId() {
    return liveStreamId;
  }


  public void setLiveStreamId(String liveStreamId) {
    this.liveStreamId = liveStreamId;
  }


  public CreateWebInputRequest status(StatusEnum status) {
    
    this.status = status;
    return this;
  }

   /**
   * Get status
   * @return status
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(value = "")

  public StatusEnum getStatus() {
    return status;
  }


  public void setStatus(StatusEnum status) {
    this.status = status;
  }


  public CreateWebInputRequest passthrough(String passthrough) {
    
    this.passthrough = passthrough;
    return this;
  }

   /**
   * Arbitrary metadata that will be included in the Web Input details and related webhooks. Can be used to store your own ID for the Web Input. **Max: 255 characters**.
   * @return passthrough
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(value = "Arbitrary metadata that will be included in the Web Input details and related webhooks. Can be used to store your own ID for the Web Input. **Max: 255 characters**.")

  public String getPassthrough() {
    return passthrough;
  }


  public void setPassthrough(String passthrough) {
    this.passthrough = passthrough;
  }


  public CreateWebInputRequest resolution(ResolutionEnum resolution) {
    
    this.resolution = resolution;
    return this;
  }

   /**
   * The resolution of the viewport of the Web Input's browser instance. Defaults to 1920x1080 if not set.
   * @return resolution
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(value = "The resolution of the viewport of the Web Input's browser instance. Defaults to 1920x1080 if not set.")

  public ResolutionEnum getResolution() {
    return resolution;
  }


  public void setResolution(ResolutionEnum resolution) {
    this.resolution = resolution;
  }


  public CreateWebInputRequest timeout(Integer timeout) {
    
    this.timeout = timeout;
    return this;
  }

   /**
   * The number of seconds that the Web Input should stream for before automatically shutting down.
   * @return timeout
  **/
  @javax.annotation.Nullable
  @ApiModelProperty(value = "The number of seconds that the Web Input should stream for before automatically shutting down.")

  public Integer getTimeout() {
    return timeout;
  }


  public void setTimeout(Integer timeout) {
    this.timeout = timeout;
  }


  @Override
  public boolean equals(Object o) {
    if (this == o) {
      return true;
    }
    if (o == null || getClass() != o.getClass()) {
      return false;
    }
    CreateWebInputRequest createWebInputRequest = (CreateWebInputRequest) o;
    return Objects.equals(this.id, createWebInputRequest.id) &&
        Objects.equals(this.createdAt, createWebInputRequest.createdAt) &&
        Objects.equals(this.url, createWebInputRequest.url) &&
        Objects.equals(this.autoLaunch, createWebInputRequest.autoLaunch) &&
        Objects.equals(this.liveStreamId, createWebInputRequest.liveStreamId) &&
        Objects.equals(this.status, createWebInputRequest.status) &&
        Objects.equals(this.passthrough, createWebInputRequest.passthrough) &&
        Objects.equals(this.resolution, createWebInputRequest.resolution) &&
        Objects.equals(this.timeout, createWebInputRequest.timeout);
  }

  @Override
  public int hashCode() {
    return Objects.hash(id, createdAt, url, autoLaunch, liveStreamId, status, passthrough, resolution, timeout);
  }

  @Override
  public String toString() {
    StringBuilder sb = new StringBuilder();
    sb.append("class CreateWebInputRequest {\n");
    sb.append("    id: ").append(toIndentedString(id)).append("\n");
    sb.append("    createdAt: ").append(toIndentedString(createdAt)).append("\n");
    sb.append("    url: ").append(toIndentedString(url)).append("\n");
    sb.append("    autoLaunch: ").append(toIndentedString(autoLaunch)).append("\n");
    sb.append("    liveStreamId: ").append(toIndentedString(liveStreamId)).append("\n");
    sb.append("    status: ").append(toIndentedString(status)).append("\n");
    sb.append("    passthrough: ").append(toIndentedString(passthrough)).append("\n");
    sb.append("    resolution: ").append(toIndentedString(resolution)).append("\n");
    sb.append("    timeout: ").append(toIndentedString(timeout)).append("\n");
    sb.append("}");
    return sb.toString();
  }

  /**
   * Convert the given object to string with each line indented by 4 spaces
   * (except the first line).
   */
  private String toIndentedString(Object o) {
    if (o == null) {
      return "null";
    }
    return o.toString().replace("\n", "\n    ");
  }

}





© 2015 - 2024 Weber Informatics LLC | Privacy Policy