com.sun.grizzly.osgi.httpservice
Class OSGiServletAdapter

java.lang.Object
  extended by com.sun.grizzly.tcp.StaticResourcesAdapter
      extended by com.sun.grizzly.tcp.http11.GrizzlyAdapter
          extended by com.sun.grizzly.http.servlet.ServletAdapter
              extended by com.sun.grizzly.osgi.httpservice.OSGiServletAdapter
All Implemented Interfaces:
OSGiGrizzlyAdapter, Adapter

public class OSGiServletAdapter
extends ServletAdapter
implements OSGiGrizzlyAdapter

OSGi customized ServletAdapter.

Author:
Hubert Iwaniuk

Field Summary
 
Fields inherited from class com.sun.grizzly.http.servlet.ServletAdapter
classLoader, INCREMENT, initialize, LOAD_ON_STARTUP, properties, REQUEST_RESPONSE_NOTES, SERVLETCONFIG_NOTES, servletInstance
 
Fields inherited from class com.sun.grizzly.tcp.http11.GrizzlyAdapter
ADAPTER_NOTES, ALLOW_BACKSLASH, chunkingDisabled
 
Fields inherited from class com.sun.grizzly.tcp.StaticResourcesAdapter
cache, commitErrorResponse, fileFolders, resourcesContextPath
 
Constructor Summary
OSGiServletAdapter(Servlet servlet, org.osgi.service.http.HttpContext httpContext, HashMap<String,String> initparams, Logger logger)
           
 
Method Summary
 org.osgi.service.http.HttpContext getHttpContext()
           
 ReentrantReadWriteLock.ReadLock getProcessingLock()
          Processing lock.
 ReentrantReadWriteLock.WriteLock getRemovalLock()
          Removal lock.
 OSGiServletAdapter newServletAdapter(Servlet servlet)
          Create a new ServletAdapter instance that will share the same ServletContextImpl and Servlet's listener but with an empty map of init-parameters.
 void startServlet()
          Starts Servlet instance of this OSGiServletAdapter.
 
Methods inherited from class com.sun.grizzly.http.servlet.ServletAdapter
addContextParameter, addFilter, addFilter, addInitParameter, addServletListener, afterService, configureClassLoader, configureServletEnv, containsInitParameter, customizeErrorPage, destroy, doService, getClassLoader, getContextParameters, getContextPath, getInitParameter, getListeners, getProperty, getServletCtx, getServletInstance, getServletPath, isLoadOnStartup, loadServlet, removeInitParameter, removeProperty, removeServletListener, service, setClassLoader, setContextPath, setProperty, setServletInstance, setServletPath, start
 
Methods inherited from class com.sun.grizzly.tcp.http11.GrizzlyAdapter
afterService, isAllowEncodedSlash, isDecodeURL, isHandleStaticResources, service, setAllowEncodedSlash, setDecodeUrl, setHandleStaticResources
 
Methods inherited from class com.sun.grizzly.tcp.StaticResourcesAdapter
addRootFolder, customizedErrorPage, getDefaultContentType, getResourcesContextPath, getRootFolder, getRootFolders, initWebDir, isUseSendFile, service, setDefaultContentType, setLogger, setResourcesContextPath, setRootFolder, setUseSendFile
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

OSGiServletAdapter

public OSGiServletAdapter(Servlet servlet,
                          org.osgi.service.http.HttpContext httpContext,
                          HashMap<String,String> initparams,
                          Logger logger)
Method Detail

newServletAdapter

public OSGiServletAdapter newServletAdapter(Servlet servlet)
Create a new ServletAdapter instance that will share the same ServletContextImpl and Servlet's listener but with an empty map of init-parameters.

Overrides:
newServletAdapter in class ServletAdapter
Parameters:
servlet - - The Servlet associated with the ServletAdapter
Returns:
a new ServletAdapter

startServlet

public void startServlet()
                  throws ServletException
Starts Servlet instance of this OSGiServletAdapter.

Throws:
ServletException - If Servlet startup failed.

getProcessingLock

public ReentrantReadWriteLock.ReadLock getProcessingLock()
Processing lock.

ReentrantReadWriteLock.ReadLock can be obtained by concurrent threads at the same time.

Specified by:
getProcessingLock in interface OSGiGrizzlyAdapter
Returns:
Processing lock.

getRemovalLock

public ReentrantReadWriteLock.WriteLock getRemovalLock()
Removal lock.

ReentrantReadWriteLock.WriteLock can be obtained only by one thread, blocks OSGiGrizzlyAdapter.getProcessingLock().

Specified by:
getRemovalLock in interface OSGiGrizzlyAdapter
Returns:
Removal lock.
See Also:
OSGiGrizzlyAdapter.getProcessingLock(), ReentrantReadWriteLock.WriteLock

getHttpContext

public org.osgi.service.http.HttpContext getHttpContext()


Copyright © 2012 Oracle Corporation. All Rights Reserved.