ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.535.1

This commit is contained in:
speakeasybot
2025-04-19 00:29:11 +00:00
parent 4b28ca3416
commit 0077561a6a
74 changed files with 8280 additions and 931 deletions

View File

@@ -3,39 +3,186 @@
*/
package dev.plexapi.sdk.models.operations;
import com.fasterxml.jackson.annotation.JsonValue;
import com.fasterxml.jackson.core.JacksonException;
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.core.JsonParser;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.DeserializationContext;
import com.fasterxml.jackson.databind.SerializerProvider;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.deser.std.StdDeserializer;
import com.fasterxml.jackson.databind.ser.std.StdSerializer;
import java.io.IOException;
import java.lang.Override;
import java.lang.String;
import java.lang.SuppressWarnings;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
/**
* <p>Wrapper class for an "open" enum. "Open" enums are those that are expected
* to evolve (particularly with the addition of enum members over time). If an
* open enum is used then the appearance of unexpected enum values (say in a
* response from an updated an API) will not bring about a runtime error thus
* ensuring that non-updated client versions can continue to work without error.
*
* <p>Note that instances are immutable and are singletons (an internal thread-safe
* cache is maintained to ensure that). As a consequence instances created with the
* same value will satisfy reference equality (via {@code ==}).
*
* <p>This class is intended to emulate an enum (in terms of common usage and with
* reference equality) but with the ability to carry unknown values. Unfortunately
* Java does not permit the use of an instance in a switch expression but you can
* use the {@code asEnum()} method (after dealing with the `Optional` appropriately).
*
*/
/**
* State
*
* <p>The state of the media item
*/
public enum State {
PLAYING("playing"),
PAUSED("paused"),
STOPPED("stopped");
@JsonDeserialize(using = State._Deserializer.class)
@JsonSerialize(using = State._Serializer.class)
public class State {
public static final State PLAYING = new State("playing");
public static final State PAUSED = new State("paused");
public static final State STOPPED = new State("stopped");
// This map will grow whenever a Color gets created with a new
// unrecognized value (a potential memory leak if the user is not
// careful). Keep this field lower case to avoid clashing with
// generated member names which will always be upper cased (Java
// convention)
private static final Map<String, State> values = createValuesMap();
private static final Map<String, StateEnum> enums = createEnumsMap();
@JsonValue
private final String value;
private State(String value) {
this.value = value;
}
/**
* Returns a State with the given value. For a specific value the
* returned object will always be a singleton so reference equality
* is satisfied when the values are the same.
*
* @param value value to be wrapped as State
*/
public static State of(String value) {
synchronized (State.class) {
return values.computeIfAbsent(value, v -> new State(v));
}
}
public String value() {
return value;
}
public static Optional<State> fromValue(String value) {
for (State o: State.values()) {
if (Objects.deepEquals(o.value, value)) {
return Optional.of(o);
}
public Optional<StateEnum> asEnum() {
return Optional.ofNullable(enums.getOrDefault(value, null));
}
public boolean isKnown() {
return asEnum().isPresent();
}
@Override
public int hashCode() {
return Objects.hash(value);
}
@Override
public boolean equals(java.lang.Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
State other = (State) obj;
return Objects.equals(value, other.value);
}
@Override
public String toString() {
return "State [value=" + value + "]";
}
// return an array just like an enum
public static State[] values() {
synchronized (State.class) {
return values.values().toArray(new State[] {});
}
}
private static final Map<String, State> createValuesMap() {
Map<String, State> map = new LinkedHashMap<>();
map.put("playing", PLAYING);
map.put("paused", PAUSED);
map.put("stopped", STOPPED);
return map;
}
private static final Map<String, StateEnum> createEnumsMap() {
Map<String, StateEnum> map = new HashMap<>();
map.put("playing", StateEnum.PLAYING);
map.put("paused", StateEnum.PAUSED);
map.put("stopped", StateEnum.STOPPED);
return map;
}
@SuppressWarnings("serial")
public static final class _Serializer extends StdSerializer<State> {
protected _Serializer() {
super(State.class);
}
@Override
public void serialize(State value, JsonGenerator g, SerializerProvider provider)
throws IOException, JsonProcessingException {
g.writeObject(value.value);
}
}
@SuppressWarnings("serial")
public static final class _Deserializer extends StdDeserializer<State> {
protected _Deserializer() {
super(State.class);
}
@Override
public State deserialize(JsonParser p, DeserializationContext ctxt)
throws IOException, JacksonException {
String v = p.readValueAs(new TypeReference<String>() {});
// use the factory method to ensure we get singletons
return State.of(v);
}
}
public enum StateEnum {
PLAYING("playing"),
PAUSED("paused"),
STOPPED("stopped"),;
private final String value;
private StateEnum(String value) {
this.value = value;
}
public String value() {
return value;
}
return Optional.empty();
}
}