blob: 61e8e9c037c3ce215a623f1b393ca339c41a2a46 [file] [log] [blame]
Vinod Kumar Sd4deb062016-04-15 18:08:57 +05301/*
Vinod Kumar Se4b9b0c2016-04-30 21:09:15 +05302 * Copyright 2016-present Open Networking Laboratory
Vinod Kumar Sd4deb062016-04-15 18:08:57 +05303 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16package org.onosproject.yangutils.translator.tojava.javamodel;
17
18import org.onosproject.yangutils.datamodel.YangLeaf;
Vinod Kumar Sd4deb062016-04-15 18:08:57 +053019import org.onosproject.yangutils.translator.tojava.JavaQualifiedTypeInfo;
Vinod Kumar Se4b9b0c2016-04-30 21:09:15 +053020import org.onosproject.yangutils.translator.tojava.utils.YangToJavaNamingConflictUtil;
21
22import static org.onosproject.yangutils.translator.tojava.JavaQualifiedTypeInfo.updateLeavesJavaQualifiedInfo;
23import static org.onosproject.yangutils.translator.tojava.utils.JavaIdentifierSyntax.getCamelCase;
Vinod Kumar Sd4deb062016-04-15 18:08:57 +053024
25/**
Vinod Kumar Se4b9b0c2016-04-30 21:09:15 +053026 * Represents java information corresponding to the YANG leaf.
Vinod Kumar Sd4deb062016-04-15 18:08:57 +053027 */
Vinod Kumar Se4b9b0c2016-04-30 21:09:15 +053028public class YangJavaLeaf
29 extends YangLeaf
30 implements JavaLeafInfoContainer {
Vinod Kumar Sd4deb062016-04-15 18:08:57 +053031
32 private JavaQualifiedTypeInfo javaQualifiedAccess;
33
34 /**
Vinod Kumar Se4b9b0c2016-04-30 21:09:15 +053035 * Returns a new YANG leaf object with java qualified access details.
Vinod Kumar Sd4deb062016-04-15 18:08:57 +053036 */
37 public YangJavaLeaf() {
38 super();
39 setJavaQualifiedInfo(new JavaQualifiedTypeInfo());
40 }
41
42 @Override
43 public JavaQualifiedTypeInfo getJavaQualifiedInfo() {
44 return javaQualifiedAccess;
45 }
46
47 @Override
48 public void setJavaQualifiedInfo(JavaQualifiedTypeInfo typeInfo) {
49 javaQualifiedAccess = typeInfo;
50
51 }
52
Vinod Kumar Se4b9b0c2016-04-30 21:09:15 +053053 public String getJavaName(YangToJavaNamingConflictUtil conflictResolveConfig) {
54 return getCamelCase(getName(), conflictResolveConfig);
55 }
56
57 @Override
58 public boolean isLeafList() {
59 return false;
60 }
61
62 @Override
63 public void updateJavaQualifiedInfo() {
64 updateLeavesJavaQualifiedInfo(this);
65 }
Vinod Kumar Sd4deb062016-04-15 18:08:57 +053066}