Move the aai-schema, annotations and
[aai/schema-service.git] / aai-schema-gen / src / main / java / org / onap / aai / schemagen / swagger / Api.java
diff --git a/aai-schema-gen/src/main/java/org/onap/aai/schemagen/swagger/Api.java b/aai-schema-gen/src/main/java/org/onap/aai/schemagen/swagger/Api.java
new file mode 100644 (file)
index 0000000..717b710
--- /dev/null
@@ -0,0 +1,318 @@
+/**
+ * ============LICENSE_START=======================================================
+ * org.onap.aai
+ * ================================================================================
+ * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed 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.
+ * ============LICENSE_END=========================================================
+ */
+package org.onap.aai.schemagen.swagger;
+
+import java.util.List;
+import java.util.Map;
+
+public class Api {
+
+    private String path;
+
+    private List<HttpVerb> httpMethods;
+
+    private String tag;
+
+    public List<HttpVerb> getHttpMethods() {
+        return httpMethods;
+    }
+
+    public void setHttpMethods(List<HttpVerb> httpMethods) {
+        this.httpMethods = httpMethods;
+    }
+
+    public String getTag(){
+
+        if(this.tag != null){
+            return this.tag;
+        }
+
+        if(this.httpMethods != null){
+            if(this.httpMethods.size() != 0){
+                if(this.httpMethods.get(0).getTags() != null){
+                    if(this.httpMethods.get(0).getTags().size() != 0){
+                        this.tag = this.httpMethods.get(0).getTags().get(0);
+                    }
+                }
+            }
+        }
+
+        if(this.tag == null){
+            this.tag = "";
+        }
+
+        return this.tag;
+    }
+
+    @Override
+    public String toString() {
+        return "Api{" +
+                "path='" + path + '\'' +
+                ", httpMethods=" + httpMethods +
+                '}';
+    }
+
+    public void setPath(String path) {
+        this.path = path;
+    }
+
+    public String getPath() {
+        return this.path;
+    }
+
+    public String getOperation(){
+
+        if(this.path != null){
+            return this.path.replaceAll("[^a-zA-Z0-9\\-]", "-") + "-";
+        }
+
+        return "";
+    }
+
+    public static class HttpVerb {
+
+        private List<String> tags;
+
+        private String type;
+
+        private String summary;
+
+        private String operationId;
+
+        private List<String> consumes;
+
+        private boolean consumerEnabled;
+
+        private List<String> produces;
+
+        private List<Response> responses;
+
+        private List<Map<String, Object>> parameters;
+
+        private Map<String, Object> bodyParameters;
+
+        private boolean bodyParametersEnabled;
+
+        private boolean parametersEnabled;
+
+        private String schemaLink;
+
+        private String schemaType;
+
+        private boolean hasReturnSchema;
+
+        private String returnSchemaLink;
+
+        private String returnSchemaObject;
+
+        public void setConsumerEnabled(boolean consumerEnabled){
+            this.consumerEnabled = consumerEnabled;
+        }
+
+        public boolean isConsumerEnabled() {
+            return consumerEnabled;
+        }
+
+
+        public List<String> getTags() {
+            return tags;
+        }
+
+        public void setTags(List<String> tags) {
+            this.tags = tags;
+        }
+
+        public String getType() {
+            return type;
+        }
+
+        public void setType(String type) {
+            this.type = type;
+        }
+
+        public String getSummary() {
+            return summary;
+        }
+
+        public void setSummary(String summary) {
+            this.summary = summary;
+        }
+
+        public String getOperationId() {
+            return operationId;
+        }
+
+        public void setOperationId(String operationId) {
+            this.operationId = operationId;
+        }
+
+        public List<String> getConsumes() {
+            return consumes;
+        }
+
+        public void setConsumes(List<String> consumes) {
+            this.consumes = consumes;
+        }
+
+        public List<String> getProduces() {
+            return produces;
+        }
+
+        public void setProduces(List<String> produces) {
+            this.produces = produces;
+        }
+
+        public List<Response> getResponses() {
+            return responses;
+        }
+
+        public void setResponses(List<Response> responses) {
+            this.responses = responses;
+        }
+
+        public List<Map<String, Object>> getParameters() {
+            return parameters;
+        }
+
+        public void setParameters(List<Map<String, Object>> parameters) {
+            this.parameters = parameters;
+        }
+
+        @Override
+        public String toString() {
+            return "HttpVerb{" +
+                    "tags=" + tags +
+                    ", type='" + type + '\'' +
+                    ", summary='" + summary + '\'' +
+                    ", operationId='" + operationId + '\'' +
+                    ", consumes=" + consumes +
+                    ", produces=" + produces +
+                    ", responses=" + responses +
+                    ", parameters=" + parameters +
+                    '}';
+        }
+
+        public void setParametersEnabled(boolean b) {
+            this.parametersEnabled = b;
+        }
+
+        public boolean isParametersEnabled() {
+            return parametersEnabled;
+        }
+
+        public boolean isBodyParametersEnabled() {
+            return bodyParametersEnabled;
+        }
+        public boolean isOpNotPatch() {
+               return type.equalsIgnoreCase("patch") ? false : true;
+        }
+
+        public void setBodyParametersEnabled(boolean bodyParametersEnabled) {
+            this.bodyParametersEnabled = bodyParametersEnabled;
+        }
+
+        public Map<String, Object> getBodyParameters() {
+            return bodyParameters;
+        }
+
+        public void setBodyParameters(Map<String, Object> bodyParameters) {
+            this.bodyParameters = bodyParameters;
+        }
+
+        public String getSchemaLink() {
+            return schemaLink;
+        }
+
+        public void setSchemaLink(String schemaLink) {
+            this.schemaLink = schemaLink;
+        }
+
+        public String getSchemaType() {
+            return schemaType;
+        }
+
+        public void setSchemaType(String schemaType) {
+            this.schemaType = schemaType;
+        }
+
+        public boolean isHasReturnSchema() {
+            return hasReturnSchema;
+        }
+
+        public void setHasReturnSchema(boolean hasReturnSchema) {
+            this.hasReturnSchema = hasReturnSchema;
+        }
+
+        public String getReturnSchemaLink() {
+            return returnSchemaLink;
+        }
+
+        public void setReturnSchemaLink(String returnSchemaLink) {
+            this.returnSchemaLink = returnSchemaLink;
+        }
+
+        public String getReturnSchemaObject() {
+            return returnSchemaObject;
+        }
+
+        public void setReturnSchemaObject(String returnSchemaObject) {
+            this.returnSchemaObject = returnSchemaObject;
+        }
+
+        public static class Response {
+
+            private String responseCode;
+
+            private String description;
+
+                       private String version;
+
+            public String getResponseCode() {
+                return responseCode;
+            }
+
+            public void setResponseCode(String responseCode) {
+                this.responseCode = responseCode;
+            }
+
+            public String getDescription() {
+                return description;
+            }
+
+            public void setDescription(String description) {
+                this.description = description;
+            }
+
+            @Override
+            public String toString() {
+                return "Response{" +
+                        "responseCode='" + responseCode + '\'' +
+                        ", description='" + description + '\'' +
+                        '}';
+            }
+
+                       public void setVersion(String version) {
+                               this.version = version;
+                       }
+        }
+
+    }
+
+}