[ONOS-5274] Removal of rpc prfixed input and output from data model.
Change-Id: I14abf404eaf272e2b1457fa14d23117b4c0beaa7
diff --git a/plugin/src/main/java/org/onosproject/yangutils/translator/tojava/YangJavaModelUtils.java b/plugin/src/main/java/org/onosproject/yangutils/translator/tojava/YangJavaModelUtils.java
index 3c41605..adb5c62 100644
--- a/plugin/src/main/java/org/onosproject/yangutils/translator/tojava/YangJavaModelUtils.java
+++ b/plugin/src/main/java/org/onosproject/yangutils/translator/tojava/YangJavaModelUtils.java
@@ -21,16 +21,20 @@
import org.onosproject.yangutils.datamodel.YangAugment;
import org.onosproject.yangutils.datamodel.YangCase;
import org.onosproject.yangutils.datamodel.YangChoice;
+import org.onosproject.yangutils.datamodel.YangInput;
import org.onosproject.yangutils.datamodel.YangLeavesHolder;
import org.onosproject.yangutils.datamodel.YangNode;
import org.onosproject.yangutils.datamodel.YangNodeIdentifier;
+import org.onosproject.yangutils.datamodel.YangOutput;
import org.onosproject.yangutils.datamodel.YangTranslatorOperatorNode;
import org.onosproject.yangutils.datamodel.YangTypeHolder;
import org.onosproject.yangutils.datamodel.utils.DataModelUtils;
import org.onosproject.yangutils.translator.exception.TranslatorException;
import org.onosproject.yangutils.translator.tojava.javamodel.YangJavaAugmentTranslator;
import org.onosproject.yangutils.translator.tojava.javamodel.YangJavaEnumerationTranslator;
+import org.onosproject.yangutils.translator.tojava.javamodel.YangJavaInputTranslator;
import org.onosproject.yangutils.translator.tojava.javamodel.YangJavaModuleTranslator;
+import org.onosproject.yangutils.translator.tojava.javamodel.YangJavaOutputTranslator;
import org.onosproject.yangutils.translator.tojava.javamodel.YangJavaSubModuleTranslator;
import org.onosproject.yangutils.utils.io.YangPluginConfig;
@@ -50,6 +54,8 @@
import static org.onosproject.yangutils.translator.tojava.utils.TranslatorUtils.getErrorMsgForCodeGenerator;
import static org.onosproject.yangutils.utils.UtilConstants.AUGMENTED;
import static org.onosproject.yangutils.utils.UtilConstants.EMPTY_STRING;
+import static org.onosproject.yangutils.utils.UtilConstants.INPUT_KEYWORD;
+import static org.onosproject.yangutils.utils.UtilConstants.OUTPUT_KEYWORD;
import static org.onosproject.yangutils.utils.UtilConstants.PERIOD;
import static org.onosproject.yangutils.utils.io.impl.YangIoUtils.getCamelCase;
import static org.onosproject.yangutils.utils.io.impl.YangIoUtils.getCapitalCase;
@@ -79,8 +85,7 @@
if (info instanceof YangJavaAugmentTranslator) {
updatePackageForAugmentInfo(info, config);
} else {
- translator.setJavaName(getCamelCase(((YangNode) info).getName(),
- config.getConflictResolver()));
+ setNodeJavaName(info, config);
translator.setJavaAttributeName(info.getJavaFileInfo()
.getJavaName());
translator.setPackage(getCurNodePackage((YangNode) info));
@@ -89,6 +94,29 @@
}
/**
+ * The java name for input, output is prefixed with rpc name and other
+ * nodes are set by taking its own name from YANG.
+ *
+ * @param info YANG java file info node
+ * @param config YANG plugin config
+ */
+ private static void setNodeJavaName(JavaCodeGeneratorInfo info,
+ YangPluginConfig config) {
+ String javaGenName;
+ if (info instanceof YangJavaInputTranslator) {
+ javaGenName = ((YangInput) info).getParent().getName() +
+ INPUT_KEYWORD;
+ } else if (info instanceof YangJavaOutputTranslator) {
+ javaGenName = ((YangOutput) info).getParent().getName() +
+ OUTPUT_KEYWORD;
+ } else {
+ javaGenName = ((YangNode) info).getName();
+ }
+ info.getJavaFileInfo().setJavaName(getCamelCase(
+ javaGenName, config.getConflictResolver()));
+ }
+
+ /**
* Updates YANG java file package information.
*
* @param info YANG java file info node