![JAR search and dependency download from the Maven repository](/logo.png)
io.apicurio.datamodels.models.asyncapi.v30.AsyncApi30MultiFormatSchemaImpl Maven / Gradle / Ivy
package io.apicurio.datamodels.models.asyncapi.v30;
import com.fasterxml.jackson.databind.JsonNode;
import io.apicurio.datamodels.models.Node;
import io.apicurio.datamodels.models.NodeImpl;
import io.apicurio.datamodels.models.Schema;
import io.apicurio.datamodels.models.asyncapi.v30.visitors.AsyncApi30Visitor;
import io.apicurio.datamodels.models.union.AnySchemaUnion;
import io.apicurio.datamodels.models.visitors.Visitor;
import java.util.LinkedHashMap;
import java.util.Map;
public class AsyncApi30MultiFormatSchemaImpl extends NodeImpl implements AsyncApi30MultiFormatSchema {
private String $ref;
private String schemaFormat;
private AnySchemaUnion schema;
private Map extensions;
@Override
public String get$ref() {
return $ref;
}
@Override
public void set$ref(String value) {
this.$ref = value;
}
@Override
public String getSchemaFormat() {
return schemaFormat;
}
@Override
public void setSchemaFormat(String value) {
this.schemaFormat = value;
}
@Override
public AnySchemaUnion getSchema() {
return schema;
}
@Override
public void setSchema(AnySchemaUnion value) {
this.schema = value;
}
@Override
public AsyncApi30Schema createSchema() {
AsyncApi30SchemaImpl node = new AsyncApi30SchemaImpl();
node.setParent(this);
return node;
}
@Override
public Map getExtensions() {
return extensions;
}
@Override
public void addExtension(String name, JsonNode value) {
if (this.extensions == null) {
this.extensions = new LinkedHashMap<>();
}
this.extensions.put(name, value);
}
@Override
public void clearExtensions() {
if (this.extensions != null) {
this.extensions.clear();
}
}
@Override
public void removeExtension(String name) {
if (this.extensions != null) {
this.extensions.remove(name);
}
}
@Override
public boolean isMultiFormatSchema() {
return true;
}
@Override
public AsyncApi30MultiFormatSchema asMultiFormatSchema() {
return this;
}
@Override
public boolean isSchema() {
return false;
}
@Override
public Schema asSchema() {
throw new ClassCastException();
}
@Override
public Object unionValue() {
return this;
}
@Override
public void accept(Visitor visitor) {
AsyncApi30Visitor viz = (AsyncApi30Visitor) visitor;
viz.visitMultiFormatSchema(this);
}
@Override
public Node emptyClone() {
return new AsyncApi30MultiFormatSchemaImpl();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy