From f766937ac7e3afdc38a59a5cbfe8fbbca5bbb171 Mon Sep 17 00:00:00 2001 From: Tony Tam Date: Mon, 9 Sep 2013 17:51:48 -0700 Subject: [PATCH] added set support --- .../swagger/codegen/BasicJavaGenerator.scala | 13 ++++++++++++- .../swagger/codegen/BasicScalaGenerator.scala | 14 +++++++++++++- 2 files changed, 25 insertions(+), 2 deletions(-) diff --git a/src/main/scala/com/wordnik/swagger/codegen/BasicJavaGenerator.scala b/src/main/scala/com/wordnik/swagger/codegen/BasicJavaGenerator.scala index 4b65fc65413..ae59e63aed5 100644 --- a/src/main/scala/com/wordnik/swagger/codegen/BasicJavaGenerator.scala +++ b/src/main/scala/com/wordnik/swagger/codegen/BasicJavaGenerator.scala @@ -120,8 +120,10 @@ class BasicJavaGenerator extends BasicGenerator { val declaredType = dt.indexOf("[") match { case -1 => dt case n: Int => { - if (dt.substring(0, n).toLowerCase == "array") + if (dt.substring(0, n) == "Array") "List" + dt.substring(n).replaceAll("\\[", "<").replaceAll("\\]", ">") + else if (dt.substring(0, n) == "Set") + "Set" + dt.substring(n).replaceAll("\\[", "<").replaceAll("\\]", ">") else dt.replaceAll("\\[", "<").replaceAll("\\]", ">") } } @@ -146,6 +148,15 @@ class BasicJavaGenerator extends BasicGenerator { } declaredType += "<" + toDeclaredType(inner) + ">" } + case "Set" => { + val inner = { + obj.items match { + case Some(items) => items.ref.getOrElse(items.`type`) + case _ => throw new Exception("no inner type defined") + } + } + declaredType += "<" + toDeclaredType(inner) + ">" + } case _ => } (declaredType, defaultValue) diff --git a/src/main/scala/com/wordnik/swagger/codegen/BasicScalaGenerator.scala b/src/main/scala/com/wordnik/swagger/codegen/BasicScalaGenerator.scala index a3dbcd1681a..85441db22a2 100644 --- a/src/main/scala/com/wordnik/swagger/codegen/BasicScalaGenerator.scala +++ b/src/main/scala/com/wordnik/swagger/codegen/BasicScalaGenerator.scala @@ -146,8 +146,10 @@ class BasicScalaGenerator extends BasicGenerator { val declaredType = dt.indexOf("[") match { case -1 => dt case n: Int => { - if (dt.substring(0, n).toLowerCase == "array") + if (dt.substring(0, n) == "Array") "List" + dt.substring(n) + else if (dt.substring(0, n) == "Set") + "Set" + dt.substring(n) else dt } } @@ -176,6 +178,16 @@ class BasicScalaGenerator extends BasicGenerator { val e = "List[%s]" format toDeclaredType(inner) (e, toDefaultValue(inner, obj)) } + case "Set" => { + val inner = { + obj.items match { + case Some(items) => items.ref.getOrElse(items.`type`) + case _ => throw new Exception("no inner type defined") + } + } + val e = "Set[%s]" format toDeclaredType(inner) + (e, toDefaultValue(inner, obj)) + } case e: String => (toDeclaredType(e), toDefaultValue(e, obj)) } }