Add a new JAX-RS server generator - jaxrs-cxf-cdi (#3940)

* Generate a JAX-RS server that assumes an Apache CXF framework on a Java EE server supporting CDI

* Samples for jaxrs-cxf-cdi

* Don't refer to missing class NotFoundException

* Update samples without missing NotFoundException reference
This commit is contained in:
Nick Maynard
2016-10-10 10:18:27 +01:00
committed by wing328
parent 0712ebc33d
commit dc2b8c29e2
39 changed files with 2443 additions and 1 deletions

View File

@@ -0,0 +1,53 @@
package io.swagger.codegen.languages;
import io.swagger.codegen.CodegenModel;
import io.swagger.codegen.CodegenProperty;
import java.io.File;
public class JavaJAXRSCXFCDIServerCodegen extends JavaJAXRSSpecServerCodegen
{
public JavaJAXRSCXFCDIServerCodegen()
{
sourceFolder = "src" + File.separator + "gen" + File.separator + "java";
// Three API templates to support CDI injection
apiTemplateFiles.put("apiService.mustache", ".java");
apiTemplateFiles.put("apiServiceImpl.mustache", ".java");
// Use standard types
typeMapping.put("DateTime", "java.util.Date");
// Updated template directory
embeddedTemplateDir = templateDir = JAXRS_TEMPLATE_DIRECTORY_NAME + File.separator + "cxf-cdi";
}
@Override
public String getName()
{
return "jaxrs-cxf-cdi";
}
@Override
public void processOpts()
{
super.processOpts();
supportingFiles.clear(); // Don't need extra files provided by AbstractJAX-RS & Java Codegen
}
@Override
public void postProcessModelProperty(CodegenModel model, CodegenProperty property) {
super.postProcessModelProperty(model, property);
// Reinstate JsonProperty
model.imports.add("JsonProperty");
}
@Override
public String getHelp()
{
return "Generates a Java JAXRS Server according to JAXRS 2.0 specification, assuming an Apache CXF runtime and a Java EE runtime with CDI enabled.";
}
}