com.buglabs.osgi.http
Class SharedStateManager

java.lang.Object
  extended by com.buglabs.osgi.http.SharedStateManager
All Implemented Interfaces:
org.osgi.service.log.LogService

public class SharedStateManager
extends java.lang.Object
implements org.osgi.service.log.LogService

This object manages shared state of Http Service accesses by HttpServiceImpl (OSGi interface) and SocketListener (Http Interface).

Author:
ken

Field Summary
 
Fields inherited from interface org.osgi.service.log.LogService
LOG_DEBUG, LOG_ERROR, LOG_INFO, LOG_WARNING
 
Constructor Summary
SharedStateManager(org.osgi.service.log.LogService logService)
           
 
Method Summary
 void addHttpContext(java.lang.String alias, org.osgi.service.http.HttpContext context)
           
 void addResources(java.lang.String alias, java.lang.String name, org.osgi.service.http.HttpContext context)
           
 void addServlet(java.lang.String name, javax.servlet.Servlet servlet)
           
 void addServletConfig(java.lang.String alias, javax.servlet.ServletConfig config)
           
 org.osgi.service.http.HttpContext getHttpContext(java.lang.String name)
           
 org.osgi.service.http.HttpContext getResourceContext(java.lang.String alias)
           
 java.lang.String getResourceName(java.lang.String alias)
           
 javax.servlet.Servlet getServlet(java.lang.String name)
           
 javax.servlet.ServletConfig getServletConfig(java.lang.String alias)
           
 boolean hasResources(java.lang.String alias)
           
 boolean hasServlet(java.lang.String name)
           
 void log(int level, java.lang.String message)
           
 void log(int level, java.lang.String message, java.lang.Throwable exception)
           
 void log(org.osgi.framework.ServiceReference sr, int level, java.lang.String message)
           
 void log(org.osgi.framework.ServiceReference sr, int level, java.lang.String message, java.lang.Throwable exception)
           
 boolean removeResources(java.lang.String name)
           
 boolean removeServlet(java.lang.String name)
           
static void validateAlias(java.lang.String name)
          Refer to OSGi R3 Spec Section 14.2
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SharedStateManager

public SharedStateManager(org.osgi.service.log.LogService logService)
Method Detail

addServlet

public void addServlet(java.lang.String name,
                       javax.servlet.Servlet servlet)

addResources

public void addResources(java.lang.String alias,
                         java.lang.String name,
                         org.osgi.service.http.HttpContext context)

getServlet

public javax.servlet.Servlet getServlet(java.lang.String name)

getResourceContext

public org.osgi.service.http.HttpContext getResourceContext(java.lang.String alias)

getResourceName

public java.lang.String getResourceName(java.lang.String alias)

removeServlet

public boolean removeServlet(java.lang.String name)
Parameters:
name -
Returns:
true if servlet existed and was removed, false otherwise.

removeResources

public boolean removeResources(java.lang.String name)
Parameters:
alias -
Returns:
true if resources existed and were removed.

hasServlet

public boolean hasServlet(java.lang.String name)
Parameters:
name -
Returns:
true if given Servlet has been registered.

hasResources

public boolean hasResources(java.lang.String alias)
Parameters:
alias -
Returns:
true if given resource has been registered.

addHttpContext

public void addHttpContext(java.lang.String alias,
                           org.osgi.service.http.HttpContext context)

getHttpContext

public org.osgi.service.http.HttpContext getHttpContext(java.lang.String name)

validateAlias

public static void validateAlias(java.lang.String name)
                          throws org.osgi.service.http.NamespaceException
Refer to OSGi R3 Spec Section 14.2

Parameters:
name -
Throws:
org.osgi.service.http.NamespaceException

log

public void log(int level,
                java.lang.String message,
                java.lang.Throwable exception)
Specified by:
log in interface org.osgi.service.log.LogService

log

public void log(int level,
                java.lang.String message)
Specified by:
log in interface org.osgi.service.log.LogService

log

public void log(org.osgi.framework.ServiceReference sr,
                int level,
                java.lang.String message,
                java.lang.Throwable exception)
Specified by:
log in interface org.osgi.service.log.LogService

log

public void log(org.osgi.framework.ServiceReference sr,
                int level,
                java.lang.String message)
Specified by:
log in interface org.osgi.service.log.LogService

addServletConfig

public void addServletConfig(java.lang.String alias,
                             javax.servlet.ServletConfig config)

getServletConfig

public javax.servlet.ServletConfig getServletConfig(java.lang.String alias)