forked from loafle/openapi-generator-original
Swagger Codegen: Made location of model and resource classes to be generated as one single output directory command line parameter for code generator
This commit is contained in:
parent
851e916bf6
commit
7ca4482af9
@ -10,24 +10,36 @@
|
|||||||
<import file="${build.common.dir}/ant/ant-server.xml" />
|
<import file="${build.common.dir}/ant/ant-server.xml" />
|
||||||
<import file="${build.common.dir}/ant/ant-test.xml" />
|
<import file="${build.common.dir}/ant/ant-test.xml" />
|
||||||
|
|
||||||
<!-- generates the classes -->
|
<condition property="outputPath.set">
|
||||||
<target name="generate-java" depends="compile" description="generates API and model classes for java language">
|
<and>
|
||||||
<delete>
|
<isset property="outputPath"/>
|
||||||
<fileset dir="../java/src/main/java/com/wordnik/api" includes="*.java"/>
|
</and>
|
||||||
<fileset dir="../java/src/main/java/com/wordnik/model" includes="*.java"/>
|
</condition>
|
||||||
</delete>
|
<!-- generates the classes -->
|
||||||
<java classname="com.wordnik.codegen.java.JavaLibCodeGen">
|
<target name="generate-java" depends="compile" description="generates API and model classes for java language">
|
||||||
<classpath>
|
<fail unless="outputPath.set">
|
||||||
<pathelement location="build/main/java" />
|
Must specify the parameter: outputPath eg. -DoutputPath=../java/src/main/java/com/wordnik/
|
||||||
<fileset dir="lib">
|
</fail>
|
||||||
<include name="**/*.jar"/>
|
<echo>
|
||||||
</fileset>
|
outputPath for Api = ${outputPath}
|
||||||
</classpath>
|
</echo>
|
||||||
</java>
|
<delete>
|
||||||
<copy todir="../java/src/main/java/" overwrite="true">
|
<fileset dir="${outputPath}" includes="*.java"/>
|
||||||
<fileset dir="../java/src/lang/java"/>
|
</delete>
|
||||||
</copy>
|
<java classname="com.wordnik.codegen.java.JavaLibCodeGen">
|
||||||
</target>
|
<classpath>
|
||||||
|
<pathelement location="build/main/java" />
|
||||||
|
<fileset dir="lib">
|
||||||
|
<include name="**/*.jar"/>
|
||||||
|
</fileset>
|
||||||
|
</classpath>
|
||||||
|
<arg value="${outputPath}"/>
|
||||||
|
<!--<arg value="../java/src/main/java/com/wordnik/"/>-->
|
||||||
|
</java>
|
||||||
|
<copy todir="../java/src/main/java/" overwrite="true">
|
||||||
|
<fileset dir="../java/src/lang/java"/>
|
||||||
|
</copy>
|
||||||
|
</target>
|
||||||
|
|
||||||
</project>
|
</project>
|
||||||
|
|
||||||
|
@ -1,20 +1,17 @@
|
|||||||
package com.wordnik.codegen;
|
package com.wordnik.codegen;
|
||||||
|
|
||||||
import com.sun.jersey.api.client.Client;
|
|
||||||
import com.sun.jersey.api.client.ClientResponse;
|
|
||||||
import com.sun.jersey.api.client.WebResource;
|
|
||||||
import com.wordnik.codegen.api.SwaggerApi;
|
import com.wordnik.codegen.api.SwaggerApi;
|
||||||
import com.wordnik.codegen.config.CodeGenConfig;
|
import com.wordnik.codegen.config.CodeGenConfig;
|
||||||
import com.wordnik.codegen.config.GenerationEnvironmentConfig;
|
import com.wordnik.codegen.config.GenerationEnvironmentConfig;
|
||||||
import com.wordnik.codegen.resource.*;
|
import com.wordnik.codegen.resource.*;
|
||||||
import com.wordnik.exception.CodeGenerationException;
|
import com.wordnik.exception.CodeGenerationException;
|
||||||
|
|
||||||
import org.antlr.stringtemplate.StringTemplate;
|
import org.antlr.stringtemplate.StringTemplate;
|
||||||
import org.antlr.stringtemplate.StringTemplateGroup;
|
import org.antlr.stringtemplate.StringTemplateGroup;
|
||||||
import org.codehaus.jackson.map.ObjectMapper;
|
|
||||||
import org.codehaus.jackson.map.DeserializationConfig.Feature;
|
|
||||||
|
|
||||||
import java.io.*;
|
import java.io.BufferedWriter;
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.FileWriter;
|
||||||
|
import java.io.IOException;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
package com.wordnik.codegen.java;
|
package com.wordnik.codegen.java;
|
||||||
|
|
||||||
import com.wordnik.codegen.config.GenerationEnvironmentConfig;
|
import com.wordnik.codegen.config.GenerationEnvironmentConfig;
|
||||||
|
import com.wordnik.exception.CodeGenerationException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User: deepakmichael
|
* User: deepakmichael
|
||||||
@ -9,9 +10,15 @@ import com.wordnik.codegen.config.GenerationEnvironmentConfig;
|
|||||||
*/
|
*/
|
||||||
public class JavaGenEnvConfig extends GenerationEnvironmentConfig{
|
public class JavaGenEnvConfig extends GenerationEnvironmentConfig{
|
||||||
|
|
||||||
public JavaGenEnvConfig() {
|
public JavaGenEnvConfig(String outputPath) {
|
||||||
this.setModelClassLocation("../java/src/main/java/com/wordnik/model/");
|
if(outputPath == null){
|
||||||
this.setResourceClassLocation("../java/src/main/java/com/wordnik/api/");
|
throw new CodeGenerationException("Error creating output path : Output path was null ");
|
||||||
|
}
|
||||||
|
|
||||||
|
outputPath = outputPath.endsWith("/") ? outputPath.substring(0, outputPath.lastIndexOf("/")) : outputPath;
|
||||||
|
|
||||||
|
this.setModelClassLocation(outputPath + "/model/");
|
||||||
|
this.setResourceClassLocation(outputPath + "/api/");
|
||||||
this.setTemplateLocation("conf/templates/java");
|
this.setTemplateLocation("conf/templates/java");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
package com.wordnik.codegen.java;
|
package com.wordnik.codegen.java;
|
||||||
|
|
||||||
import com.wordnik.codegen.DriverCodeGenerator;
|
import com.wordnik.codegen.DriverCodeGenerator;
|
||||||
|
import com.wordnik.exception.CodeGenerationException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User: ramesh
|
* User: ramesh
|
||||||
@ -10,12 +11,17 @@ import com.wordnik.codegen.DriverCodeGenerator;
|
|||||||
public class JavaLibCodeGen extends DriverCodeGenerator {
|
public class JavaLibCodeGen extends DriverCodeGenerator {
|
||||||
|
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
JavaLibCodeGen codeGenerator = new JavaLibCodeGen();
|
if(args.length < 1){
|
||||||
|
throw new CodeGenerationException("Invalid number of arguments passed: No command line argument was passed to the program for output path");
|
||||||
|
}
|
||||||
|
|
||||||
|
String outputPath = args[0];
|
||||||
|
JavaLibCodeGen codeGenerator = new JavaLibCodeGen(outputPath);
|
||||||
codeGenerator.generateCode();
|
codeGenerator.generateCode();
|
||||||
}
|
}
|
||||||
|
|
||||||
public JavaLibCodeGen(){
|
public JavaLibCodeGen(String outputPath){
|
||||||
this.setConfig(new JavaCodeGenConfig());
|
this.setConfig(new JavaCodeGenConfig());
|
||||||
this.setEnvConfig(new JavaGenEnvConfig());
|
this.setEnvConfig(new JavaGenEnvConfig(outputPath));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user