From 8befb95986c3248bf3590bedf6223f23b034128c Mon Sep 17 00:00:00 2001 From: Tony Tam Date: Mon, 16 Feb 2015 18:19:06 -0800 Subject: [PATCH] added type tag --- .../wordnik/swagger/codegen/CodegenType.java | 34 +++++++++++++++++++ .../languages/AndroidClientCodegen.java | 4 +++ .../codegen/languages/JavaClientCodegen.java | 4 +++ .../codegen/languages/JaxRSServerCodegen.java | 4 +++ .../languages/NodeJSServerCodegen.java | 4 +++ .../codegen/languages/ObjcClientCodegen.java | 4 +++ .../codegen/languages/PhpClientCodegen.java | 5 ++- .../languages/PythonClientCodegen.java | 19 +++-------- .../codegen/languages/ScalaClientCodegen.java | 4 +++ .../languages/ScalatraServerCodegen.java | 4 +++ .../codegen/languages/StaticDocCodegen.java | 4 +++ .../languages/StaticHtmlGenerator.java | 4 +++ .../codegen/languages/SwaggerGenerator.java | 4 +++ .../codegen/languages/TizenClientCodegen.java | 4 +++ 14 files changed, 86 insertions(+), 16 deletions(-) create mode 100644 modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/CodegenType.java diff --git a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/CodegenType.java b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/CodegenType.java new file mode 100644 index 00000000000..5a39a23fde1 --- /dev/null +++ b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/CodegenType.java @@ -0,0 +1,34 @@ +package com.wordnik.swagger.codegen; + +import com.fasterxml.jackson.annotation.*; + +import java.util.Map; +import java.util.HashMap; + +public enum CodegenType { + CLIENT, SERVER, DOCUMENTATION, OTHER; + + private static Map names = new HashMap(); + + static { + names.put("client", CLIENT); + names.put("server", SERVER); + names.put("documentation", DOCUMENTATION); + names.put("other", OTHER); + } + + @JsonCreator + public static CodegenType forValue(String value) { + return names.get(value.toLowerCase()); + } + + @JsonValue + public String toValue() { + for (Map.Entry entry : names.entrySet()) { + if (entry.getValue() == this) + return entry.getKey(); + } + + return null; // or fail + } +} \ No newline at end of file diff --git a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/AndroidClientCodegen.java b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/AndroidClientCodegen.java index 7e43b2622aa..e27da8b276b 100644 --- a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/AndroidClientCodegen.java +++ b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/AndroidClientCodegen.java @@ -13,6 +13,10 @@ public class AndroidClientCodegen extends DefaultCodegen implements CodegenConfi protected String artifactVersion = "1.0.0"; protected String sourceFolder = "src/main/java"; + public CodegenType getTag() { + return CodegenType.CLIENT; + } + public String getName() { return "android"; } diff --git a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/JavaClientCodegen.java b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/JavaClientCodegen.java index ab710431b78..6b201b449b0 100644 --- a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/JavaClientCodegen.java +++ b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/JavaClientCodegen.java @@ -13,6 +13,10 @@ public class JavaClientCodegen extends DefaultCodegen implements CodegenConfig { protected String artifactVersion = "1.0.0"; protected String sourceFolder = "src/main/java"; + public CodegenType getTag() { + return CodegenType.CLIENT; + } + public String getName() { return "java"; } diff --git a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/JaxRSServerCodegen.java b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/JaxRSServerCodegen.java index 3e6702a8473..f4aac0e74eb 100644 --- a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/JaxRSServerCodegen.java +++ b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/JaxRSServerCodegen.java @@ -17,6 +17,10 @@ public class JaxRSServerCodegen extends JavaClientCodegen implements CodegenConf protected String sourceFolder = "src/main/java"; protected String title = "Swagger Server"; + public CodegenType getTag() { + return CodegenType.SERVER; + } + public String getName() { return "jaxrs"; } diff --git a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/NodeJSServerCodegen.java b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/NodeJSServerCodegen.java index 4e8caeed656..8ae6e955b9c 100644 --- a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/NodeJSServerCodegen.java +++ b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/NodeJSServerCodegen.java @@ -17,6 +17,10 @@ public class NodeJSServerCodegen extends DefaultCodegen implements CodegenConfig protected String artifactId = "swagger-client"; protected String artifactVersion = "1.0.0"; + public CodegenType getTag() { + return CodegenType.SERVER; + } + public String getName() { return "nodejs"; } diff --git a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/ObjcClientCodegen.java b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/ObjcClientCodegen.java index f4171aadbb2..f82e863d994 100644 --- a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/ObjcClientCodegen.java +++ b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/ObjcClientCodegen.java @@ -12,6 +12,10 @@ public class ObjcClientCodegen extends DefaultCodegen implements CodegenConfig { protected String sourceFolder = "client"; protected static String PREFIX = "SWG"; + public CodegenType getTag() { + return CodegenType.CLIENT; + } + public String getName() { return "objc"; } diff --git a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/PhpClientCodegen.java b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/PhpClientCodegen.java index 027d66f1aa1..9682e28f847 100644 --- a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/PhpClientCodegen.java +++ b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/PhpClientCodegen.java @@ -12,7 +12,10 @@ public class PhpClientCodegen extends DefaultCodegen implements CodegenConfig { protected String groupId = "com.wordnik"; protected String artifactId = "swagger-client"; protected String artifactVersion = "1.0.0"; - // protected String sourceFolder = ""; + + public CodegenType getTag() { + return CodegenType.CLIENT; + } public String getName() { return "php"; diff --git a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/PythonClientCodegen.java b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/PythonClientCodegen.java index d37a18f72c4..801db74fe3c 100755 --- a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/PythonClientCodegen.java +++ b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/PythonClientCodegen.java @@ -1,18 +1,3 @@ -/** - * Copyright 2014 Wordnik, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ package com.wordnik.swagger.codegen.languages; import com.wordnik.swagger.codegen.*; @@ -23,6 +8,10 @@ import java.io.File; public class PythonClientCodegen extends DefaultCodegen implements CodegenConfig { String module = "client"; + public CodegenType getTag() { + return CodegenType.CLIENT; + } + public String getName() { return "python"; } diff --git a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/ScalaClientCodegen.java b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/ScalaClientCodegen.java index 892ef2de99c..39f2dfba694 100644 --- a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/ScalaClientCodegen.java +++ b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/ScalaClientCodegen.java @@ -16,6 +16,10 @@ public class ScalaClientCodegen extends DefaultCodegen implements CodegenConfig protected boolean authPreemptive = false; protected boolean asyncHttpClient = !authScheme.isEmpty(); + public CodegenType getTag() { + return CodegenType.CLIENT; + } + public String getName() { return "scala"; } diff --git a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/ScalatraServerCodegen.java b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/ScalatraServerCodegen.java index e87609b720d..2670706f101 100644 --- a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/ScalatraServerCodegen.java +++ b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/ScalatraServerCodegen.java @@ -14,6 +14,10 @@ public class ScalatraServerCodegen extends DefaultCodegen implements CodegenConf protected String artifactVersion = "1.0.0"; protected String sourceFolder = "src/main/scala"; + public CodegenType getTag() { + return CodegenType.SERVER; + } + public String getName() { return "scalatra"; } diff --git a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/StaticDocCodegen.java b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/StaticDocCodegen.java index 3386a5f9fac..f6c24d381bd 100644 --- a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/StaticDocCodegen.java +++ b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/StaticDocCodegen.java @@ -13,6 +13,10 @@ public class StaticDocCodegen extends DefaultCodegen implements CodegenConfig { protected String artifactVersion = "1.0.0"; protected String sourceFolder = "docs"; + public CodegenType getTag() { + return CodegenType.DOCUMENTATION; + } + public String getName() { return "dynamic-html"; } diff --git a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/StaticHtmlGenerator.java b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/StaticHtmlGenerator.java index 42ce9fe3604..d5ebe81c16e 100644 --- a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/StaticHtmlGenerator.java +++ b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/StaticHtmlGenerator.java @@ -14,6 +14,10 @@ public class StaticHtmlGenerator extends DefaultCodegen implements CodegenConfig protected String artifactVersion = "1.0.0"; protected String sourceFolder = "src/main/scala"; + public CodegenType getTag() { + return CodegenType.DOCUMENTATION; + } + public String getName() { return "html"; } diff --git a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/SwaggerGenerator.java b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/SwaggerGenerator.java index 49f5dc6bab4..8ad75ae3e21 100644 --- a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/SwaggerGenerator.java +++ b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/SwaggerGenerator.java @@ -9,6 +9,10 @@ import org.apache.commons.io.FileUtils; import java.io.File; public class SwaggerGenerator extends DefaultCodegen implements CodegenConfig { + public CodegenType getTag() { + return CodegenType.DOCUMENTATION; + } + public String getName() { return "swagger"; } diff --git a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/TizenClientCodegen.java b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/TizenClientCodegen.java index d91267758ee..007a978d36b 100644 --- a/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/TizenClientCodegen.java +++ b/modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/TizenClientCodegen.java @@ -13,6 +13,10 @@ public class TizenClientCodegen extends DefaultCodegen implements CodegenConfig protected static String PREFIX = "Sami"; protected Map namespaces = new HashMap(); + public CodegenType getTag() { + return CodegenType.CLIENT; + } + public String getName() { return "tizen"; }