Class WadlBuilder
- java.lang.Object
-
- org.glassfish.jersey.server.wadl.internal.WadlBuilder
-
public class WadlBuilder extends java.lang.ObjectThis class implements the algorithm how the wadl is built for one or moreResourceclasses. Wadl artifacts are created by aWadlGenerator. Created on: Jun 18, 2008
-
-
Field Summary
Fields Modifier and Type Field Description private WadlGenerator_wadlGeneratorprivate booleandetailedWadlprivate javax.ws.rs.core.UriInfouriInfo
-
Constructor Summary
Constructors Constructor Description WadlBuilder(WadlGenerator wadlGenerator, boolean detailedWadl, javax.ws.rs.core.UriInfo uriInfo)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidaddHint(Application wadlApplication)private voidaddVersion(Application wadlApplication)ApplicationDescriptiongenerate(java.util.List<Resource> resources)Generate WADL for a set of resources.Applicationgenerate(ApplicationDescription description, Resource resource)Generate WADL for a resource.private MethodgenerateMethod(Resource parentResource, java.util.Map<java.lang.String,Param> wadlResourceParams, ResourceMethod resourceMethod)private ParamgenerateParam(Resource resource, ResourceMethod method, Parameter param)private RequestgenerateRequest(Resource parentResource, ResourceMethod resourceMethod, java.util.Map<java.lang.String,Param> wadlResourceParams)private ResourcegenerateResource(Resource r, java.lang.String path)private ResourcegenerateResource(Resource resource, java.lang.String path, java.util.Set<Resource> visitedResources)private java.util.List<Response>generateResponses(Resource r, ResourceMethod m)private ParamgetParamByName(java.util.List<Param> params, java.lang.String name)private RepresentationgetRepresentationByMediaType(java.util.List<Representation> representations, javax.ws.rs.core.MediaType mediaType)private voidprocessRequestParameters(Resource parentResource, ResourceMethod resourceMethod, java.util.Map<java.lang.String,Param> wadlResourceParams, java.util.Collection<Parameter> requestParameters, Request wadlRequest)Recursively processes provided request parameters and adds the resulting WADL information into the WADL request.private RepresentationsetRepresentationForMediaType(Resource r, ResourceMethod m, javax.ws.rs.core.MediaType mediaType, Request wadlRequest)Create the wadlRepresentationfor the specifiedMediaTypeif not yet existing for the wadlRequestand return it.
-
-
-
Field Detail
-
_wadlGenerator
private final WadlGenerator _wadlGenerator
-
uriInfo
private final javax.ws.rs.core.UriInfo uriInfo
-
detailedWadl
private final boolean detailedWadl
-
-
Constructor Detail
-
WadlBuilder
public WadlBuilder(WadlGenerator wadlGenerator, boolean detailedWadl, javax.ws.rs.core.UriInfo uriInfo)
-
-
Method Detail
-
generate
public ApplicationDescription generate(java.util.List<Resource> resources)
Generate WADL for a set of resources.- Parameters:
resources- the set of resources.- Returns:
- the JAXB WADL application bean.
-
generate
public Application generate(ApplicationDescription description, Resource resource)
Generate WADL for a resource.- Parameters:
resource- the resourcedescription- the overall application description so we can- Returns:
- the JAXB WADL application bean
-
addVersion
private void addVersion(Application wadlApplication)
-
addHint
private void addHint(Application wadlApplication)
-
generateMethod
private Method generateMethod(Resource parentResource, java.util.Map<java.lang.String,Param> wadlResourceParams, ResourceMethod resourceMethod)
-
generateRequest
private Request generateRequest(Resource parentResource, ResourceMethod resourceMethod, java.util.Map<java.lang.String,Param> wadlResourceParams)
-
processRequestParameters
private void processRequestParameters(Resource parentResource, ResourceMethod resourceMethod, java.util.Map<java.lang.String,Param> wadlResourceParams, java.util.Collection<Parameter> requestParameters, Request wadlRequest)
Recursively processes provided request parameters and adds the resulting WADL information into the WADL request.
-
setRepresentationForMediaType
private Representation setRepresentationForMediaType(Resource r, ResourceMethod m, javax.ws.rs.core.MediaType mediaType, Request wadlRequest)
Create the wadlRepresentationfor the specifiedMediaTypeif not yet existing for the wadlRequestand return it.- Parameters:
r- the resourcem- the resource methodmediaType- an accepted media type of the resource methodwadlRequest- the wadl request the wadl representation is to be created for (if not yet existing).- Returns:
- the wadl request representation for the specified
MediaType.
-
getRepresentationByMediaType
private Representation getRepresentationByMediaType(java.util.List<Representation> representations, javax.ws.rs.core.MediaType mediaType)
-
generateParam
private Param generateParam(Resource resource, ResourceMethod method, Parameter param)
-
generateResource
private Resource generateResource(Resource resource, java.lang.String path, java.util.Set<Resource> visitedResources)
-
generateResponses
private java.util.List<Response> generateResponses(Resource r, ResourceMethod m)
-
-