summaryrefslogtreecommitdiffstats
path: root/configgen/src/main/java/com/yahoo/config/codegen/CNode.java
diff options
context:
space:
mode:
authorgjoranv <gv@oath.com>2017-08-16 17:38:03 +0200
committergjoranv <gv@oath.com>2017-08-17 12:00:02 +0200
commit2b2d0ea6280b54ad37f85b091e6a46b1566d430b (patch)
tree743f3d1d8f2970a93ff94036088f81d9d0619450 /configgen/src/main/java/com/yahoo/config/codegen/CNode.java
parent380098c56a4d6be4762cd060734896fbe450cca7 (diff)
Allow 'package' in def files to specify java package.
* For generating cpp, namespace is still required and package is ignored. * Generating java requires one of them, but both are allowed.
Diffstat (limited to 'configgen/src/main/java/com/yahoo/config/codegen/CNode.java')
-rw-r--r--configgen/src/main/java/com/yahoo/config/codegen/CNode.java24
1 files changed, 20 insertions, 4 deletions
diff --git a/configgen/src/main/java/com/yahoo/config/codegen/CNode.java b/configgen/src/main/java/com/yahoo/config/codegen/CNode.java
index 260d70ad0e6..9dc7923b71b 100644
--- a/configgen/src/main/java/com/yahoo/config/codegen/CNode.java
+++ b/configgen/src/main/java/com/yahoo/config/codegen/CNode.java
@@ -3,10 +3,12 @@ package com.yahoo.config.codegen;
import java.util.StringTokenizer;
+import static com.yahoo.config.codegen.DefParser.DEFAULT_PACKAGE_PREFIX;
+
/**
* Abstract superclass for all nodes representing a definition file.
*
- * @author <a href="gv@yahoo-inc.com">G. Voldengen</a>
+ * @author gjoranv
*/
public abstract class CNode {
@@ -20,8 +22,10 @@ public abstract class CNode {
// TODO: remove! Only set for the root node, and root.getName() returns the same thing!
String defName = null;
+
String defVersion = "";
String defNamespace = null;
+ String defPackage = null;
String defMd5 = "MISSING MD5";
String comment = "";
@@ -78,13 +82,21 @@ public abstract class CNode {
}
public String getNamespace() {
- return defNamespace;
+ if (defNamespace != null) return defNamespace;
+ if (defPackage != null) return defPackage;
+ return null;
}
void setNamespace(String namespace) {
defNamespace = namespace;
}
+ public String getPackage() {
+ return defPackage;
+ }
+
+ void setPackage(String defPackage) { this.defPackage = defPackage; }
+
public String getComment() {
return comment;
}
@@ -155,7 +167,11 @@ public abstract class CNode {
@Override
public String toString() {
- return getNamespace()+"."+getName()+","+getVersion();
+ return "CNode{" +
+ "namespace='" + defNamespace + '\'' +
+ ", package='" + defPackage + '\'' +
+ ", name='" + name + '\'' +
+ ", version='" + defVersion + '\'' +
+ '}';
}
-
}