Update license headers
[vid.git] / vid-app-common / src / main / java / org / onap / vid / model / ModelUtil.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * VID
4  * ================================================================================
5  * Copyright (C) 2017 - 2019 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  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
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 /**
22  * 
23  */
24 package org.onap.vid.model;
25
26 /**
27  * The Class ModelUtil.
28  *
29  */
30 public class ModelUtil {
31         /**
32          * Gets the tags for the given element according to the configured namespace
33          * @param namespaces the namespace list from the configuration
34          * @param constantValue the constant portion of the tag name, i.e. resource.vf...
35          * @return the tags
36          */
37         public static String[] getTags ( String[] namespaces, String constantValue ) {
38                 String[] tags;
39                 if ( namespaces == null || namespaces.length == 0 ) {
40                         return null;
41                 }
42                 int le = namespaces.length;
43                 tags = new String[le];
44                 for ( int i = 0; i < le; i++ ) {
45                         tags[i] = namespaces[i] + constantValue;
46                 }
47                 return (tags);
48         }
49         /**
50          * Determine if a note template type matches a set of configurable tags
51          * @param type the node template type
52          * @param tags the model configurable namespaces
53          * @return true if type starts with a tag in the array, false otherwise
54          */
55         public static boolean isType ( String type, String[] tags ) {
56                 if ( (tags != null) && (tags.length > 0) ) {
57                         for ( int i = 0; i < tags.length; i++ ) {
58                                 if ( type.startsWith (tags[i]) ) {
59                                         return (true);
60                                 }
61                         }
62                 }
63                 return (false);
64         }
65 }