/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ package dev.plexapi.sdk.models.operations; import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonInclude.Include; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; import dev.plexapi.sdk.utils.Utils; import java.lang.Boolean; import java.lang.Integer; import java.lang.Override; import java.lang.String; import java.util.Objects; import java.util.Optional; public class GetMetaDataByRatingKeyStream { @JsonInclude(Include.NON_ABSENT) @JsonProperty("id") private Optional id; @JsonInclude(Include.NON_ABSENT) @JsonProperty("streamType") private Optional streamType; @JsonInclude(Include.NON_ABSENT) @JsonProperty("default") private Optional default_; @JsonInclude(Include.NON_ABSENT) @JsonProperty("codec") private Optional codec; @JsonInclude(Include.NON_ABSENT) @JsonProperty("index") private Optional index; @JsonInclude(Include.NON_ABSENT) @JsonProperty("bitrate") private Optional bitrate; @JsonInclude(Include.NON_ABSENT) @JsonProperty("bitDepth") private Optional bitDepth; @JsonInclude(Include.NON_ABSENT) @JsonProperty("chromaLocation") private Optional chromaLocation; @JsonInclude(Include.NON_ABSENT) @JsonProperty("chromaSubsampling") private Optional chromaSubsampling; @JsonInclude(Include.NON_ABSENT) @JsonProperty("codedHeight") private Optional codedHeight; @JsonInclude(Include.NON_ABSENT) @JsonProperty("codedWidth") private Optional codedWidth; @JsonInclude(Include.NON_ABSENT) @JsonProperty("colorPrimaries") private Optional colorPrimaries; @JsonInclude(Include.NON_ABSENT) @JsonProperty("colorRange") private Optional colorRange; @JsonInclude(Include.NON_ABSENT) @JsonProperty("colorSpace") private Optional colorSpace; @JsonInclude(Include.NON_ABSENT) @JsonProperty("colorTrc") private Optional colorTrc; @JsonInclude(Include.NON_ABSENT) @JsonProperty("frameRate") private Optional frameRate; @JsonInclude(Include.NON_ABSENT) @JsonProperty("hasScalingMatrix") private Optional hasScalingMatrix; @JsonInclude(Include.NON_ABSENT) @JsonProperty("height") private Optional height; @JsonInclude(Include.NON_ABSENT) @JsonProperty("level") private Optional level; @JsonInclude(Include.NON_ABSENT) @JsonProperty("profile") private Optional profile; @JsonInclude(Include.NON_ABSENT) @JsonProperty("refFrames") private Optional refFrames; @JsonInclude(Include.NON_ABSENT) @JsonProperty("scanType") private Optional scanType; @JsonInclude(Include.NON_ABSENT) @JsonProperty("streamIdentifier") private Optional streamIdentifier; @JsonInclude(Include.NON_ABSENT) @JsonProperty("width") private Optional width; @JsonInclude(Include.NON_ABSENT) @JsonProperty("displayTitle") private Optional displayTitle; @JsonInclude(Include.NON_ABSENT) @JsonProperty("extendedDisplayTitle") private Optional extendedDisplayTitle; @JsonInclude(Include.NON_ABSENT) @JsonProperty("selected") private Optional selected; @JsonInclude(Include.NON_ABSENT) @JsonProperty("channels") private Optional channels; @JsonInclude(Include.NON_ABSENT) @JsonProperty("language") private Optional language; @JsonInclude(Include.NON_ABSENT) @JsonProperty("languageTag") private Optional languageTag; @JsonInclude(Include.NON_ABSENT) @JsonProperty("languageCode") private Optional languageCode; @JsonInclude(Include.NON_ABSENT) @JsonProperty("samplingRate") private Optional samplingRate; @JsonCreator public GetMetaDataByRatingKeyStream( @JsonProperty("id") Optional id, @JsonProperty("streamType") Optional streamType, @JsonProperty("default") Optional default_, @JsonProperty("codec") Optional codec, @JsonProperty("index") Optional index, @JsonProperty("bitrate") Optional bitrate, @JsonProperty("bitDepth") Optional bitDepth, @JsonProperty("chromaLocation") Optional chromaLocation, @JsonProperty("chromaSubsampling") Optional chromaSubsampling, @JsonProperty("codedHeight") Optional codedHeight, @JsonProperty("codedWidth") Optional codedWidth, @JsonProperty("colorPrimaries") Optional colorPrimaries, @JsonProperty("colorRange") Optional colorRange, @JsonProperty("colorSpace") Optional colorSpace, @JsonProperty("colorTrc") Optional colorTrc, @JsonProperty("frameRate") Optional frameRate, @JsonProperty("hasScalingMatrix") Optional hasScalingMatrix, @JsonProperty("height") Optional height, @JsonProperty("level") Optional level, @JsonProperty("profile") Optional profile, @JsonProperty("refFrames") Optional refFrames, @JsonProperty("scanType") Optional scanType, @JsonProperty("streamIdentifier") Optional streamIdentifier, @JsonProperty("width") Optional width, @JsonProperty("displayTitle") Optional displayTitle, @JsonProperty("extendedDisplayTitle") Optional extendedDisplayTitle, @JsonProperty("selected") Optional selected, @JsonProperty("channels") Optional channels, @JsonProperty("language") Optional language, @JsonProperty("languageTag") Optional languageTag, @JsonProperty("languageCode") Optional languageCode, @JsonProperty("samplingRate") Optional samplingRate) { Utils.checkNotNull(id, "id"); Utils.checkNotNull(streamType, "streamType"); Utils.checkNotNull(default_, "default_"); Utils.checkNotNull(codec, "codec"); Utils.checkNotNull(index, "index"); Utils.checkNotNull(bitrate, "bitrate"); Utils.checkNotNull(bitDepth, "bitDepth"); Utils.checkNotNull(chromaLocation, "chromaLocation"); Utils.checkNotNull(chromaSubsampling, "chromaSubsampling"); Utils.checkNotNull(codedHeight, "codedHeight"); Utils.checkNotNull(codedWidth, "codedWidth"); Utils.checkNotNull(colorPrimaries, "colorPrimaries"); Utils.checkNotNull(colorRange, "colorRange"); Utils.checkNotNull(colorSpace, "colorSpace"); Utils.checkNotNull(colorTrc, "colorTrc"); Utils.checkNotNull(frameRate, "frameRate"); Utils.checkNotNull(hasScalingMatrix, "hasScalingMatrix"); Utils.checkNotNull(height, "height"); Utils.checkNotNull(level, "level"); Utils.checkNotNull(profile, "profile"); Utils.checkNotNull(refFrames, "refFrames"); Utils.checkNotNull(scanType, "scanType"); Utils.checkNotNull(streamIdentifier, "streamIdentifier"); Utils.checkNotNull(width, "width"); Utils.checkNotNull(displayTitle, "displayTitle"); Utils.checkNotNull(extendedDisplayTitle, "extendedDisplayTitle"); Utils.checkNotNull(selected, "selected"); Utils.checkNotNull(channels, "channels"); Utils.checkNotNull(language, "language"); Utils.checkNotNull(languageTag, "languageTag"); Utils.checkNotNull(languageCode, "languageCode"); Utils.checkNotNull(samplingRate, "samplingRate"); this.id = id; this.streamType = streamType; this.default_ = default_; this.codec = codec; this.index = index; this.bitrate = bitrate; this.bitDepth = bitDepth; this.chromaLocation = chromaLocation; this.chromaSubsampling = chromaSubsampling; this.codedHeight = codedHeight; this.codedWidth = codedWidth; this.colorPrimaries = colorPrimaries; this.colorRange = colorRange; this.colorSpace = colorSpace; this.colorTrc = colorTrc; this.frameRate = frameRate; this.hasScalingMatrix = hasScalingMatrix; this.height = height; this.level = level; this.profile = profile; this.refFrames = refFrames; this.scanType = scanType; this.streamIdentifier = streamIdentifier; this.width = width; this.displayTitle = displayTitle; this.extendedDisplayTitle = extendedDisplayTitle; this.selected = selected; this.channels = channels; this.language = language; this.languageTag = languageTag; this.languageCode = languageCode; this.samplingRate = samplingRate; } public GetMetaDataByRatingKeyStream() { this(Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()); } @JsonIgnore public Optional id() { return id; } @JsonIgnore public Optional streamType() { return streamType; } @JsonIgnore public Optional default_() { return default_; } @JsonIgnore public Optional codec() { return codec; } @JsonIgnore public Optional index() { return index; } @JsonIgnore public Optional bitrate() { return bitrate; } @JsonIgnore public Optional bitDepth() { return bitDepth; } @JsonIgnore public Optional chromaLocation() { return chromaLocation; } @JsonIgnore public Optional chromaSubsampling() { return chromaSubsampling; } @JsonIgnore public Optional codedHeight() { return codedHeight; } @JsonIgnore public Optional codedWidth() { return codedWidth; } @JsonIgnore public Optional colorPrimaries() { return colorPrimaries; } @JsonIgnore public Optional colorRange() { return colorRange; } @JsonIgnore public Optional colorSpace() { return colorSpace; } @JsonIgnore public Optional colorTrc() { return colorTrc; } @JsonIgnore public Optional frameRate() { return frameRate; } @JsonIgnore public Optional hasScalingMatrix() { return hasScalingMatrix; } @JsonIgnore public Optional height() { return height; } @JsonIgnore public Optional level() { return level; } @JsonIgnore public Optional profile() { return profile; } @JsonIgnore public Optional refFrames() { return refFrames; } @JsonIgnore public Optional scanType() { return scanType; } @JsonIgnore public Optional streamIdentifier() { return streamIdentifier; } @JsonIgnore public Optional width() { return width; } @JsonIgnore public Optional displayTitle() { return displayTitle; } @JsonIgnore public Optional extendedDisplayTitle() { return extendedDisplayTitle; } @JsonIgnore public Optional selected() { return selected; } @JsonIgnore public Optional channels() { return channels; } @JsonIgnore public Optional language() { return language; } @JsonIgnore public Optional languageTag() { return languageTag; } @JsonIgnore public Optional languageCode() { return languageCode; } @JsonIgnore public Optional samplingRate() { return samplingRate; } public final static Builder builder() { return new Builder(); } public GetMetaDataByRatingKeyStream withId(int id) { Utils.checkNotNull(id, "id"); this.id = Optional.ofNullable(id); return this; } public GetMetaDataByRatingKeyStream withId(Optional id) { Utils.checkNotNull(id, "id"); this.id = id; return this; } public GetMetaDataByRatingKeyStream withStreamType(int streamType) { Utils.checkNotNull(streamType, "streamType"); this.streamType = Optional.ofNullable(streamType); return this; } public GetMetaDataByRatingKeyStream withStreamType(Optional streamType) { Utils.checkNotNull(streamType, "streamType"); this.streamType = streamType; return this; } public GetMetaDataByRatingKeyStream withDefault(boolean default_) { Utils.checkNotNull(default_, "default_"); this.default_ = Optional.ofNullable(default_); return this; } public GetMetaDataByRatingKeyStream withDefault(Optional default_) { Utils.checkNotNull(default_, "default_"); this.default_ = default_; return this; } public GetMetaDataByRatingKeyStream withCodec(String codec) { Utils.checkNotNull(codec, "codec"); this.codec = Optional.ofNullable(codec); return this; } public GetMetaDataByRatingKeyStream withCodec(Optional codec) { Utils.checkNotNull(codec, "codec"); this.codec = codec; return this; } public GetMetaDataByRatingKeyStream withIndex(int index) { Utils.checkNotNull(index, "index"); this.index = Optional.ofNullable(index); return this; } public GetMetaDataByRatingKeyStream withIndex(Optional index) { Utils.checkNotNull(index, "index"); this.index = index; return this; } public GetMetaDataByRatingKeyStream withBitrate(int bitrate) { Utils.checkNotNull(bitrate, "bitrate"); this.bitrate = Optional.ofNullable(bitrate); return this; } public GetMetaDataByRatingKeyStream withBitrate(Optional bitrate) { Utils.checkNotNull(bitrate, "bitrate"); this.bitrate = bitrate; return this; } public GetMetaDataByRatingKeyStream withBitDepth(int bitDepth) { Utils.checkNotNull(bitDepth, "bitDepth"); this.bitDepth = Optional.ofNullable(bitDepth); return this; } public GetMetaDataByRatingKeyStream withBitDepth(Optional bitDepth) { Utils.checkNotNull(bitDepth, "bitDepth"); this.bitDepth = bitDepth; return this; } public GetMetaDataByRatingKeyStream withChromaLocation(String chromaLocation) { Utils.checkNotNull(chromaLocation, "chromaLocation"); this.chromaLocation = Optional.ofNullable(chromaLocation); return this; } public GetMetaDataByRatingKeyStream withChromaLocation(Optional chromaLocation) { Utils.checkNotNull(chromaLocation, "chromaLocation"); this.chromaLocation = chromaLocation; return this; } public GetMetaDataByRatingKeyStream withChromaSubsampling(String chromaSubsampling) { Utils.checkNotNull(chromaSubsampling, "chromaSubsampling"); this.chromaSubsampling = Optional.ofNullable(chromaSubsampling); return this; } public GetMetaDataByRatingKeyStream withChromaSubsampling(Optional chromaSubsampling) { Utils.checkNotNull(chromaSubsampling, "chromaSubsampling"); this.chromaSubsampling = chromaSubsampling; return this; } public GetMetaDataByRatingKeyStream withCodedHeight(int codedHeight) { Utils.checkNotNull(codedHeight, "codedHeight"); this.codedHeight = Optional.ofNullable(codedHeight); return this; } public GetMetaDataByRatingKeyStream withCodedHeight(Optional codedHeight) { Utils.checkNotNull(codedHeight, "codedHeight"); this.codedHeight = codedHeight; return this; } public GetMetaDataByRatingKeyStream withCodedWidth(int codedWidth) { Utils.checkNotNull(codedWidth, "codedWidth"); this.codedWidth = Optional.ofNullable(codedWidth); return this; } public GetMetaDataByRatingKeyStream withCodedWidth(Optional codedWidth) { Utils.checkNotNull(codedWidth, "codedWidth"); this.codedWidth = codedWidth; return this; } public GetMetaDataByRatingKeyStream withColorPrimaries(String colorPrimaries) { Utils.checkNotNull(colorPrimaries, "colorPrimaries"); this.colorPrimaries = Optional.ofNullable(colorPrimaries); return this; } public GetMetaDataByRatingKeyStream withColorPrimaries(Optional colorPrimaries) { Utils.checkNotNull(colorPrimaries, "colorPrimaries"); this.colorPrimaries = colorPrimaries; return this; } public GetMetaDataByRatingKeyStream withColorRange(String colorRange) { Utils.checkNotNull(colorRange, "colorRange"); this.colorRange = Optional.ofNullable(colorRange); return this; } public GetMetaDataByRatingKeyStream withColorRange(Optional colorRange) { Utils.checkNotNull(colorRange, "colorRange"); this.colorRange = colorRange; return this; } public GetMetaDataByRatingKeyStream withColorSpace(String colorSpace) { Utils.checkNotNull(colorSpace, "colorSpace"); this.colorSpace = Optional.ofNullable(colorSpace); return this; } public GetMetaDataByRatingKeyStream withColorSpace(Optional colorSpace) { Utils.checkNotNull(colorSpace, "colorSpace"); this.colorSpace = colorSpace; return this; } public GetMetaDataByRatingKeyStream withColorTrc(String colorTrc) { Utils.checkNotNull(colorTrc, "colorTrc"); this.colorTrc = Optional.ofNullable(colorTrc); return this; } public GetMetaDataByRatingKeyStream withColorTrc(Optional colorTrc) { Utils.checkNotNull(colorTrc, "colorTrc"); this.colorTrc = colorTrc; return this; } public GetMetaDataByRatingKeyStream withFrameRate(int frameRate) { Utils.checkNotNull(frameRate, "frameRate"); this.frameRate = Optional.ofNullable(frameRate); return this; } public GetMetaDataByRatingKeyStream withFrameRate(Optional frameRate) { Utils.checkNotNull(frameRate, "frameRate"); this.frameRate = frameRate; return this; } public GetMetaDataByRatingKeyStream withHasScalingMatrix(boolean hasScalingMatrix) { Utils.checkNotNull(hasScalingMatrix, "hasScalingMatrix"); this.hasScalingMatrix = Optional.ofNullable(hasScalingMatrix); return this; } public GetMetaDataByRatingKeyStream withHasScalingMatrix(Optional hasScalingMatrix) { Utils.checkNotNull(hasScalingMatrix, "hasScalingMatrix"); this.hasScalingMatrix = hasScalingMatrix; return this; } public GetMetaDataByRatingKeyStream withHeight(int height) { Utils.checkNotNull(height, "height"); this.height = Optional.ofNullable(height); return this; } public GetMetaDataByRatingKeyStream withHeight(Optional height) { Utils.checkNotNull(height, "height"); this.height = height; return this; } public GetMetaDataByRatingKeyStream withLevel(int level) { Utils.checkNotNull(level, "level"); this.level = Optional.ofNullable(level); return this; } public GetMetaDataByRatingKeyStream withLevel(Optional level) { Utils.checkNotNull(level, "level"); this.level = level; return this; } public GetMetaDataByRatingKeyStream withProfile(String profile) { Utils.checkNotNull(profile, "profile"); this.profile = Optional.ofNullable(profile); return this; } public GetMetaDataByRatingKeyStream withProfile(Optional profile) { Utils.checkNotNull(profile, "profile"); this.profile = profile; return this; } public GetMetaDataByRatingKeyStream withRefFrames(int refFrames) { Utils.checkNotNull(refFrames, "refFrames"); this.refFrames = Optional.ofNullable(refFrames); return this; } public GetMetaDataByRatingKeyStream withRefFrames(Optional refFrames) { Utils.checkNotNull(refFrames, "refFrames"); this.refFrames = refFrames; return this; } public GetMetaDataByRatingKeyStream withScanType(String scanType) { Utils.checkNotNull(scanType, "scanType"); this.scanType = Optional.ofNullable(scanType); return this; } public GetMetaDataByRatingKeyStream withScanType(Optional scanType) { Utils.checkNotNull(scanType, "scanType"); this.scanType = scanType; return this; } public GetMetaDataByRatingKeyStream withStreamIdentifier(String streamIdentifier) { Utils.checkNotNull(streamIdentifier, "streamIdentifier"); this.streamIdentifier = Optional.ofNullable(streamIdentifier); return this; } public GetMetaDataByRatingKeyStream withStreamIdentifier(Optional streamIdentifier) { Utils.checkNotNull(streamIdentifier, "streamIdentifier"); this.streamIdentifier = streamIdentifier; return this; } public GetMetaDataByRatingKeyStream withWidth(int width) { Utils.checkNotNull(width, "width"); this.width = Optional.ofNullable(width); return this; } public GetMetaDataByRatingKeyStream withWidth(Optional width) { Utils.checkNotNull(width, "width"); this.width = width; return this; } public GetMetaDataByRatingKeyStream withDisplayTitle(String displayTitle) { Utils.checkNotNull(displayTitle, "displayTitle"); this.displayTitle = Optional.ofNullable(displayTitle); return this; } public GetMetaDataByRatingKeyStream withDisplayTitle(Optional displayTitle) { Utils.checkNotNull(displayTitle, "displayTitle"); this.displayTitle = displayTitle; return this; } public GetMetaDataByRatingKeyStream withExtendedDisplayTitle(String extendedDisplayTitle) { Utils.checkNotNull(extendedDisplayTitle, "extendedDisplayTitle"); this.extendedDisplayTitle = Optional.ofNullable(extendedDisplayTitle); return this; } public GetMetaDataByRatingKeyStream withExtendedDisplayTitle(Optional extendedDisplayTitle) { Utils.checkNotNull(extendedDisplayTitle, "extendedDisplayTitle"); this.extendedDisplayTitle = extendedDisplayTitle; return this; } public GetMetaDataByRatingKeyStream withSelected(boolean selected) { Utils.checkNotNull(selected, "selected"); this.selected = Optional.ofNullable(selected); return this; } public GetMetaDataByRatingKeyStream withSelected(Optional selected) { Utils.checkNotNull(selected, "selected"); this.selected = selected; return this; } public GetMetaDataByRatingKeyStream withChannels(int channels) { Utils.checkNotNull(channels, "channels"); this.channels = Optional.ofNullable(channels); return this; } public GetMetaDataByRatingKeyStream withChannels(Optional channels) { Utils.checkNotNull(channels, "channels"); this.channels = channels; return this; } public GetMetaDataByRatingKeyStream withLanguage(String language) { Utils.checkNotNull(language, "language"); this.language = Optional.ofNullable(language); return this; } public GetMetaDataByRatingKeyStream withLanguage(Optional language) { Utils.checkNotNull(language, "language"); this.language = language; return this; } public GetMetaDataByRatingKeyStream withLanguageTag(String languageTag) { Utils.checkNotNull(languageTag, "languageTag"); this.languageTag = Optional.ofNullable(languageTag); return this; } public GetMetaDataByRatingKeyStream withLanguageTag(Optional languageTag) { Utils.checkNotNull(languageTag, "languageTag"); this.languageTag = languageTag; return this; } public GetMetaDataByRatingKeyStream withLanguageCode(String languageCode) { Utils.checkNotNull(languageCode, "languageCode"); this.languageCode = Optional.ofNullable(languageCode); return this; } public GetMetaDataByRatingKeyStream withLanguageCode(Optional languageCode) { Utils.checkNotNull(languageCode, "languageCode"); this.languageCode = languageCode; return this; } public GetMetaDataByRatingKeyStream withSamplingRate(int samplingRate) { Utils.checkNotNull(samplingRate, "samplingRate"); this.samplingRate = Optional.ofNullable(samplingRate); return this; } public GetMetaDataByRatingKeyStream withSamplingRate(Optional samplingRate) { Utils.checkNotNull(samplingRate, "samplingRate"); this.samplingRate = samplingRate; return this; } @Override public boolean equals(java.lang.Object o) { if (this == o) { return true; } if (o == null || getClass() != o.getClass()) { return false; } GetMetaDataByRatingKeyStream other = (GetMetaDataByRatingKeyStream) o; return Objects.deepEquals(this.id, other.id) && Objects.deepEquals(this.streamType, other.streamType) && Objects.deepEquals(this.default_, other.default_) && Objects.deepEquals(this.codec, other.codec) && Objects.deepEquals(this.index, other.index) && Objects.deepEquals(this.bitrate, other.bitrate) && Objects.deepEquals(this.bitDepth, other.bitDepth) && Objects.deepEquals(this.chromaLocation, other.chromaLocation) && Objects.deepEquals(this.chromaSubsampling, other.chromaSubsampling) && Objects.deepEquals(this.codedHeight, other.codedHeight) && Objects.deepEquals(this.codedWidth, other.codedWidth) && Objects.deepEquals(this.colorPrimaries, other.colorPrimaries) && Objects.deepEquals(this.colorRange, other.colorRange) && Objects.deepEquals(this.colorSpace, other.colorSpace) && Objects.deepEquals(this.colorTrc, other.colorTrc) && Objects.deepEquals(this.frameRate, other.frameRate) && Objects.deepEquals(this.hasScalingMatrix, other.hasScalingMatrix) && Objects.deepEquals(this.height, other.height) && Objects.deepEquals(this.level, other.level) && Objects.deepEquals(this.profile, other.profile) && Objects.deepEquals(this.refFrames, other.refFrames) && Objects.deepEquals(this.scanType, other.scanType) && Objects.deepEquals(this.streamIdentifier, other.streamIdentifier) && Objects.deepEquals(this.width, other.width) && Objects.deepEquals(this.displayTitle, other.displayTitle) && Objects.deepEquals(this.extendedDisplayTitle, other.extendedDisplayTitle) && Objects.deepEquals(this.selected, other.selected) && Objects.deepEquals(this.channels, other.channels) && Objects.deepEquals(this.language, other.language) && Objects.deepEquals(this.languageTag, other.languageTag) && Objects.deepEquals(this.languageCode, other.languageCode) && Objects.deepEquals(this.samplingRate, other.samplingRate); } @Override public int hashCode() { return Objects.hash( id, streamType, default_, codec, index, bitrate, bitDepth, chromaLocation, chromaSubsampling, codedHeight, codedWidth, colorPrimaries, colorRange, colorSpace, colorTrc, frameRate, hasScalingMatrix, height, level, profile, refFrames, scanType, streamIdentifier, width, displayTitle, extendedDisplayTitle, selected, channels, language, languageTag, languageCode, samplingRate); } @Override public String toString() { return Utils.toString(GetMetaDataByRatingKeyStream.class, "id", id, "streamType", streamType, "default_", default_, "codec", codec, "index", index, "bitrate", bitrate, "bitDepth", bitDepth, "chromaLocation", chromaLocation, "chromaSubsampling", chromaSubsampling, "codedHeight", codedHeight, "codedWidth", codedWidth, "colorPrimaries", colorPrimaries, "colorRange", colorRange, "colorSpace", colorSpace, "colorTrc", colorTrc, "frameRate", frameRate, "hasScalingMatrix", hasScalingMatrix, "height", height, "level", level, "profile", profile, "refFrames", refFrames, "scanType", scanType, "streamIdentifier", streamIdentifier, "width", width, "displayTitle", displayTitle, "extendedDisplayTitle", extendedDisplayTitle, "selected", selected, "channels", channels, "language", language, "languageTag", languageTag, "languageCode", languageCode, "samplingRate", samplingRate); } public final static class Builder { private Optional id = Optional.empty(); private Optional streamType = Optional.empty(); private Optional default_ = Optional.empty(); private Optional codec = Optional.empty(); private Optional index = Optional.empty(); private Optional bitrate = Optional.empty(); private Optional bitDepth = Optional.empty(); private Optional chromaLocation = Optional.empty(); private Optional chromaSubsampling = Optional.empty(); private Optional codedHeight = Optional.empty(); private Optional codedWidth = Optional.empty(); private Optional colorPrimaries = Optional.empty(); private Optional colorRange = Optional.empty(); private Optional colorSpace = Optional.empty(); private Optional colorTrc = Optional.empty(); private Optional frameRate = Optional.empty(); private Optional hasScalingMatrix = Optional.empty(); private Optional height = Optional.empty(); private Optional level = Optional.empty(); private Optional profile = Optional.empty(); private Optional refFrames = Optional.empty(); private Optional scanType = Optional.empty(); private Optional streamIdentifier = Optional.empty(); private Optional width = Optional.empty(); private Optional displayTitle = Optional.empty(); private Optional extendedDisplayTitle = Optional.empty(); private Optional selected = Optional.empty(); private Optional channels = Optional.empty(); private Optional language = Optional.empty(); private Optional languageTag = Optional.empty(); private Optional languageCode = Optional.empty(); private Optional samplingRate = Optional.empty(); private Builder() { // force use of static builder() method } public Builder id(int id) { Utils.checkNotNull(id, "id"); this.id = Optional.ofNullable(id); return this; } public Builder id(Optional id) { Utils.checkNotNull(id, "id"); this.id = id; return this; } public Builder streamType(int streamType) { Utils.checkNotNull(streamType, "streamType"); this.streamType = Optional.ofNullable(streamType); return this; } public Builder streamType(Optional streamType) { Utils.checkNotNull(streamType, "streamType"); this.streamType = streamType; return this; } public Builder default_(boolean default_) { Utils.checkNotNull(default_, "default_"); this.default_ = Optional.ofNullable(default_); return this; } public Builder default_(Optional default_) { Utils.checkNotNull(default_, "default_"); this.default_ = default_; return this; } public Builder codec(String codec) { Utils.checkNotNull(codec, "codec"); this.codec = Optional.ofNullable(codec); return this; } public Builder codec(Optional codec) { Utils.checkNotNull(codec, "codec"); this.codec = codec; return this; } public Builder index(int index) { Utils.checkNotNull(index, "index"); this.index = Optional.ofNullable(index); return this; } public Builder index(Optional index) { Utils.checkNotNull(index, "index"); this.index = index; return this; } public Builder bitrate(int bitrate) { Utils.checkNotNull(bitrate, "bitrate"); this.bitrate = Optional.ofNullable(bitrate); return this; } public Builder bitrate(Optional bitrate) { Utils.checkNotNull(bitrate, "bitrate"); this.bitrate = bitrate; return this; } public Builder bitDepth(int bitDepth) { Utils.checkNotNull(bitDepth, "bitDepth"); this.bitDepth = Optional.ofNullable(bitDepth); return this; } public Builder bitDepth(Optional bitDepth) { Utils.checkNotNull(bitDepth, "bitDepth"); this.bitDepth = bitDepth; return this; } public Builder chromaLocation(String chromaLocation) { Utils.checkNotNull(chromaLocation, "chromaLocation"); this.chromaLocation = Optional.ofNullable(chromaLocation); return this; } public Builder chromaLocation(Optional chromaLocation) { Utils.checkNotNull(chromaLocation, "chromaLocation"); this.chromaLocation = chromaLocation; return this; } public Builder chromaSubsampling(String chromaSubsampling) { Utils.checkNotNull(chromaSubsampling, "chromaSubsampling"); this.chromaSubsampling = Optional.ofNullable(chromaSubsampling); return this; } public Builder chromaSubsampling(Optional chromaSubsampling) { Utils.checkNotNull(chromaSubsampling, "chromaSubsampling"); this.chromaSubsampling = chromaSubsampling; return this; } public Builder codedHeight(int codedHeight) { Utils.checkNotNull(codedHeight, "codedHeight"); this.codedHeight = Optional.ofNullable(codedHeight); return this; } public Builder codedHeight(Optional codedHeight) { Utils.checkNotNull(codedHeight, "codedHeight"); this.codedHeight = codedHeight; return this; } public Builder codedWidth(int codedWidth) { Utils.checkNotNull(codedWidth, "codedWidth"); this.codedWidth = Optional.ofNullable(codedWidth); return this; } public Builder codedWidth(Optional codedWidth) { Utils.checkNotNull(codedWidth, "codedWidth"); this.codedWidth = codedWidth; return this; } public Builder colorPrimaries(String colorPrimaries) { Utils.checkNotNull(colorPrimaries, "colorPrimaries"); this.colorPrimaries = Optional.ofNullable(colorPrimaries); return this; } public Builder colorPrimaries(Optional colorPrimaries) { Utils.checkNotNull(colorPrimaries, "colorPrimaries"); this.colorPrimaries = colorPrimaries; return this; } public Builder colorRange(String colorRange) { Utils.checkNotNull(colorRange, "colorRange"); this.colorRange = Optional.ofNullable(colorRange); return this; } public Builder colorRange(Optional colorRange) { Utils.checkNotNull(colorRange, "colorRange"); this.colorRange = colorRange; return this; } public Builder colorSpace(String colorSpace) { Utils.checkNotNull(colorSpace, "colorSpace"); this.colorSpace = Optional.ofNullable(colorSpace); return this; } public Builder colorSpace(Optional colorSpace) { Utils.checkNotNull(colorSpace, "colorSpace"); this.colorSpace = colorSpace; return this; } public Builder colorTrc(String colorTrc) { Utils.checkNotNull(colorTrc, "colorTrc"); this.colorTrc = Optional.ofNullable(colorTrc); return this; } public Builder colorTrc(Optional colorTrc) { Utils.checkNotNull(colorTrc, "colorTrc"); this.colorTrc = colorTrc; return this; } public Builder frameRate(int frameRate) { Utils.checkNotNull(frameRate, "frameRate"); this.frameRate = Optional.ofNullable(frameRate); return this; } public Builder frameRate(Optional frameRate) { Utils.checkNotNull(frameRate, "frameRate"); this.frameRate = frameRate; return this; } public Builder hasScalingMatrix(boolean hasScalingMatrix) { Utils.checkNotNull(hasScalingMatrix, "hasScalingMatrix"); this.hasScalingMatrix = Optional.ofNullable(hasScalingMatrix); return this; } public Builder hasScalingMatrix(Optional hasScalingMatrix) { Utils.checkNotNull(hasScalingMatrix, "hasScalingMatrix"); this.hasScalingMatrix = hasScalingMatrix; return this; } public Builder height(int height) { Utils.checkNotNull(height, "height"); this.height = Optional.ofNullable(height); return this; } public Builder height(Optional height) { Utils.checkNotNull(height, "height"); this.height = height; return this; } public Builder level(int level) { Utils.checkNotNull(level, "level"); this.level = Optional.ofNullable(level); return this; } public Builder level(Optional level) { Utils.checkNotNull(level, "level"); this.level = level; return this; } public Builder profile(String profile) { Utils.checkNotNull(profile, "profile"); this.profile = Optional.ofNullable(profile); return this; } public Builder profile(Optional profile) { Utils.checkNotNull(profile, "profile"); this.profile = profile; return this; } public Builder refFrames(int refFrames) { Utils.checkNotNull(refFrames, "refFrames"); this.refFrames = Optional.ofNullable(refFrames); return this; } public Builder refFrames(Optional refFrames) { Utils.checkNotNull(refFrames, "refFrames"); this.refFrames = refFrames; return this; } public Builder scanType(String scanType) { Utils.checkNotNull(scanType, "scanType"); this.scanType = Optional.ofNullable(scanType); return this; } public Builder scanType(Optional scanType) { Utils.checkNotNull(scanType, "scanType"); this.scanType = scanType; return this; } public Builder streamIdentifier(String streamIdentifier) { Utils.checkNotNull(streamIdentifier, "streamIdentifier"); this.streamIdentifier = Optional.ofNullable(streamIdentifier); return this; } public Builder streamIdentifier(Optional streamIdentifier) { Utils.checkNotNull(streamIdentifier, "streamIdentifier"); this.streamIdentifier = streamIdentifier; return this; } public Builder width(int width) { Utils.checkNotNull(width, "width"); this.width = Optional.ofNullable(width); return this; } public Builder width(Optional width) { Utils.checkNotNull(width, "width"); this.width = width; return this; } public Builder displayTitle(String displayTitle) { Utils.checkNotNull(displayTitle, "displayTitle"); this.displayTitle = Optional.ofNullable(displayTitle); return this; } public Builder displayTitle(Optional displayTitle) { Utils.checkNotNull(displayTitle, "displayTitle"); this.displayTitle = displayTitle; return this; } public Builder extendedDisplayTitle(String extendedDisplayTitle) { Utils.checkNotNull(extendedDisplayTitle, "extendedDisplayTitle"); this.extendedDisplayTitle = Optional.ofNullable(extendedDisplayTitle); return this; } public Builder extendedDisplayTitle(Optional extendedDisplayTitle) { Utils.checkNotNull(extendedDisplayTitle, "extendedDisplayTitle"); this.extendedDisplayTitle = extendedDisplayTitle; return this; } public Builder selected(boolean selected) { Utils.checkNotNull(selected, "selected"); this.selected = Optional.ofNullable(selected); return this; } public Builder selected(Optional selected) { Utils.checkNotNull(selected, "selected"); this.selected = selected; return this; } public Builder channels(int channels) { Utils.checkNotNull(channels, "channels"); this.channels = Optional.ofNullable(channels); return this; } public Builder channels(Optional channels) { Utils.checkNotNull(channels, "channels"); this.channels = channels; return this; } public Builder language(String language) { Utils.checkNotNull(language, "language"); this.language = Optional.ofNullable(language); return this; } public Builder language(Optional language) { Utils.checkNotNull(language, "language"); this.language = language; return this; } public Builder languageTag(String languageTag) { Utils.checkNotNull(languageTag, "languageTag"); this.languageTag = Optional.ofNullable(languageTag); return this; } public Builder languageTag(Optional languageTag) { Utils.checkNotNull(languageTag, "languageTag"); this.languageTag = languageTag; return this; } public Builder languageCode(String languageCode) { Utils.checkNotNull(languageCode, "languageCode"); this.languageCode = Optional.ofNullable(languageCode); return this; } public Builder languageCode(Optional languageCode) { Utils.checkNotNull(languageCode, "languageCode"); this.languageCode = languageCode; return this; } public Builder samplingRate(int samplingRate) { Utils.checkNotNull(samplingRate, "samplingRate"); this.samplingRate = Optional.ofNullable(samplingRate); return this; } public Builder samplingRate(Optional samplingRate) { Utils.checkNotNull(samplingRate, "samplingRate"); this.samplingRate = samplingRate; return this; } public GetMetaDataByRatingKeyStream build() { return new GetMetaDataByRatingKeyStream( id, streamType, default_, codec, index, bitrate, bitDepth, chromaLocation, chromaSubsampling, codedHeight, codedWidth, colorPrimaries, colorRange, colorSpace, colorTrc, frameRate, hasScalingMatrix, height, level, profile, refFrames, scanType, streamIdentifier, width, displayTitle, extendedDisplayTitle, selected, channels, language, languageTag, languageCode, samplingRate); } } }