org.jvnet.ws.wadl2java.jaxrs
Class JAXRS20ResourceClassGenerator

java.lang.Object
  extended by org.jvnet.ws.wadl2java.common.BaseResourceClassGenerator
      extended by org.jvnet.ws.wadl2java.jaxrs.JAXRS20ResourceClassGenerator
All Implemented Interfaces:
ResourceClassGenerator

public class JAXRS20ResourceClassGenerator
extends BaseResourceClassGenerator

The specific implementation for JAX-RS 2.0 static client

Author:
gdavison

Nested Class Summary
 
Nested classes/interfaces inherited from class org.jvnet.ws.wadl2java.common.BaseResourceClassGenerator
BaseResourceClassGenerator.MethodType
 
Field Summary
 
Fields inherited from class org.jvnet.ws.wadl2java.common.BaseResourceClassGenerator
codeModel, pkg
 
Constructor Summary
JAXRS20ResourceClassGenerator(MessageListener messageListener, ElementToClassResolver resolver, com.sun.codemodel.JCodeModel codeModel, com.sun.codemodel.JPackage pkg, String generatedPackages, JavaDocUtil javaDoc, com.sun.codemodel.JDefinedClass clazz)
          Creates a new instance of BaseResourceClassGenerator.
JAXRS20ResourceClassGenerator(MessageListener messageListener, ElementToClassResolver resolver, com.sun.codemodel.JCodeModel codeModel, com.sun.codemodel.JPackage pkg, String generatedPackages, JavaDocUtil javaDoc, ResourceNode resource)
          Creates a new instance of BaseResourceClassGenerator.
 
Method Summary
protected  String buildMethod()
           
protected  String clientFactoryMethod()
           
protected  com.sun.codemodel.JClass clientFactoryType()
           
protected  com.sun.codemodel.JClass clientResponseClientType()
           
protected  com.sun.codemodel.JClass clientType()
           
protected  com.sun.codemodel.JExpression createProcessInvocation(MethodNode method, com.sun.codemodel.JBlock $methodBody, com.sun.codemodel.JVar $resourceBuilder, String methodString, RepresentationNode inputRep, com.sun.codemodel.JType returnType, com.sun.codemodel.JExpression $returnTypeExpr, com.sun.codemodel.JExpression $entityExpr)
           
protected  com.sun.codemodel.JVar createRequestBuilderAndAccept(com.sun.codemodel.JBlock $methodBody, com.sun.codemodel.JVar $resource, RepresentationNode outputRep)
           
protected  com.sun.codemodel.JDefinedClass generateExceptionClassInternal(String exName, FaultNode f)
          Try to create a new exception class that is relevant for the platform
protected  void generateThrowWebApplicationExceptionFromResponse(com.sun.codemodel.JBlock caseBody, com.sun.codemodel.JVar $response)
          Invoked when we need to throw a generic failure exception because we don't have an element mapped.
protected  com.sun.codemodel.JClass genericTypeType()
           
protected  com.sun.codemodel.JClass resourceBuilderType()
           
protected  String resourceFromClientMethod()
           
protected  com.sun.codemodel.JClass resourceType()
           
protected  String responseGetEntityMethod()
           
 
Methods inherited from class org.jvnet.ws.wadl2java.common.BaseResourceClassGenerator
generateBeanProperty, generateBody, generateClass, generateConditionalForFaultNode, generateExceptionClass, generateMethodDecl, generateMethodDecls, generateMethodVariants, getGeneratedClass, getMethodName, getTypeFromElement
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JAXRS20ResourceClassGenerator

public JAXRS20ResourceClassGenerator(MessageListener messageListener,
                                     ElementToClassResolver resolver,
                                     com.sun.codemodel.JCodeModel codeModel,
                                     com.sun.codemodel.JPackage pkg,
                                     String generatedPackages,
                                     JavaDocUtil javaDoc,
                                     ResourceNode resource)
Creates a new instance of BaseResourceClassGenerator.

Parameters:
javaDoc - a JavaDocUtil instance for use when generating documentation.
resolver - the schema2java model to use for element to class mapping lookups.
codeModel - code model instance to use when generating code.
pkg - package for new classes.
resource - the resource element for which to generate a class.

JAXRS20ResourceClassGenerator

public JAXRS20ResourceClassGenerator(MessageListener messageListener,
                                     ElementToClassResolver resolver,
                                     com.sun.codemodel.JCodeModel codeModel,
                                     com.sun.codemodel.JPackage pkg,
                                     String generatedPackages,
                                     JavaDocUtil javaDoc,
                                     com.sun.codemodel.JDefinedClass clazz)
Creates a new instance of BaseResourceClassGenerator.

Parameters:
javaDoc - a JavaDocUtil instance for use when generating documentation.
resolver - the schema2java model to use for element to class mapping lookups.
codeModel - code model instance to use when generating code.
pkg - package for new classes.
clazz - the existing class.
Method Detail

clientType

protected com.sun.codemodel.JClass clientType()
Specified by:
clientType in class BaseResourceClassGenerator

clientFactoryType

protected com.sun.codemodel.JClass clientFactoryType()
Specified by:
clientFactoryType in class BaseResourceClassGenerator

clientFactoryMethod

protected String clientFactoryMethod()
Specified by:
clientFactoryMethod in class BaseResourceClassGenerator

clientResponseClientType

protected com.sun.codemodel.JClass clientResponseClientType()
Specified by:
clientResponseClientType in class BaseResourceClassGenerator

genericTypeType

protected com.sun.codemodel.JClass genericTypeType()
Specified by:
genericTypeType in class BaseResourceClassGenerator

resourceType

protected com.sun.codemodel.JClass resourceType()
Specified by:
resourceType in class BaseResourceClassGenerator

resourceBuilderType

protected com.sun.codemodel.JClass resourceBuilderType()
Specified by:
resourceBuilderType in class BaseResourceClassGenerator

resourceFromClientMethod

protected String resourceFromClientMethod()
Specified by:
resourceFromClientMethod in class BaseResourceClassGenerator

responseGetEntityMethod

protected String responseGetEntityMethod()
Specified by:
responseGetEntityMethod in class BaseResourceClassGenerator

createRequestBuilderAndAccept

protected com.sun.codemodel.JVar createRequestBuilderAndAccept(com.sun.codemodel.JBlock $methodBody,
                                                               com.sun.codemodel.JVar $resource,
                                                               RepresentationNode outputRep)
Specified by:
createRequestBuilderAndAccept in class BaseResourceClassGenerator

buildMethod

protected String buildMethod()
Specified by:
buildMethod in class BaseResourceClassGenerator

createProcessInvocation

protected com.sun.codemodel.JExpression createProcessInvocation(MethodNode method,
                                                                com.sun.codemodel.JBlock $methodBody,
                                                                com.sun.codemodel.JVar $resourceBuilder,
                                                                String methodString,
                                                                RepresentationNode inputRep,
                                                                com.sun.codemodel.JType returnType,
                                                                com.sun.codemodel.JExpression $returnTypeExpr,
                                                                com.sun.codemodel.JExpression $entityExpr)
Specified by:
createProcessInvocation in class BaseResourceClassGenerator

generateThrowWebApplicationExceptionFromResponse

protected void generateThrowWebApplicationExceptionFromResponse(com.sun.codemodel.JBlock caseBody,
                                                                com.sun.codemodel.JVar $response)
Invoked when we need to throw a generic failure exception because we don't have an element mapped.

Specified by:
generateThrowWebApplicationExceptionFromResponse in class BaseResourceClassGenerator

generateExceptionClassInternal

protected com.sun.codemodel.JDefinedClass generateExceptionClassInternal(String exName,
                                                                         FaultNode f)
                                                                  throws com.sun.codemodel.JClassAlreadyExistsException
Try to create a new exception class that is relevant for the platform

Specified by:
generateExceptionClassInternal in class BaseResourceClassGenerator
Throws:
com.sun.codemodel.JClassAlreadyExistsException - should it already exists


Copyright © 2012. All Rights Reserved.