[ONOS-5178] Defect fix :No get/set for root node in generated service
Change-Id: I9d90068e4cdd3d35a9ee71fd1f00c4a635b191b7
diff --git a/plugin/src/main/java/org/onosproject/yangutils/translator/tojava/javamodel/AttributesJavaDataType.java b/plugin/src/main/java/org/onosproject/yangutils/translator/tojava/javamodel/AttributesJavaDataType.java
index 85c190b..d9517a8 100644
--- a/plugin/src/main/java/org/onosproject/yangutils/translator/tojava/javamodel/AttributesJavaDataType.java
+++ b/plugin/src/main/java/org/onosproject/yangutils/translator/tojava/javamodel/AttributesJavaDataType.java
@@ -112,10 +112,10 @@
return getJavaDataType(getReferredTypeFromLeafref(yangType));
default:
throw new TranslatorException("given data type is not supported. " +
- yangType.getDataTypeName() + " in " +
- yangType.getLineNumber() + " at " +
- yangType.getCharPosition()
- + " in " + yangType.getFileName());
+ yangType.getDataTypeName() + " in " +
+ yangType.getLineNumber() + " at " +
+ yangType.getCharPosition()
+ + " in " + yangType.getFileName());
}
}
@@ -159,7 +159,7 @@
case ENUMERATION:
return getCapitalCase(
getCamelCase(((YangJavaEnumerationTranslator) yangType.getDataTypeExtendedInfo()).getName(),
- pluginConfig));
+ pluginConfig));
case BITS:
return BIT_SET;
case BINARY:
@@ -184,10 +184,10 @@
getCamelCase(yangType.getDataTypeName(), pluginConfig));
default:
throw new TranslatorException("given data type is not supported ." +
- yangType.getDataTypeName() + " in " +
- yangType.getLineNumber() + " at " +
- yangType.getCharPosition()
- + " in " + yangType.getFileName());
+ yangType.getDataTypeName() + " in " +
+ yangType.getLineNumber() + " at " +
+ yangType.getCharPosition()
+ + " in " + yangType.getFileName());
}
} else {
switch (type) {
@@ -198,7 +198,7 @@
case ENUMERATION:
return getCapitalCase(
getCamelCase(((YangJavaEnumerationTranslator) yangType.getDataTypeExtendedInfo()).getName(),
- pluginConfig));
+ pluginConfig));
case BITS:
return BIT_SET;
case DECIMAL64:
@@ -273,10 +273,10 @@
return getTypeDefsPackage(yangType, conflictResolver);
default:
throw new TranslatorException("given data type is not supported. " +
- yangType.getDataTypeName() + " in " +
- yangType.getLineNumber() + " at " +
- yangType.getCharPosition()
- + " in " + yangType.getFileName());
+ yangType.getDataTypeName() + " in " +
+ yangType.getLineNumber() + " at " +
+ yangType.getCharPosition()
+ + " in " + yangType.getFileName());
}
} else {
switch (type) {
@@ -318,18 +318,18 @@
Object var = type.getDataTypeExtendedInfo();
if (!(var instanceof YangDerivedInfo)) {
throw new TranslatorException("type should have been derived. " +
- type.getDataTypeName() + " in " +
- type.getLineNumber() + " at " +
- type.getCharPosition()
- + " in " + type.getFileName());
+ type.getDataTypeName() + " in " +
+ type.getLineNumber() + " at " +
+ type.getCharPosition()
+ + " in " + type.getFileName());
}
if (!(((YangDerivedInfo<?>) var).getReferredTypeDef() != null)) {
throw new TranslatorException("derived info is not an instance of typedef. " +
- type.getDataTypeName() + " in " +
- type.getLineNumber() + " at " +
- type.getCharPosition()
- + " in " + type.getFileName());
+ type.getDataTypeName() + " in " +
+ type.getLineNumber() + " at " +
+ type.getCharPosition()
+ + " in " + type.getFileName());
}
YangJavaTypeDefTranslator typedef = (YangJavaTypeDefTranslator) ((YangDerivedInfo<?>) var).getReferredTypeDef();
@@ -350,10 +350,10 @@
if (!(type.getDataTypeExtendedInfo() instanceof YangUnion)) {
throw new TranslatorException("type should have been union. " +
- type.getDataTypeName() + " in " +
- type.getLineNumber() + " at " +
- type.getCharPosition()
- + " in " + type.getFileName());
+ type.getDataTypeName() + " in " +
+ type.getLineNumber() + " at " +
+ type.getCharPosition()
+ + " in " + type.getFileName());
}
YangJavaUnionTranslator union = (YangJavaUnionTranslator) type.getDataTypeExtendedInfo();
@@ -374,10 +374,10 @@
if (!(type.getDataTypeExtendedInfo() instanceof YangEnumeration)) {
throw new TranslatorException("type should have been enumeration. " +
- type.getDataTypeName() + " in " +
- type.getLineNumber() + " at " +
- type.getCharPosition()
- + " in " + type.getFileName());
+ type.getDataTypeName() + " in " +
+ type.getLineNumber() + " at " +
+ type.getCharPosition()
+ + " in " + type.getFileName());
}
YangJavaEnumerationTranslator enumeration = (YangJavaEnumerationTranslator) type.getDataTypeExtendedInfo();
if (enumeration.getJavaFileInfo().getPackage() == null) {
@@ -397,10 +397,10 @@
if (!(type.getDataTypeExtendedInfo() instanceof YangIdentityRef)) {
throw new TranslatorException("type should have been identityref. " +
- type.getDataTypeName() + " in " +
- type.getLineNumber() + " at " +
- type.getCharPosition()
- + " in " + type.getFileName());
+ type.getDataTypeName() + " in " +
+ type.getLineNumber() + " at " +
+ type.getCharPosition()
+ + " in " + type.getFileName());
}
YangIdentityRef identityRef = (YangIdentityRef) type.getDataTypeExtendedInfo();
YangJavaIdentityTranslator identity = (YangJavaIdentityTranslator) (identityRef.getReferredIdentity());
@@ -421,10 +421,10 @@
YangToJavaNamingConflictUtil conflictResolver) {
if (!(parent instanceof JavaFileInfoContainer)) {
throw new TranslatorException("invalid child node is being processed. " +
- parent.getName() + " in " +
- parent.getLineNumber() + " at " +
- parent.getCharPosition()
- + " in " + parent.getFileName());
+ parent.getName() + " in " +
+ parent.getLineNumber() + " at " +
+ parent.getCharPosition()
+ + " in " + parent.getFileName());
}
JavaFileInfoTranslator parentInfo = ((JavaFileInfoContainer) parent).getJavaFileInfo();
if (parentInfo.getPackage() == null) {
@@ -464,18 +464,18 @@
if (yangNode instanceof YangJavaModuleTranslator) {
YangJavaModuleTranslator module = (YangJavaModuleTranslator) yangNode;
pkg = getRootPackage(module.getVersion(), module.getNameSpace(), module
- .getRevision().getRevDate(), conflictResolver);
+ .getRevision(), conflictResolver);
} else if (yangNode instanceof YangJavaSubModuleTranslator) {
YangJavaSubModuleTranslator submodule = (YangJavaSubModuleTranslator) yangNode;
pkg = getRootPackage(submodule.getVersion(),
- submodule.getNameSpaceFromModule(submodule.getBelongsTo()),
- submodule.getRevision().getRevDate(), conflictResolver);
+ submodule.getNameSpaceFromModule(),
+ submodule.getRevision(), conflictResolver);
} else {
throw new TranslatorException("Invalid root node of data model tree " +
- yangNode.getName() + " in " +
- yangNode.getLineNumber() + " at " +
- yangNode.getCharPosition()
- + " in " + yangNode.getFileName());
+ yangNode.getName() + " in " +
+ yangNode.getLineNumber() + " at " +
+ yangNode.getCharPosition()
+ + " in " + yangNode.getFileName());
}
diff --git a/plugin/src/main/java/org/onosproject/yangutils/translator/tojava/javamodel/YangJavaModuleTranslator.java b/plugin/src/main/java/org/onosproject/yangutils/translator/tojava/javamodel/YangJavaModuleTranslator.java
index cf1f455..6a6ac26 100644
--- a/plugin/src/main/java/org/onosproject/yangutils/translator/tojava/javamodel/YangJavaModuleTranslator.java
+++ b/plugin/src/main/java/org/onosproject/yangutils/translator/tojava/javamodel/YangJavaModuleTranslator.java
@@ -36,6 +36,7 @@
import static org.onosproject.yangutils.translator.tojava.YangJavaModelUtils.isRootNodesCodeGenRequired;
import static org.onosproject.yangutils.translator.tojava.utils.JavaIdentifierSyntax.getRootPackage;
import static org.onosproject.yangutils.utils.UtilConstants.SBI;
+import static org.onosproject.yangutils.utils.io.impl.YangIoUtils.removeEmptyDirectory;
import static org.onosproject.yangutils.utils.io.impl.YangIoUtils.searchAndDeleteTempDir;
/**
@@ -77,10 +78,10 @@
public JavaFileInfoTranslator getJavaFileInfo() {
if (javaFileInfo == null) {
throw new TranslatorException("Missing java info in java datamodel node " +
- getName() + " in " +
- getLineNumber() + " at " +
- getCharPosition()
- + " in " + getFileName());
+ getName() + " in " +
+ getLineNumber() + " at " +
+ getCharPosition()
+ + " in " + getFileName());
}
return (JavaFileInfoTranslator) javaFileInfo;
}
@@ -122,13 +123,14 @@
* @throws TranslatorException when fails to generate the source files
*/
@Override
- public void generateCodeEntry(YangPluginConfig yangPlugin) throws TranslatorException {
- String modulePkg = getRootPackage(getVersion(), getNameSpace(), getRevision().getRevDate(),
- yangPlugin.getConflictResolver());
+ public void generateCodeEntry(YangPluginConfig yangPlugin)
+ throws TranslatorException {
+ String modulePkg = getRootPackage(getVersion(), getNameSpace(), getRevision(),
+ yangPlugin.getConflictResolver());
if (isNotificationChildNodePresent(this)) {
getJavaFileInfo().setGeneratedFileTypes(getJavaFileInfo().getGeneratedFileTypes()
- | GENERATE_ALL_EVENT_CLASS_MASK);
+ | GENERATE_ALL_EVENT_CLASS_MASK);
}
try {
generateCodeOfRootNode(this, yangPlugin, modulePkg);
@@ -146,7 +148,8 @@
* Creates a java file using the YANG module info.
*/
@Override
- public void generateCodeExit() throws TranslatorException {
+ public void generateCodeExit()
+ throws TranslatorException {
/*
* As part of the notification support the following files needs to be generated.
* 1) Subject of the notification(event), this is simple interface with builder class.
@@ -171,15 +174,15 @@
}
searchAndDeleteTempDir(getJavaFileInfo().getBaseCodeGenPath() +
- getJavaFileInfo().getPackageFilePath());
- searchAndDeleteTempDir(getJavaFileInfo().getPluginConfig().getCodeGenDir() +
- getJavaFileInfo().getPackageFilePath());
+ getJavaFileInfo().getPackageFilePath());
+ removeEmptyDirectory(getJavaFileInfo().getBaseCodeGenPath() +
+ getJavaFileInfo().getPackageFilePath());
} catch (IOException e) {
throw new TranslatorException("Failed to generate code for module node " +
- getName() + " in " +
- getLineNumber() + " at " +
- getCharPosition()
- + " in " + getFileName() + " " + e.getLocalizedMessage());
+ getName() + " in " +
+ getLineNumber() + " at " +
+ getCharPosition()
+ + " in " + getFileName() + " " + e.getLocalizedMessage());
}
}
diff --git a/plugin/src/main/java/org/onosproject/yangutils/translator/tojava/javamodel/YangJavaSubModuleTranslator.java b/plugin/src/main/java/org/onosproject/yangutils/translator/tojava/javamodel/YangJavaSubModuleTranslator.java
index 4ab4be8..2604262 100644
--- a/plugin/src/main/java/org/onosproject/yangutils/translator/tojava/javamodel/YangJavaSubModuleTranslator.java
+++ b/plugin/src/main/java/org/onosproject/yangutils/translator/tojava/javamodel/YangJavaSubModuleTranslator.java
@@ -19,8 +19,6 @@
import java.util.ArrayList;
import java.util.List;
-import org.onosproject.yangutils.datamodel.YangBelongsTo;
-import org.onosproject.yangutils.datamodel.YangModule;
import org.onosproject.yangutils.datamodel.YangNode;
import org.onosproject.yangutils.datamodel.YangNotification;
import org.onosproject.yangutils.datamodel.javadatamodel.YangJavaSubModule;
@@ -38,6 +36,7 @@
import static org.onosproject.yangutils.translator.tojava.YangJavaModelUtils.isRootNodesCodeGenRequired;
import static org.onosproject.yangutils.translator.tojava.utils.JavaIdentifierSyntax.getRootPackage;
import static org.onosproject.yangutils.utils.UtilConstants.SBI;
+import static org.onosproject.yangutils.utils.io.impl.YangIoUtils.removeEmptyDirectory;
import static org.onosproject.yangutils.utils.io.impl.YangIoUtils.searchAndDeleteTempDir;
/**
@@ -81,10 +80,10 @@
public JavaFileInfoTranslator getJavaFileInfo() {
if (javaFileInfo == null) {
throw new TranslatorException("Missing java info in java datamodel node " +
- getName() + " in " +
- getLineNumber() + " at " +
- getCharPosition()
- + " in " + getFileName());
+ getName() + " in " +
+ getLineNumber() + " at " +
+ getCharPosition()
+ + " in " + getFileName());
}
return (JavaFileInfoTranslator) javaFileInfo;
}
@@ -122,11 +121,10 @@
/**
* Returns the name space of the module to which the sub module belongs to.
*
- * @param belongsToInfo Information of the module to which the sub module belongs
* @return the name space string of the module.
*/
- public String getNameSpaceFromModule(YangBelongsTo belongsToInfo) {
- return ((YangModule) belongsToInfo.getModuleNode()).getNameSpace();
+ public String getNameSpaceFromModule() {
+ return (getBelongsTo().getModuleNode()).getNameSpace();
}
/**
@@ -136,13 +134,14 @@
* @throws TranslatorException when fails to translate
*/
@Override
- public void generateCodeEntry(YangPluginConfig yangPlugin) throws TranslatorException {
- String subModulePkg = getRootPackage(getVersion(), getNameSpaceFromModule(getBelongsTo()),
- getRevision().getRevDate(), yangPlugin.getConflictResolver());
+ public void generateCodeEntry(YangPluginConfig yangPlugin)
+ throws TranslatorException {
+ String subModulePkg = getRootPackage(getVersion(), getNameSpaceFromModule(),
+ getRevision(), yangPlugin.getConflictResolver());
if (isNotificationChildNodePresent(this)) {
getJavaFileInfo().setGeneratedFileTypes(getJavaFileInfo().getGeneratedFileTypes()
- | GENERATE_ALL_EVENT_CLASS_MASK);
+ | GENERATE_ALL_EVENT_CLASS_MASK);
}
try {
generateCodeOfRootNode(this, yangPlugin, subModulePkg);
@@ -161,7 +160,8 @@
* Creates a java file using the YANG submodule info.
*/
@Override
- public void generateCodeExit() throws TranslatorException {
+ public void generateCodeExit()
+ throws TranslatorException {
/**
* As part of the notification support the following files needs to be generated.
* 1) Subject of the notification(event), this is simple interface with builder class.
@@ -185,15 +185,15 @@
}
searchAndDeleteTempDir(getJavaFileInfo().getBaseCodeGenPath() +
- getJavaFileInfo().getPackageFilePath());
- searchAndDeleteTempDir(getJavaFileInfo().getPluginConfig().getCodeGenDir() +
- getJavaFileInfo().getPackageFilePath());
+ getJavaFileInfo().getPackageFilePath());
+ removeEmptyDirectory(getJavaFileInfo().getBaseCodeGenPath() +
+ getJavaFileInfo().getPackageFilePath());
} catch (IOException e) {
throw new TranslatorException("Failed to generate code for submodule node " +
- getName() + " in " +
- getLineNumber() + " at " +
- getCharPosition()
- + " in " + getFileName() + " " + e.getLocalizedMessage());
+ getName() + " in " +
+ getLineNumber() + " at " +
+ getCharPosition()
+ + " in " + getFileName() + " " + e.getLocalizedMessage());
}
}