[ONOS-5341] Namespace modification to include module name to support RESTCONF based namespace
Change-Id: I663d7fcfaac98f9d1076e46d958557430851da87
diff --git a/plugin/src/main/java/org/onosproject/yangutils/parser/impl/listeners/NamespaceListener.java b/plugin/src/main/java/org/onosproject/yangutils/parser/impl/listeners/NamespaceListener.java
index 0c6a816..6bfaf50 100644
--- a/plugin/src/main/java/org/onosproject/yangutils/parser/impl/listeners/NamespaceListener.java
+++ b/plugin/src/main/java/org/onosproject/yangutils/parser/impl/listeners/NamespaceListener.java
@@ -90,7 +90,7 @@
switch (tmpNode.getYangConstructType()) {
case MODULE_DATA: {
YangModule module = (YangModule) tmpNode;
- module.setNameSpace(removeQuotesAndHandleConcat(ctx.string().getText()));
+ module.setModuleNamespace(removeQuotesAndHandleConcat(ctx.string().getText()));
break;
}
default:
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 adb5c62..064229a 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
@@ -575,7 +575,8 @@
StringBuilder pkg = new StringBuilder();
if (node instanceof YangJavaModuleTranslator) {
YangJavaModuleTranslator module = (YangJavaModuleTranslator) node;
- pkg.append(getRootPackage(module.getVersion(), module.getNameSpace(),
+ pkg.append(getRootPackage(module.getVersion(),
+ module.getModuleNamespace(),
module.getRevision(),
config.getConflictResolver()));
} else if (node instanceof YangJavaSubModuleTranslator) {
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 d9517a8..ae7b016 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
@@ -463,8 +463,8 @@
String pkg;
if (yangNode instanceof YangJavaModuleTranslator) {
YangJavaModuleTranslator module = (YangJavaModuleTranslator) yangNode;
- pkg = getRootPackage(module.getVersion(), module.getNameSpace(), module
- .getRevision(), conflictResolver);
+ pkg = getRootPackage(module.getVersion(), module.getModuleNamespace(),
+ module.getRevision(), conflictResolver);
} else if (yangNode instanceof YangJavaSubModuleTranslator) {
YangJavaSubModuleTranslator submodule = (YangJavaSubModuleTranslator) yangNode;
pkg = getRootPackage(submodule.getVersion(),
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 16ff32c..e0b0dad 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
@@ -127,7 +127,7 @@
@Override
public void generateCodeEntry(YangPluginConfig yangPlugin)
throws TranslatorException {
- String modulePkg = getRootPackage(getVersion(), getNameSpace(),
+ String modulePkg = getRootPackage(getVersion(), getModuleNamespace(),
getRevision(),
yangPlugin.getConflictResolver());
diff --git a/plugin/src/main/java/org/onosproject/yangutils/translator/tojava/javamodel/YangJavaNotificationTranslator.java b/plugin/src/main/java/org/onosproject/yangutils/translator/tojava/javamodel/YangJavaNotificationTranslator.java
index daffc7a..5d6f45d 100644
--- a/plugin/src/main/java/org/onosproject/yangutils/translator/tojava/javamodel/YangJavaNotificationTranslator.java
+++ b/plugin/src/main/java/org/onosproject/yangutils/translator/tojava/javamodel/YangJavaNotificationTranslator.java
@@ -122,6 +122,11 @@
public void generateCodeEntry(YangPluginConfig yangPlugin)
throws TranslatorException {
+ // Obtain the notification name as per enum in notification.
+ String enumName = getEnumJavaAttribute(getName().toUpperCase());
+ ((RpcNotificationContainer) getParent())
+ .addToNotificationEnumMap(enumName, this);
+
/*
* As part of the notification support the following files needs to be
* generated.
@@ -184,27 +189,4 @@
e.getLocalizedMessage()));
}
}
-
- @Override
- public void setNameSpaceAndAddToParentSchemaMap() {
- // Get parent namespace.
- if (getParent() != null) {
- String nameSpace = getParent().getNameSpace();
- // Set namespace for self node.
- setNameSpace(nameSpace);
- // Process addition of leaf to the child schema map of parent.
- processAdditionOfSchemaNodeToParentMap(getName(), getNameSpace());
- // Obtain the notification name as per enum in notification.
- String enumName = getEnumJavaAttribute(getName().toUpperCase());
-
- ((RpcNotificationContainer) getParent())
- .addToNotificationEnumMap(enumName, this);
-
- }
- /*
- * Check if node contains leaf/leaf-list, if yes add namespace for leaf
- * and leaf list.
- */
- setLeafNameSpaceAndAddToParentSchemaMap();
- }
}
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 a530b2a..20fa8d2 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
@@ -15,6 +15,7 @@
*/
package org.onosproject.yangutils.translator.tojava.javamodel;
+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;
@@ -126,7 +127,7 @@
* @return the name space string of the module.
*/
public String getNameSpaceFromModule() {
- return getBelongsTo().getModuleNode().getNameSpace();
+ return ((YangModule) (getBelongsTo().getModuleNode())).getModuleNamespace();
}
/**
diff --git a/plugin/src/test/java/org/onosproject/yangutils/parser/impl/listeners/NamespaceListenerTest.java b/plugin/src/test/java/org/onosproject/yangutils/parser/impl/listeners/NamespaceListenerTest.java
index 3a96361..53ed289 100644
--- a/plugin/src/test/java/org/onosproject/yangutils/parser/impl/listeners/NamespaceListenerTest.java
+++ b/plugin/src/test/java/org/onosproject/yangutils/parser/impl/listeners/NamespaceListenerTest.java
@@ -51,7 +51,8 @@
YangNode node = manager.getDataModel("src/test/resources/NamespaceInDoubleQuotes.yang");
// Checks for the version value in data model tree.
- assertThat(((YangModule) node).getNameSpace(), is("urn:ietf:params:xml:ns:yang:ietf-ospf"));
+ assertThat(((YangModule) node).getModuleNamespace(), is
+ ("urn:ietf:params:xml:ns:yang:ietf-ospf"));
}
/**
@@ -63,7 +64,7 @@
YangNode node = manager.getDataModel("src/test/resources/NamespaceWithoutQuotes.yang");
// Checks for the version value in data model tree.
- assertThat(((YangModule) node).getNameSpace(), is("urn:ietf:params:xml:ns:yang:ietf-ospf"));
+ assertThat(((YangModule) node).getModuleNamespace(), is("urn:ietf:params:xml:ns:yang:ietf-ospf"));
}
/**
diff --git a/plugin/src/test/java/org/onosproject/yangutils/plugin/manager/SchemaNodeTest.java b/plugin/src/test/java/org/onosproject/yangutils/plugin/manager/SchemaNodeTest.java
index a38cf12..366cefe 100644
--- a/plugin/src/test/java/org/onosproject/yangutils/plugin/manager/SchemaNodeTest.java
+++ b/plugin/src/test/java/org/onosproject/yangutils/plugin/manager/SchemaNodeTest.java
@@ -88,14 +88,14 @@
.getNextSibling();
YangSchemaNodeIdentifier yangInputNode = new YangSchemaNodeIdentifier();
yangInputNode.setName("input");
- yangInputNode.setNameSpace("http://huawei.com");
+ yangInputNode.setNameSpace(yangRpcNode.getNameSpace());
assertThat(yangRpcNode.getChildSchema(yangInputNode).getSchemaNode(),
is(yangRpcNode.getChild()));
YangSchemaNodeIdentifier yangOutputNode = new
YangSchemaNodeIdentifier();
yangOutputNode.setName("output");
- yangOutputNode.setNameSpace("http://huawei.com");
+ yangOutputNode.setNameSpace(yangRpcNode.getNameSpace());
assertThat(yangRpcNode.getChildSchema(yangOutputNode).getSchemaNode(),
is(yangRpcNode.getChild().getNextSibling()));
@@ -104,7 +104,7 @@
YangSchemaNodeIdentifier yangInputLeafNode = new
YangSchemaNodeIdentifier();
yangInputLeafNode.setName("image-name");
- yangInputLeafNode.setNameSpace("http://huawei.com");
+ yangInputLeafNode.setNameSpace(yangRpcNode.getNameSpace());
assertThat(yangInput.getChildSchema(yangInputLeafNode),
is(notNullValue()));
@@ -112,7 +112,7 @@
YangSchemaNodeIdentifier yangOutputLeafNode = new
YangSchemaNodeIdentifier();
yangOutputLeafNode.setName("image-name");
- yangOutputLeafNode.setNameSpace("http://huawei.com");
+ yangOutputLeafNode.setNameSpace(yangRpcNode.getNameSpace());
assertThat(yangOutput.getChildSchema(yangOutputLeafNode),
is(notNullValue()));
@@ -123,7 +123,7 @@
YangSchemaNodeIdentifier yangSchemaNodeIdentifier =
new YangSchemaNodeIdentifier();
yangSchemaNodeIdentifier.setName("testcontainer");
- yangSchemaNodeIdentifier.setNameSpace("http://huawei.com");
+ yangSchemaNodeIdentifier.setNameSpace(yangRpcNode.getNameSpace());
assertThat(schemaMap.get(yangSchemaNodeIdentifier), is(notNullValue()));
YangSchemaNodeContextInfo yangSchemaNodeContextInfo =
schemaMap.get(yangSchemaNodeIdentifier);
@@ -136,12 +136,12 @@
rootNode.getChild()
.getYsnContextInfoMap();
yangSchemaNodeIdentifier.setName("testleaf");
- yangSchemaNodeIdentifier.setNameSpace("http://huawei.com");
+ yangSchemaNodeIdentifier.setNameSpace(yangRpcNode.getNameSpace());
assertThat(schemaMap2.get(yangSchemaNodeIdentifier),
is(notNullValue()));
yangSchemaNodeIdentifier.setName("pretzel");
- yangSchemaNodeIdentifier.setNameSpace("http://huawei.com");
+ yangSchemaNodeIdentifier.setNameSpace(yangRpcNode.getNameSpace());
assertThat(schemaMap2.get(yangSchemaNodeIdentifier),
is(notNullValue()));
@@ -151,7 +151,7 @@
rootNode.getChild().getChild()
.getYsnContextInfoMap();
yangSchemaNodeIdentifier.setName("pretzel");
- yangSchemaNodeIdentifier.setNameSpace("http://huawei.com");
+ yangSchemaNodeIdentifier.setNameSpace(yangRpcNode.getNameSpace());
assertThat(schemaMap3.get(yangSchemaNodeIdentifier),
is(notNullValue()));
YangSchemaNodeContextInfo yangSchemaNodeContextInfo3 =
@@ -164,7 +164,7 @@
rootNode.getChild().getChild().getChild()
.getYsnContextInfoMap();
yangSchemaNodeIdentifier.setName("pretzel");
- yangSchemaNodeIdentifier.setNameSpace("http://huawei.com");
+ yangSchemaNodeIdentifier.setNameSpace(yangRpcNode.getNameSpace());
assertThat(schemaMap4.get(yangSchemaNodeIdentifier),
is(notNullValue()));