| /* |
| * Licensed to the Apache Software Foundation (ASF) under one or more |
| * contributor license agreements. See the NOTICE file distributed with |
| * this work for additional information regarding copyright ownership. |
| * The ASF licenses this file to You under the Apache License, Version 2.0 |
| * (the "License"); you may not use this file except in compliance with |
| * the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| package org.apache.geronimo.microprofile.openapi.impl.model; |
| |
| import java.util.LinkedHashMap; |
| import java.util.Map; |
| |
| import javax.enterprise.inject.Vetoed; |
| import javax.json.bind.annotation.JsonbTransient; |
| import javax.json.bind.annotation.JsonbTypeDeserializer; |
| |
| import org.apache.geronimo.microprofile.openapi.impl.model.codec.Deserializers; |
| import org.eclipse.microprofile.openapi.models.Components; |
| import org.eclipse.microprofile.openapi.models.Extensible; |
| import org.eclipse.microprofile.openapi.models.callbacks.Callback; |
| import org.eclipse.microprofile.openapi.models.examples.Example; |
| import org.eclipse.microprofile.openapi.models.headers.Header; |
| import org.eclipse.microprofile.openapi.models.links.Link; |
| import org.eclipse.microprofile.openapi.models.media.Schema; |
| import org.eclipse.microprofile.openapi.models.parameters.Parameter; |
| import org.eclipse.microprofile.openapi.models.parameters.RequestBody; |
| import org.eclipse.microprofile.openapi.models.responses.APIResponse; |
| import org.eclipse.microprofile.openapi.models.security.SecurityScheme; |
| |
| @Vetoed |
| public class ComponentsImpl implements Components { |
| |
| private Extensible _extensible = new ExtensibleImpl(); |
| |
| @JsonbTypeDeserializer(Deserializers.MapCallbacksDeserializer.class) |
| private Map<String, Callback> _callbacks; |
| |
| @JsonbTypeDeserializer(Deserializers.MapExamplesDeserializer.class) |
| private Map<String, Example> _examples; |
| |
| @JsonbTypeDeserializer(Deserializers.MapHeadersDeserializer.class) |
| private Map<String, Header> _headers; |
| |
| @JsonbTypeDeserializer(Deserializers.MapLinksDeserializer.class) |
| private Map<String, Link> _links; |
| |
| @JsonbTypeDeserializer(Deserializers.MapParametersDeserializer.class) |
| private Map<String, Parameter> _parameters; |
| |
| @JsonbTypeDeserializer(Deserializers.MapRequestBodiesDeserializer.class) |
| private Map<String, RequestBody> _requestBodies; |
| |
| @JsonbTypeDeserializer(Deserializers.MapAPIResponsesDeserializer.class) |
| private Map<String, APIResponse> _responses; |
| |
| @JsonbTypeDeserializer(Deserializers.MapSchemasDeserializer.class) |
| private Map<String, Schema> _schemas; |
| |
| @JsonbTypeDeserializer(Deserializers.MapSecuritySchemesDeserializer.class) |
| private Map<String, SecurityScheme> _securitySchemes; |
| |
| @Override |
| @JsonbTransient |
| public Map<String, Object> getExtensions() { |
| return _extensible.getExtensions(); |
| } |
| |
| @Override |
| public void setExtensions(final Map<String, Object> extensions) { |
| _extensible.setExtensions(extensions); |
| } |
| |
| @Override |
| public Components addExtension(final String name, final Object value) { |
| _extensible.addExtension(name, value); |
| return this; |
| } |
| |
| @Override |
| public void removeExtension(final String name) { |
| _extensible.removeExtension(name); |
| } |
| |
| @Override |
| public Map<String, Callback> getCallbacks() { |
| return _callbacks; |
| } |
| |
| @Override |
| public void setCallbacks(final Map<String, Callback> _callbacks) { |
| this._callbacks = _callbacks; |
| } |
| |
| @Override |
| public Components callbacks(final Map<String, Callback> _callbacks) { |
| setCallbacks(_callbacks); |
| return this; |
| } |
| |
| @Override |
| public Components addCallback(final String key, final Callback _callbacks) { |
| if (_callbacks != null) { |
| (this._callbacks = this._callbacks == null ? new LinkedHashMap<>() : this._callbacks).put(key, _callbacks); |
| } |
| return this; |
| } |
| |
| @Override |
| public Map<String, Example> getExamples() { |
| return _examples; |
| } |
| |
| @Override |
| public void setExamples(final Map<String, Example> _examples) { |
| this._examples = _examples; |
| } |
| |
| @Override |
| public Components examples(final Map<String, Example> _examples) { |
| setExamples(_examples); |
| return this; |
| } |
| |
| @Override |
| public Components addExample(final String key, final Example _examples) { |
| if (_examples != null) { |
| (this._examples = this._examples == null ? new LinkedHashMap<>() : this._examples).put(key, _examples); |
| } |
| return this; |
| } |
| |
| @Override |
| public Map<String, Header> getHeaders() { |
| return _headers; |
| } |
| |
| @Override |
| public void setHeaders(final Map<String, Header> _headers) { |
| this._headers = _headers; |
| } |
| |
| @Override |
| public Components headers(final Map<String, Header> _headers) { |
| setHeaders(_headers); |
| return this; |
| } |
| |
| @Override |
| public Components addHeader(final String key, final Header _headers) { |
| if (_headers != null) { |
| (this._headers = this._headers == null ? new LinkedHashMap<>() : this._headers).put(key, _headers); |
| } |
| return this; |
| } |
| |
| @Override |
| public Map<String, Link> getLinks() { |
| return _links; |
| } |
| |
| @Override |
| public void setLinks(final Map<String, Link> _links) { |
| this._links = _links; |
| } |
| |
| @Override |
| public Components links(final Map<String, Link> _links) { |
| setLinks(_links); |
| return this; |
| } |
| |
| @Override |
| public Components addLink(final String key, final Link _links) { |
| if (_links != null) { |
| (this._links = this._links == null ? new LinkedHashMap<>() : this._links).put(key, _links); |
| } |
| return this; |
| } |
| |
| @Override |
| public Map<String, Parameter> getParameters() { |
| return _parameters; |
| } |
| |
| @Override |
| public void setParameters(final Map<String, Parameter> _parameters) { |
| this._parameters = _parameters; |
| } |
| |
| @Override |
| public Components parameters(final Map<String, Parameter> _parameters) { |
| setParameters(_parameters); |
| return this; |
| } |
| |
| @Override |
| public Components addParameter(final String key, final Parameter _parameters) { |
| if (_parameters != null) { |
| (this._parameters = this._parameters == null ? new LinkedHashMap<>() : this._parameters).put(key, _parameters); |
| } |
| return this; |
| } |
| |
| @Override |
| public Map<String, RequestBody> getRequestBodies() { |
| return _requestBodies; |
| } |
| |
| @Override |
| public void setRequestBodies(final Map<String, RequestBody> _requestBodies) { |
| this._requestBodies = _requestBodies; |
| } |
| |
| @Override |
| public Components requestBodies(final Map<String, RequestBody> _requestBodies) { |
| setRequestBodies(_requestBodies); |
| return this; |
| } |
| |
| @Override |
| public Components addRequestBody(final String key, final RequestBody _requestBodies) { |
| if (_requestBodies != null) { |
| (this._requestBodies = this._requestBodies == null ? new LinkedHashMap<>() : this._requestBodies).put(key, |
| _requestBodies); |
| } |
| return this; |
| } |
| |
| @Override |
| public Map<String, APIResponse> getResponses() { |
| return _responses; |
| } |
| |
| @Override |
| public void setResponses(final Map<String, APIResponse> _responses) { |
| this._responses = _responses; |
| } |
| |
| @Override |
| public Components responses(final Map<String, APIResponse> _responses) { |
| setResponses(_responses); |
| return this; |
| } |
| |
| @Override |
| public Components addResponse(final String key, final APIResponse _responses) { |
| if (_responses != null) { |
| (this._responses = this._responses == null ? new LinkedHashMap<>() : this._responses).put(key, _responses); |
| } |
| return this; |
| } |
| |
| @Override |
| public Map<String, Schema> getSchemas() { |
| return _schemas; |
| } |
| |
| @Override |
| public void setSchemas(final Map<String, Schema> _schemas) { |
| this._schemas = _schemas; |
| } |
| |
| @Override |
| public Components schemas(final Map<String, Schema> _schemas) { |
| setSchemas(_schemas); |
| return this; |
| } |
| |
| @Override |
| public Components addSchema(final String key, final Schema _schemas) { |
| if (_schemas != null) { |
| (this._schemas = this._schemas == null ? new LinkedHashMap<>() : this._schemas).put(key, _schemas); |
| } |
| return this; |
| } |
| |
| @Override |
| public Map<String, SecurityScheme> getSecuritySchemes() { |
| return _securitySchemes; |
| } |
| |
| @Override |
| public void setSecuritySchemes(final Map<String, SecurityScheme> _securitySchemes) { |
| this._securitySchemes = _securitySchemes; |
| } |
| |
| @Override |
| public Components securitySchemes(final Map<String, SecurityScheme> _securitySchemes) { |
| setSecuritySchemes(_securitySchemes); |
| return this; |
| } |
| |
| @Override |
| public Components addSecurityScheme(final String key, final SecurityScheme _securitySchemes) { |
| if (_securitySchemes != null) { |
| (this._securitySchemes = this._securitySchemes == null ? new LinkedHashMap<>() : this._securitySchemes).put(key, |
| _securitySchemes); |
| } |
| return this; |
| } |
| |
| @Override |
| public void removeSchema(final String key) { |
| _schemas.remove(key); |
| } |
| |
| @Override |
| public void removeResponse(final String key) { |
| _responses.remove(key); |
| } |
| |
| @Override |
| public void removeParameter(final String key) { |
| _parameters.remove(key); |
| } |
| |
| @Override |
| public void removeExample(final String key) { |
| _examples.remove(key); |
| } |
| |
| @Override |
| public void removeRequestBody(final String key) { |
| _requestBodies.remove(key); |
| } |
| |
| @Override |
| public void removeHeader(final String key) { |
| _headers.remove(key); |
| } |
| |
| @Override |
| public void removeSecurityScheme(final String key) { |
| _securitySchemes.remove(key); |
| } |
| |
| @Override |
| public void removeLink(final String key) { |
| _links.remove(key); |
| } |
| |
| @Override |
| public void removeCallback(final String key) { |
| _callbacks.remove(key); |
| } |
| } |