diff options
author | gjoranv <gv@oath.com> | 2017-09-01 14:30:12 +0200 |
---|---|---|
committer | gjoranv <gv@oath.com> | 2017-09-01 14:30:12 +0200 |
commit | 0ac81a2ede8c413b417fa5d0001927f72fc117ba (patch) | |
tree | 2bac7704861176415987117cf6492938b0ee0061 /configgen/src/main/scala/com/yahoo | |
parent | 79122274b6c40fa4c688740322b2fd460c777266 (diff) |
Revert "Rewrite ConfigGenerator.createClassName to Java."
This reverts commit f6ec274aab8d1b4d2ac25c104bc5a603dc4156ff.
Diffstat (limited to 'configgen/src/main/scala/com/yahoo')
-rw-r--r-- | configgen/src/main/scala/com/yahoo/config/codegen/ConfigGenerator.scala | 19 | ||||
-rw-r--r-- | configgen/src/main/scala/com/yahoo/config/codegen/JavaClassBuilder.scala | 3 |
2 files changed, 17 insertions, 5 deletions
diff --git a/configgen/src/main/scala/com/yahoo/config/codegen/ConfigGenerator.scala b/configgen/src/main/scala/com/yahoo/config/codegen/ConfigGenerator.scala index b4a19ea431d..7ea07762c01 100644 --- a/configgen/src/main/scala/com/yahoo/config/codegen/ConfigGenerator.scala +++ b/configgen/src/main/scala/com/yahoo/config/codegen/ConfigGenerator.scala @@ -2,11 +2,11 @@ package com.yahoo.config.codegen -import com.yahoo.config.codegen.BuilderGenerator.getBuilder -import com.yahoo.config.codegen.ConfiggenUtil.createClassName -import com.yahoo.config.codegen.JavaClassBuilder.Indentation import com.yahoo.config.codegen.LeafCNode._ import com.yahoo.config.codegen.ReservedWords.{INTERNAL_PREFIX => InternalPrefix} +import JavaClassBuilder.Indentation +import BuilderGenerator.getBuilder +import util.parsing.combinator.JavaTokenParsers /** * @author gjoranv @@ -449,4 +449,17 @@ object ConfigGenerator { } } + /** + * Create class name from def name + * @param defName The file name without the '.def' suffix + */ + def createClassName(defName: String): String = { + val className = defName.split("-").map (_.capitalize).mkString + "Config" + val parser = new JavaTokenParsers {} + parser.parseAll(parser.ident, className) match { + case parser.NoSuccess(msg, _) => + throw new CodegenRuntimeException("Illegal config definition file name '" + defName + "': " + msg) + case success => success.get + } + } } 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 e03a6d3d04b..518815d5a10 100644 --- a/configgen/src/main/scala/com/yahoo/config/codegen/JavaClassBuilder.scala +++ b/configgen/src/main/scala/com/yahoo/config/codegen/JavaClassBuilder.scala @@ -3,8 +3,7 @@ package com.yahoo.config.codegen import java.io.{File, FileNotFoundException, FileOutputStream, PrintStream} -import com.yahoo.config.codegen.ConfigGenerator.indentCode -import com.yahoo.config.codegen.ConfiggenUtil.createClassName +import com.yahoo.config.codegen.ConfigGenerator.{createClassName, indentCode} import com.yahoo.config.codegen.DefParser.DEFAULT_PACKAGE_PREFIX import scala.collection.JavaConverters._ |