diff --git a/cli/src/main/scala/scalaxb/compiler/Main.scala b/cli/src/main/scala/scalaxb/compiler/Main.scala index 82d588135..5fdd7b081 100644 --- a/cli/src/main/scala/scalaxb/compiler/Main.scala +++ b/cli/src/main/scala/scalaxb/compiler/Main.scala @@ -116,8 +116,8 @@ object Arguments { verbose = true c } - opt[Unit]("use-varargs") text("use var arguments") action { (_, c) => - c.copy(useVarArg = true) } + opt[Boolean]("use-varargs") text("use var arguments") action { (x, c) => + c.copy(useVarArg = x) } opt[Unit]("generate-lens") text("Generate lenses") action { (_, c) => c.copy(generateLens = true) } help("help") text("display this message") diff --git a/mvn-scalaxb/src/main/java/org/scalaxb/maven/AbstractScalaxbMojo.java b/mvn-scalaxb/src/main/java/org/scalaxb/maven/AbstractScalaxbMojo.java index d1155be4e..bb82ab5ba 100644 --- a/mvn-scalaxb/src/main/java/org/scalaxb/maven/AbstractScalaxbMojo.java +++ b/mvn-scalaxb/src/main/java/org/scalaxb/maven/AbstractScalaxbMojo.java @@ -267,6 +267,11 @@ public File getOutputDirectory() { @Parameter private boolean generateLens; + /** + * Generate case class repeated parameters as varargs if true or Seq if false + */ + @Parameter(defaultValue = "true") + private boolean useVarArgs; /** * Returns the command line options to be used for scalaxb, excluding the * input file names. @@ -291,6 +296,7 @@ protected List arguments() { .flag("--blocking", !async) .flag("--lax-any", laxAny) .flag("--generate-lens", generateLens) + .flag("--use-varargs", useVarArgs) .getArguments(); return unmodifiableList(args); }