Fix sonar issues + merge
[aai/schema-service.git] / aai-schema-gen / src / main / java / org / onap / aai / schemagen / genxsd / XSDJavaType.java
1 /**
2  * ============LICENSE_START=======================================================
3  * org.onap.aai
4  * ================================================================================
5  * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * <p>
11  * http://www.apache.org/licenses/LICENSE-2.0
12  * <p>
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END=========================================================
19  */
20
21 package org.onap.aai.schemagen.genxsd;
22
23 import org.w3c.dom.Element;
24 import org.w3c.dom.NodeList;
25
26 public class XSDJavaType extends XSDElement {
27
28     public XSDJavaType(Element javaTypeElement) {
29         super(javaTypeElement);
30     }
31
32     /*
33         public XSDJavaType(XSDElement javaTypeElement, StringBuffer pathSb, StringBuffer definitionsSb,
34                 StringBuffer pathParams) {
35             super(javaTypeElement);
36             this.pathSb = pathSb;
37             this.definitionsSb = definitionsSb;
38             this.pathParams = pathParams;
39         }
40     */
41     public String getItemName() {
42         NodeList parentNodes = this.getElementsByTagName("java-attributes");
43         if (parentNodes.getLength() == 0) {
44             return null;
45         }
46         Element parentElement = (Element) parentNodes.item(0);
47         NodeList xmlElementNodes = parentElement.getElementsByTagName("xml-element");
48         XSDElement xmlElementElement = new XSDElement((Element) xmlElementNodes.item(0));
49         return xmlElementElement.getAttribute("name");
50     }
51
52     public String getArrayType() {
53         NodeList parentNodes = this.getElementsByTagName("java-attributes");
54         if (parentNodes.getLength() == 0) {
55             return null;
56         }
57         Element parentElement = (Element) parentNodes.item(0);
58         NodeList xmlElementNodes = parentElement.getElementsByTagName("xml-element");
59         XSDElement xmlElementElement = new XSDElement((Element) xmlElementNodes.item(0));
60         if (xmlElementElement.hasAttribute("container-type") &&
61             xmlElementElement.getAttribute("container-type").equals("java.util.ArrayList")) {
62             return xmlElementElement.getAttribute("name");
63         }
64         return null;
65     }
66 }