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

io.apicurio.datamodels.models.asyncapi.v30.AsyncApi30MessageImpl Maven / Gradle / Ivy

The newest version!
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.asyncapi.AsyncApiCorrelationID;
import io.apicurio.datamodels.models.asyncapi.AsyncApiExternalDocumentation;
import io.apicurio.datamodels.models.asyncapi.AsyncApiMessageBindings;
import io.apicurio.datamodels.models.asyncapi.AsyncApiMessageTrait;
import io.apicurio.datamodels.models.asyncapi.AsyncApiTag;
import io.apicurio.datamodels.models.asyncapi.v30.visitors.AsyncApi30Visitor;
import io.apicurio.datamodels.models.union.MultiFormatSchemaSchemaUnion;
import io.apicurio.datamodels.models.visitors.Visitor;
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;

public class AsyncApi30MessageImpl extends NodeImpl implements AsyncApi30Message {

	private String $ref;
	private MultiFormatSchemaSchemaUnion headers;
	private MultiFormatSchemaSchemaUnion payload;
	private AsyncApiCorrelationID correlationId;
	private String contentType;
	private String name;
	private String title;
	private String summary;
	private String description;
	private List tags;
	private AsyncApiExternalDocumentation externalDocs;
	private AsyncApiMessageBindings bindings;
	private List examples;
	private List traits;
	private Map extensions;

	@Override
	public String get$ref() {
		return $ref;
	}

	@Override
	public void set$ref(String value) {
		this.$ref = value;
	}

	@Override
	public MultiFormatSchemaSchemaUnion getHeaders() {
		return headers;
	}

	@Override
	public void setHeaders(MultiFormatSchemaSchemaUnion value) {
		this.headers = value;
	}

	@Override
	public AsyncApi30MultiFormatSchema createMultiFormatSchema() {
		AsyncApi30MultiFormatSchemaImpl node = new AsyncApi30MultiFormatSchemaImpl();
		node.setParent(this);
		return node;
	}

	@Override
	public AsyncApi30Schema createSchema() {
		AsyncApi30SchemaImpl node = new AsyncApi30SchemaImpl();
		node.setParent(this);
		return node;
	}

	@Override
	public MultiFormatSchemaSchemaUnion getPayload() {
		return payload;
	}

	@Override
	public void setPayload(MultiFormatSchemaSchemaUnion value) {
		this.payload = value;
	}

	@Override
	public AsyncApiCorrelationID getCorrelationId() {
		return correlationId;
	}

	@Override
	public void setCorrelationId(AsyncApiCorrelationID value) {
		this.correlationId = value;
	}

	@Override
	public AsyncApi30CorrelationID createCorrelationID() {
		AsyncApi30CorrelationIDImpl node = new AsyncApi30CorrelationIDImpl();
		node.setParent(this);
		return node;
	}

	@Override
	public String getContentType() {
		return contentType;
	}

	@Override
	public void setContentType(String value) {
		this.contentType = value;
	}

	@Override
	public String getName() {
		return name;
	}

	@Override
	public void setName(String value) {
		this.name = value;
	}

	@Override
	public String getTitle() {
		return title;
	}

	@Override
	public void setTitle(String value) {
		this.title = value;
	}

	@Override
	public String getSummary() {
		return summary;
	}

	@Override
	public void setSummary(String value) {
		this.summary = value;
	}

	@Override
	public String getDescription() {
		return description;
	}

	@Override
	public void setDescription(String value) {
		this.description = value;
	}

	@Override
	public AsyncApi30Tag createTag() {
		AsyncApi30TagImpl node = new AsyncApi30TagImpl();
		node.setParent(this);
		return node;
	}

	@Override
	public List getTags() {
		return tags;
	}

	@Override
	public void addTag(AsyncApiTag value) {
		if (this.tags == null) {
			this.tags = new ArrayList<>();
		}
		this.tags.add(value);
	}

	@Override
	public void clearTags() {
		if (this.tags != null) {
			this.tags.clear();
		}
	}

	@Override
	public void removeTag(AsyncApiTag value) {
		if (this.tags != null) {
			this.tags.remove(value);
		}
	}

	@Override
	public AsyncApiExternalDocumentation getExternalDocs() {
		return externalDocs;
	}

	@Override
	public void setExternalDocs(AsyncApiExternalDocumentation value) {
		this.externalDocs = value;
	}

	@Override
	public AsyncApi30ExternalDocumentation createExternalDocumentation() {
		AsyncApi30ExternalDocumentationImpl node = new AsyncApi30ExternalDocumentationImpl();
		node.setParent(this);
		return node;
	}

	@Override
	public AsyncApiMessageBindings getBindings() {
		return bindings;
	}

	@Override
	public void setBindings(AsyncApiMessageBindings value) {
		this.bindings = value;
	}

	@Override
	public AsyncApi30MessageBindings createMessageBindings() {
		AsyncApi30MessageBindingsImpl node = new AsyncApi30MessageBindingsImpl();
		node.setParent(this);
		return node;
	}

	@Override
	public AsyncApi30MessageExample createMessageExample() {
		AsyncApi30MessageExampleImpl node = new AsyncApi30MessageExampleImpl();
		node.setParent(this);
		return node;
	}

	@Override
	public List getExamples() {
		return examples;
	}

	@Override
	public void addExample(AsyncApi30MessageExample value) {
		if (this.examples == null) {
			this.examples = new ArrayList<>();
		}
		this.examples.add(value);
	}

	@Override
	public void clearExamples() {
		if (this.examples != null) {
			this.examples.clear();
		}
	}

	@Override
	public void removeExample(AsyncApi30MessageExample value) {
		if (this.examples != null) {
			this.examples.remove(value);
		}
	}

	@Override
	public AsyncApi30MessageTrait createMessageTrait() {
		AsyncApi30MessageTraitImpl node = new AsyncApi30MessageTraitImpl();
		node.setParent(this);
		return node;
	}

	@Override
	public List getTraits() {
		return traits;
	}

	@Override
	public void addTrait(AsyncApiMessageTrait value) {
		if (this.traits == null) {
			this.traits = new ArrayList<>();
		}
		this.traits.add(value);
	}

	@Override
	public void clearTraits() {
		if (this.traits != null) {
			this.traits.clear();
		}
	}

	@Override
	public void removeTrait(AsyncApiMessageTrait value) {
		if (this.traits != null) {
			this.traits.remove(value);
		}
	}

	@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 void accept(Visitor visitor) {
		AsyncApi30Visitor viz = (AsyncApi30Visitor) visitor;
		viz.visitMessage(this);
	}

	@Override
	public Node emptyClone() {
		return new AsyncApi30MessageImpl();
	}
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy