[ONOS-4922] Javamodel package creation for YANG utils.
Change-Id: Iff1745a8c04881b44db3f2f687967f984c38e2c7
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 3489eea..7739e52 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
@@ -26,19 +26,18 @@
import org.onosproject.yangutils.datamodel.YangCase;
import org.onosproject.yangutils.datamodel.YangChoice;
import org.onosproject.yangutils.datamodel.YangLeavesHolder;
-import org.onosproject.yangutils.datamodel.YangModule;
import org.onosproject.yangutils.datamodel.YangNode;
import org.onosproject.yangutils.datamodel.YangNodeIdentifier;
-import org.onosproject.yangutils.datamodel.YangSubModule;
import org.onosproject.yangutils.datamodel.YangTranslatorOperatorNode;
import org.onosproject.yangutils.datamodel.YangTypeHolder;
+import org.onosproject.yangutils.datamodel.javadatamodel.JavaFileInfo;
+import org.onosproject.yangutils.datamodel.javadatamodel.YangPluginConfig;
import org.onosproject.yangutils.datamodel.utils.DataModelUtils;
import org.onosproject.yangutils.translator.exception.TranslatorException;
-import org.onosproject.yangutils.translator.tojava.javamodel.YangJavaAugment;
-import org.onosproject.yangutils.translator.tojava.javamodel.YangJavaEnumeration;
-import org.onosproject.yangutils.translator.tojava.javamodel.YangJavaModule;
-import org.onosproject.yangutils.translator.tojava.javamodel.YangJavaSubModule;
-import org.onosproject.yangutils.utils.io.impl.YangPluginConfig;
+import org.onosproject.yangutils.translator.tojava.javamodel.YangJavaAugmentTranslator;
+import org.onosproject.yangutils.translator.tojava.javamodel.YangJavaEnumerationTranslator;
+import org.onosproject.yangutils.translator.tojava.javamodel.YangJavaModuleTranslator;
+import org.onosproject.yangutils.translator.tojava.javamodel.YangJavaSubModuleTranslator;
import static org.onosproject.yangutils.datamodel.utils.DataModelUtils.isRpcChildNodePresent;
import static org.onosproject.yangutils.translator.tojava.GeneratedJavaFileType.GENERATE_SERVICE_AND_MANAGER;
@@ -74,9 +73,9 @@
public static void updatePackageInfo(JavaCodeGeneratorInfo javaCodeGeneratorInfo,
YangPluginConfig yangPluginConfig)
throws IOException {
- if (javaCodeGeneratorInfo instanceof YangJavaAugment) {
+ if (javaCodeGeneratorInfo instanceof YangJavaAugmentTranslator) {
javaCodeGeneratorInfo.getJavaFileInfo()
- .setJavaName(getAugmentClassName((YangJavaAugment) javaCodeGeneratorInfo,
+ .setJavaName(getAugmentClassName((YangJavaAugmentTranslator) javaCodeGeneratorInfo,
yangPluginConfig));
} else {
javaCodeGeneratorInfo.getJavaFileInfo()
@@ -137,13 +136,13 @@
javaCodeGeneratorInfo.getTempJavaCodeFragmentFiles()
.getServiceTempFiles().addCurNodeLeavesInfoToTempFiles(
(YangNode) javaCodeGeneratorInfo, yangPluginConfig);
- if (javaCodeGeneratorInfo instanceof YangJavaModule) {
- if (!((YangJavaModule) javaCodeGeneratorInfo).getNotificationNodes().isEmpty()) {
- updateNotificaitonNodeInfo(javaCodeGeneratorInfo, yangPluginConfig);
+ if (javaCodeGeneratorInfo instanceof YangJavaModuleTranslator) {
+ if (!((YangJavaModuleTranslator) javaCodeGeneratorInfo).getNotificationNodes().isEmpty()) {
+ updateNotificationNodeInfo(javaCodeGeneratorInfo, yangPluginConfig);
}
- } else if (javaCodeGeneratorInfo instanceof YangJavaSubModule) {
- if (!((YangJavaSubModule) javaCodeGeneratorInfo).getNotificationNodes().isEmpty()) {
- updateNotificaitonNodeInfo(javaCodeGeneratorInfo, yangPluginConfig);
+ } else if (javaCodeGeneratorInfo instanceof YangJavaSubModuleTranslator) {
+ if (!((YangJavaSubModuleTranslator) javaCodeGeneratorInfo).getNotificationNodes().isEmpty()) {
+ updateNotificationNodeInfo(javaCodeGeneratorInfo, yangPluginConfig);
}
}
@@ -168,7 +167,7 @@
*/
javaCodeGeneratorInfo.getTempJavaCodeFragmentFiles()
.addTypeInfoToTempFiles((YangTypeHolder) javaCodeGeneratorInfo, yangPluginConfig);
- } else if (javaCodeGeneratorInfo instanceof YangJavaEnumeration) {
+ } else if (javaCodeGeneratorInfo instanceof YangJavaEnumerationTranslator) {
/*
* Enumeration
*/
@@ -207,22 +206,22 @@
* @param yangPluginConfig plugin configurations
* @throws IOException when fails to do IO operations
*/
- private static void updateNotificaitonNodeInfo(JavaCodeGeneratorInfo javaCodeGeneratorInfo,
+ private static void updateNotificationNodeInfo(JavaCodeGeneratorInfo javaCodeGeneratorInfo,
YangPluginConfig yangPluginConfig)
throws IOException {
- if (javaCodeGeneratorInfo instanceof YangJavaModule) {
- for (YangNode notificaiton : ((YangJavaModule) javaCodeGeneratorInfo).getNotificationNodes()) {
+ if (javaCodeGeneratorInfo instanceof YangJavaModuleTranslator) {
+ for (YangNode notification : ((YangJavaModuleTranslator) javaCodeGeneratorInfo).getNotificationNodes()) {
javaCodeGeneratorInfo.getTempJavaCodeFragmentFiles()
.getEventFragmentFiles()
- .addJavaSnippetOfEvent(notificaiton, yangPluginConfig);
+ .addJavaSnippetOfEvent(notification, yangPluginConfig);
}
}
- if (javaCodeGeneratorInfo instanceof YangJavaSubModule) {
- for (YangNode notificaiton : ((YangJavaSubModule) javaCodeGeneratorInfo)
+ if (javaCodeGeneratorInfo instanceof YangJavaSubModuleTranslator) {
+ for (YangNode notification : ((YangJavaSubModuleTranslator) javaCodeGeneratorInfo)
.getNotificationNodes()) {
javaCodeGeneratorInfo.getTempJavaCodeFragmentFiles()
.getEventFragmentFiles()
- .addJavaSnippetOfEvent(notificaiton, yangPluginConfig);
+ .addJavaSnippetOfEvent(notification, yangPluginConfig);
}
}
}
@@ -269,9 +268,9 @@
generateCodeOfNode(javaCodeGeneratorInfo, yangPlugin);
TempJavaCodeFragmentFiles tempJavaCodeFragmentFiles = javaCodeGeneratorInfo.getTempJavaCodeFragmentFiles();
- if (javaCodeGeneratorInfo instanceof YangJavaAugment) {
+ if (javaCodeGeneratorInfo instanceof YangJavaAugmentTranslator) {
- JavaQualifiedTypeInfo yangAugmentedInfo = new JavaQualifiedTypeInfo();
+ JavaQualifiedTypeInfoTranslator yangAugmentedInfo = new JavaQualifiedTypeInfoTranslator();
yangAugmentedInfo.setClassInfo(YANG_AUGMENTED_INFO);
yangAugmentedInfo.setPkgInfo(YANG_AUGMENTED_INFO_CLASS_IMPORT_PKG);
javaCodeGeneratorInfo.getTempJavaCodeFragmentFiles().getBeanTempFiles().getJavaExtendsListHolder()
@@ -280,7 +279,7 @@
}
if (javaCodeGeneratorInfo instanceof YangCase) {
YangNode parent = ((YangCase) javaCodeGeneratorInfo).getParent();
- JavaQualifiedTypeInfo parentsInfo = new JavaQualifiedTypeInfo();
+ JavaQualifiedTypeInfoTranslator parentsInfo = new JavaQualifiedTypeInfoTranslator();
String parentName = getCapitalCase(((JavaFileInfoContainer) parent).getJavaFileInfo().getJavaName());
String parentPkg = ((JavaFileInfoContainer) parent).getJavaFileInfo().getPackage();
parentsInfo.setClassInfo(parentName);
@@ -399,7 +398,7 @@
File codeGenDir = new File(info.getBaseCodeGenPath()
+ info.getPackageFilePath());
File[] files = codeGenDir.listFiles();
- if (files.length >= 1) {
+ if (files != null && files.length >= 1) {
for (File file : files) {
if (file.getName().contentEquals(getCapitalCase(info.getJavaName() + MANAGER + ".java"))) {
return false;
@@ -420,36 +419,31 @@
List<String> clsInfo = new ArrayList<>();
while (node.getParent() != null) {
- if (!(node instanceof YangModule)
- || !(node instanceof YangSubModule)) {
- if (node instanceof YangJavaAugment) {
- clsInfo.add(getAugmentClassName((YangAugment) node, yangPluginConfig));
- } else {
- clsInfo.add(getCamelCase(node.getName(), yangPluginConfig.getConflictResolver()));
- }
+ if (node instanceof YangJavaAugmentTranslator) {
+ clsInfo.add(getAugmentClassName((YangAugment) node, yangPluginConfig));
+ } else {
+ clsInfo.add(getCamelCase(node.getName(), yangPluginConfig.getConflictResolver()));
}
- if (node instanceof YangJavaModule
- || node instanceof YangJavaSubModule) {
- break;
- }
+
node = node.getParent();
}
StringBuilder pkg = new StringBuilder();
- if (node instanceof YangJavaModule) {
- YangJavaModule module = (YangJavaModule) node;
+ if (node instanceof YangJavaModuleTranslator) {
+ YangJavaModuleTranslator module = (YangJavaModuleTranslator) node;
pkg.append(getRootPackage(module.getVersion(), module.getNameSpace().getUri(), module
.getRevision().getRevDate(), yangPluginConfig.getConflictResolver()));
- } else if (node instanceof YangJavaSubModule) {
- YangJavaSubModule submodule = (YangJavaSubModule) node;
+ } else if (node instanceof YangJavaSubModuleTranslator) {
+ YangJavaSubModuleTranslator submodule = (YangJavaSubModuleTranslator) node;
pkg.append(getRootPackage(submodule.getVersion(),
submodule.getNameSpaceFromModule(submodule.getBelongsTo()),
submodule.getRevision().getRevDate(), yangPluginConfig.getConflictResolver()));
}
+ String concat = "";
for (int i = 1; i <= clsInfo.size(); i++) {
- pkg.append("." + clsInfo.get(clsInfo.size() - i));
+ concat = concat + "." + clsInfo.get(clsInfo.size() - i);
}
-
+ pkg.append(concat);
return pkg.toString().toLowerCase();
}