com.sun.jersey.test.framework
Class WebAppDescriptor.Builder

java.lang.Object
  extended by com.sun.jersey.test.framework.AppDescriptor.AppDescriptorBuilder<WebAppDescriptor.Builder,WebAppDescriptor>
      extended by com.sun.jersey.test.framework.WebAppDescriptor.Builder
Enclosing class:
WebAppDescriptor

public static class WebAppDescriptor.Builder
extends AppDescriptor.AppDescriptorBuilder<WebAppDescriptor.Builder,WebAppDescriptor>

The builder for building a Web-based application descriptor.

If properties of the builder are not modified default values be utilized. The default value for initialization and context parameters is an empty map. The default value for the context and servlet path is an empty string. The default value for the servlet class is the class ServletContainer. The default value for the filter class and the servlet context listener class is null.

After the build() has been invoked the state of the builder will be reset to the default values.


Field Summary
protected  Map<String,String> contextParams
           
protected  String contextPath
           
protected  List<WebAppDescriptor.FilterDescriptor> filters
           
protected  Map<String,String> initParams
           
protected  List<Class<? extends EventListener>> listeners
           
protected  Class<? extends javax.servlet.http.HttpServlet> servletClass
           
protected  String servletPath
           
 
Fields inherited from class com.sun.jersey.test.framework.AppDescriptor.AppDescriptorBuilder
cc
 
Constructor Summary
WebAppDescriptor.Builder()
          Create a builder.
WebAppDescriptor.Builder(Map<String,String> initParams)
          Create a builder with initialization parameters.
WebAppDescriptor.Builder(String... packages)
          Create a builder with one or more package names where root resource and provider classes reside.
WebAppDescriptor.Builder(String name, String value)
          Create a builder with one initialization parameter.
 
Method Summary
 WebAppDescriptor.Builder addFilter(Class<? extends javax.servlet.Filter> filterClass, String filterName)
          Adds filter class.
 WebAppDescriptor.Builder addFilter(Class<? extends javax.servlet.Filter> filterClass, String filterName, Map<String,String> initParams)
          Adds filter class.
 WebAppDescriptor build()
          Build the Web-based application descriptor.
 WebAppDescriptor.Builder contextAttributeListenerClass(Class<? extends javax.servlet.ServletContextAttributeListener> contextAttributeListenerClass)
          Set a ServletContextListener class
 WebAppDescriptor.Builder contextListenerClass(Class<? extends javax.servlet.ServletContextListener> contextListenerClass)
          Set a ServletContextListener class
 WebAppDescriptor.Builder contextParam(String name, String value)
          Add a context parameter.
 WebAppDescriptor.Builder contextPath(String contextPath)
          Set the context path.
 WebAppDescriptor.Builder filterClass(Class<? extends javax.servlet.Filter> filterClass)
          Set the filter class.
 WebAppDescriptor.Builder httpSessionActivationListenerClass(Class<? extends javax.servlet.http.HttpSessionActivationListener> httpSessionActivationListenerClass)
          Set a HttpSessionActivationListener class
 WebAppDescriptor.Builder httpSessionAttributeListenerClass(Class<? extends javax.servlet.http.HttpSessionAttributeListener> httpSessionAttributeListenerClass)
          Set a HttpSessionAttributeListener class
 WebAppDescriptor.Builder httpSessionListenerClass(Class<? extends javax.servlet.http.HttpSessionListener> httpSessionListenerClass)
          Set a HttpSessionListener class
 WebAppDescriptor.Builder initParam(String name, String value)
          Add an initialization parameter.
 WebAppDescriptor.Builder requestAttributeListenerClass(Class<? extends javax.servlet.ServletRequestAttributeListener> requestAttributeListenerClass)
          Set a ServletRequestAttributeListener class
 WebAppDescriptor.Builder requestListenerClass(Class<? extends javax.servlet.ServletRequestListener> requestListenerClass)
          Set a ServletRequestListener class
protected  void reset()
           
 WebAppDescriptor.Builder servletClass(Class<? extends javax.servlet.http.HttpServlet> servletClass)
          Set the servlet class.
 WebAppDescriptor.Builder servletPath(String servletPath)
          Set the servlet path.
 
Methods inherited from class com.sun.jersey.test.framework.AppDescriptor.AppDescriptorBuilder
clientConfig
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

initParams

protected Map<String,String> initParams

contextParams

protected Map<String,String> contextParams

servletClass

protected Class<? extends javax.servlet.http.HttpServlet> servletClass

filters

protected List<WebAppDescriptor.FilterDescriptor> filters

listeners

protected List<Class<? extends EventListener>> listeners

contextPath

protected String contextPath

servletPath

protected String servletPath
Constructor Detail

WebAppDescriptor.Builder

public WebAppDescriptor.Builder()
Create a builder.


WebAppDescriptor.Builder

public WebAppDescriptor.Builder(Map<String,String> initParams)
                         throws IllegalArgumentException
Create a builder with initialization parameters.

Parameters:
initParams - a map of intialization parameters. The parameters will be copied.
Throws:
IllegalArgumentException - if initParams is null.

WebAppDescriptor.Builder

public WebAppDescriptor.Builder(String name,
                                String value)
Create a builder with one initialization parameter.

Parameters:
name - the parameter name.
value - the parameter value.

WebAppDescriptor.Builder

public WebAppDescriptor.Builder(String... packages)
                         throws IllegalArgumentException
Create a builder with one or more package names where root resource and provider classes reside.

Parameters:
packages - one or more package names where root resource and provider classes reside.
Throws:
IllegalArgumentException - if packages is null.
Method Detail

initParam

public WebAppDescriptor.Builder initParam(String name,
                                          String value)
Add an initialization parameter.

Parameters:
name - the parameter name.
value - the parameter value.
Returns:
this builder.

contextParam

public WebAppDescriptor.Builder contextParam(String name,
                                             String value)
Add a context parameter.

Parameters:
name - the parameter name.
value - the parameter value.
Returns:
this builder.

servletClass

public WebAppDescriptor.Builder servletClass(Class<? extends javax.servlet.http.HttpServlet> servletClass)
                                      throws IllegalArgumentException
Set the servlet class.

Setting a servlet class resets the filter class to null.

Parameters:
servletClass - the servlet class to serve the application.
Returns:
this builder.
Throws:
IllegalArgumentException - if servletClass is null.

filterClass

public WebAppDescriptor.Builder filterClass(Class<? extends javax.servlet.Filter> filterClass)
                                     throws IllegalArgumentException
Set the filter class.

Setting a filter class resets the servlet class to null

Parameters:
filterClass - the filter class to serve the application.
Returns:
this builder.
Throws:
IllegalArgumentException - if filterClass is null.

addFilter

public WebAppDescriptor.Builder addFilter(Class<? extends javax.servlet.Filter> filterClass,
                                          String filterName)
                                   throws IllegalArgumentException
Adds filter class.

Adding a filter class DOES NOT reset the servlet or filter classes. Filter will be instanciated without initialization parameters.

Parameters:
filterClass - filter class. Must not be null.
filterName - filter name. Must not be null or empty string.
Returns:
this builder.
Throws:
IllegalArgumentException - if filterClass or filterName is null.

addFilter

public WebAppDescriptor.Builder addFilter(Class<? extends javax.servlet.Filter> filterClass,
                                          String filterName,
                                          Map<String,String> initParams)
                                   throws IllegalArgumentException
Adds filter class.

Adding a filter class DOES NOT reset the servlet or filter classes

Parameters:
filterClass - filter class. Must not be null.
filterName - filter name. Must not be null or empty string.
initParams - filter init parameters. Must not be null.
Returns:
this builder.
Throws:
IllegalArgumentException - if filterClass, filterName or initParams is null.

contextPath

public WebAppDescriptor.Builder contextPath(String contextPath)
Set the context path.

Parameters:
contextPath - the context path to the application.
Returns:
this builder.
Throws:
IllegalArgumentException - if contextPath is null.

servletPath

public WebAppDescriptor.Builder servletPath(String servletPath)
Set the servlet path.

Parameters:
servletPath - the context path to the application.
Returns:
this builder.
Throws:
IllegalArgumentException - if servletPath is null.

contextListenerClass

public WebAppDescriptor.Builder contextListenerClass(Class<? extends javax.servlet.ServletContextListener> contextListenerClass)
Set a ServletContextListener class

Parameters:
contextListenerClass - the servlet context listener class.
Returns:
this builder.
Throws:
IllegalArgumentException - if contextListenerClass is null.

contextAttributeListenerClass

public WebAppDescriptor.Builder contextAttributeListenerClass(Class<? extends javax.servlet.ServletContextAttributeListener> contextAttributeListenerClass)
Set a ServletContextListener class

Parameters:
contextAttributeListenerClass - the servlet context listener class.
Returns:
this builder.
Throws:
IllegalArgumentException - if contextListenerClass is null.

requestListenerClass

public WebAppDescriptor.Builder requestListenerClass(Class<? extends javax.servlet.ServletRequestListener> requestListenerClass)
Set a ServletRequestListener class

Parameters:
requestListenerClass - the servlet request listener class.
Returns:
this builder.
Throws:
IllegalArgumentException - if requestListenerClass is null.

requestAttributeListenerClass

public WebAppDescriptor.Builder requestAttributeListenerClass(Class<? extends javax.servlet.ServletRequestAttributeListener> requestAttributeListenerClass)
Set a ServletRequestAttributeListener class

Parameters:
requestAttributeListenerClass - the servlet request attribute listener class.
Returns:
this builder.
Throws:
IllegalArgumentException - if requestAttributeListenerClass is null.

httpSessionListenerClass

public WebAppDescriptor.Builder httpSessionListenerClass(Class<? extends javax.servlet.http.HttpSessionListener> httpSessionListenerClass)
Set a HttpSessionListener class

Parameters:
httpSessionListenerClass - the HTTP Session Listener class.
Returns:
this builder.
Throws:
IllegalArgumentException - if httpSessionListenerClass is null.

httpSessionActivationListenerClass

public WebAppDescriptor.Builder httpSessionActivationListenerClass(Class<? extends javax.servlet.http.HttpSessionActivationListener> httpSessionActivationListenerClass)
Set a HttpSessionActivationListener class

Parameters:
httpSessionActivationListenerClass - the HTTP Session Activation Listener class.
Returns:
this builder.
Throws:
IllegalArgumentException - if httpSessionActivationListenerClass is null.

httpSessionAttributeListenerClass

public WebAppDescriptor.Builder httpSessionAttributeListenerClass(Class<? extends javax.servlet.http.HttpSessionAttributeListener> httpSessionAttributeListenerClass)
Set a HttpSessionAttributeListener class

Parameters:
httpSessionAttributeListenerClass - the HTTPSessionAttributeListener class.
Returns:
this builder.
Throws:
IllegalArgumentException - if httpSessionAttributeListenerClass is null.

build

public WebAppDescriptor build()
Build the Web-based application descriptor. .

Specified by:
build in class AppDescriptor.AppDescriptorBuilder<WebAppDescriptor.Builder,WebAppDescriptor>
Returns:
the Web-based application descriptor.

reset

protected void reset()
Overrides:
reset in class AppDescriptor.AppDescriptorBuilder<WebAppDescriptor.Builder,WebAppDescriptor>


Copyright © 2013 Oracle Corporation. All Rights Reserved.