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

io.apicurio.datamodels.models.openapi.v30.OpenApi30ResponseImpl Maven / Gradle / Ivy

package io.apicurio.datamodels.models.openapi.v30;

import com.fasterxml.jackson.databind.JsonNode;
import io.apicurio.datamodels.models.Node;
import io.apicurio.datamodels.models.NodeImpl;
import io.apicurio.datamodels.models.openapi.v30.visitors.OpenApi30Visitor;
import io.apicurio.datamodels.models.visitors.Visitor;
import java.util.LinkedHashMap;
import java.util.Map;

public class OpenApi30ResponseImpl extends NodeImpl implements OpenApi30Response {

	private String $ref;
	private String description;
	private Map headers;
	private Map content;
	private Map links;
	private Map extensions;

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

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

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

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

	@Override
	public OpenApi30Header createHeader() {
		OpenApi30HeaderImpl node = new OpenApi30HeaderImpl();
		node.setParent(this);
		return node;
	}

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

	@Override
	public void addHeader(String name, OpenApi30Header value) {
		if (this.headers == null) {
			this.headers = new LinkedHashMap<>();
		}
		this.headers.put(name, value);
	}

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

	@Override
	public void removeHeader(String name) {
		if (this.headers != null) {
			this.headers.remove(name);
		}
	}

	@Override
	public OpenApi30MediaType createMediaType() {
		OpenApi30MediaTypeImpl node = new OpenApi30MediaTypeImpl();
		node.setParent(this);
		return node;
	}

	@Override
	public Map getContent() {
		return content;
	}

	@Override
	public void addContent(String name, OpenApi30MediaType value) {
		if (this.content == null) {
			this.content = new LinkedHashMap<>();
		}
		this.content.put(name, value);
	}

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

	@Override
	public void removeContent(String name) {
		if (this.content != null) {
			this.content.remove(name);
		}
	}

	@Override
	public OpenApi30Link createLink() {
		OpenApi30LinkImpl node = new OpenApi30LinkImpl();
		node.setParent(this);
		return node;
	}

	@Override
	public Map getLinks() {
		return links;
	}

	@Override
	public void addLink(String name, OpenApi30Link value) {
		if (this.links == null) {
			this.links = new LinkedHashMap<>();
		}
		this.links.put(name, value);
	}

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

	@Override
	public void removeLink(String name) {
		if (this.links != null) {
			this.links.remove(name);
		}
	}

	@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) {
		OpenApi30Visitor viz = (OpenApi30Visitor) visitor;
		viz.visitResponse(this);
	}

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




© 2015 - 2025 Weber Informatics LLC | Privacy Policy