
io.swagger.v3.oas.models.media.BinarySchema Maven / Gradle / Ivy
package io.swagger.v3.oas.models.media;
import java.util.Arrays;
import java.util.Base64;
import java.util.List;
import java.util.Objects;
/**
* BinarySchema
*/
public class BinarySchema extends Schema {
public BinarySchema() {
super("string", "binary");
}
@Override
public BinarySchema type(String type) {
super.setType(type);
return this;
}
@Override
public BinarySchema format(String format) {
super.setFormat(format);
return this;
}
public BinarySchema _default(byte[] _default) {
super.setDefault(_default);
return this;
}
@Override
protected byte[] cast(Object value) {
if (value == null) {
return null;
}
if (value instanceof byte[]) {
return (byte[]) value;
}
try {
if (value instanceof String) {
if (
(System.getProperty(BINARY_STRING_CONVERSION_PROPERTY) != null && System.getProperty(BINARY_STRING_CONVERSION_PROPERTY).equals(BynaryStringConversion.BINARY_STRING_CONVERSION_BASE64.toString())) ||
(System.getenv(BINARY_STRING_CONVERSION_PROPERTY) != null && System.getenv(BINARY_STRING_CONVERSION_PROPERTY).equals(BynaryStringConversion.BINARY_STRING_CONVERSION_BASE64.toString()))) {
return Base64.getDecoder().decode((String) value);
}
return value.toString().getBytes();
}
return value.toString().getBytes();
} catch (Throwable e) {
return null;
}
}
public BinarySchema _enum(List _enum) {
super.setEnum(_enum);
return this;
}
public BinarySchema addEnumItem(byte[] _enumItem) {
super.addEnumItemObject(_enumItem);
return this;
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
return super.equals(o);
}
@Override
public int hashCode() {
return Objects.hash(Arrays.hashCode(_default), _enum, super.hashCode());
}
@Override
public String toString() {
return "class BinarySchema {\n" +
" " + toIndentedString(super.toString()) + "\n" +
"}";
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy