summaryrefslogtreecommitdiffstats
path: root/configgen/src/main/scala/com/yahoo/config/codegen/JavaClassBuilder.scala
diff options
context:
space:
mode:
Diffstat (limited to 'configgen/src/main/scala/com/yahoo/config/codegen/JavaClassBuilder.scala')
-rw-r--r--configgen/src/main/scala/com/yahoo/config/codegen/JavaClassBuilder.scala43
1 files changed, 23 insertions, 20 deletions
diff --git a/configgen/src/main/scala/com/yahoo/config/codegen/JavaClassBuilder.scala b/configgen/src/main/scala/com/yahoo/config/codegen/JavaClassBuilder.scala
index 5a47d2f7cea..c8c0b659b2f 100644
--- a/configgen/src/main/scala/com/yahoo/config/codegen/JavaClassBuilder.scala
+++ b/configgen/src/main/scala/com/yahoo/config/codegen/JavaClassBuilder.scala
@@ -15,12 +15,14 @@ import scala.collection.JavaConversions._
class JavaClassBuilder(
root: InnerCNode,
nd: NormalizedDefinition,
- destDir: File)
+ destDir: File,
+ rawPackagePrefix: String)
extends ClassBuilder
{
import JavaClassBuilder._
- val javaPackage = PackagePrefix + root.getNamespace
+ val packagePrefix = if (rawPackagePrefix != null) rawPackagePrefix else "com.yahoo."
+ val javaPackage = packagePrefix + root.getNamespace
val className = createClassName(root.getName)
override def createConfigClasses() {
@@ -72,7 +74,7 @@ class JavaClassBuilder(
private def getImportFrameworkClasses(namespace: String): String = {
if (namespace != CNode.DEFAULT_NAMESPACE)
- "import " + PackagePrefix + CNode.DEFAULT_NAMESPACE + ".*;\n"
+ "import " + packagePrefix + CNode.DEFAULT_NAMESPACE + ".*;\n"
else
""
}
@@ -120,11 +122,28 @@ class JavaClassBuilder(
|}
""".stripMargin.trim
}
+
+ /**
+ * @param rootDir The root directory for the destination path.
+ * @param namespace The namespace from the def file
+ * @return the destination path for the generated config file, including the given rootDir.
+ */
+ private def getDestPath(rootDir: File, namespace: String): File = {
+ var dir: File = rootDir
+ val subDirs: Array[String] = (packagePrefix + namespace).split("""\.""")
+ for (subDir <- subDirs) {
+ dir = new File(dir, subDir)
+ this.synchronized {
+ if (!dir.isDirectory && !dir.mkdir) throw new CodegenRuntimeException("Could not create " + dir.getPath)
+ }
+ }
+ dir
+ }
+
}
object JavaClassBuilder {
- private val PackagePrefix: String = System.getProperty("config.packagePrefix", "com.yahoo.")
val Indentation = " "
@@ -161,20 +180,4 @@ object JavaClassBuilder {
candidate
}
- /**
- * @param rootDir The root directory for the destination path.
- * @param namespace The namespace from the def file
- * @return the destination path for the generated config file, including the given rootDir.
- */
- private def getDestPath(rootDir: File, namespace: String): File = {
- var dir: File = rootDir
- val subDirs: Array[String] = (PackagePrefix + namespace).split("""\.""")
- for (subDir <- subDirs) {
- dir = new File(dir, subDir)
- this.synchronized {
- if (!dir.isDirectory && !dir.mkdir) throw new CodegenRuntimeException("Could not create " + dir.getPath)
- }
- }
- dir
- }
}