org.blojsom.servlet
Class BlojsomServlet

java.lang.Object
  extended byjavax.servlet.GenericServlet
      extended byjavax.servlet.http.HttpServlet
          extended byorg.blojsom.servlet.BlojsomBaseServlet
              extended byorg.blojsom.servlet.BlojsomServlet
All Implemented Interfaces:
BlojsomConstants, java.io.Serializable, javax.servlet.Servlet, javax.servlet.ServletConfig

public class BlojsomServlet
extends BlojsomBaseServlet

BlojsomServlet

Version:
$Id: BlojsomServlet.java,v 1.38 2006/01/04 16:59:54 czarneckid Exp $
Author:
David Czarnecki, Mark Lussier
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.blojsom.servlet.BlojsomBaseServlet
_baseConfigurationDirectory, _blojsomConfiguration, _fetcher, _servletConfig
 
Fields inherited from interface org.blojsom.util.BlojsomConstants
ADMINISTRATORS_IP, BLOG_ADMIN_URL_IP, BLOG_ADMINISTRATION_LOCALE_IP, BLOG_AUTHORIZATION_IP, BLOG_BASE_URL_IP, BLOG_BLACKLIST_FILE_IP, BLOG_COMMENTS_DIRECTORY_IP, BLOG_COMMENTS_ENABLED_IP, BLOG_COUNTRY_DEFAULT, BLOG_COUNTRY_IP, BLOG_DEFAULT_CATEGORY_EXCLUSION_MAPPING_IP, BLOG_DEFAULT_CATEGORY_MAPPING_IP, BLOG_DEFAULT_FETCHER, BLOG_DEFAULT_FILE_EXTENSION_IP, BLOG_DEFAULT_FLAVOR_IP, BLOG_DEFAULT_PROPERTIES, BLOG_DEPTH_IP, BLOG_DESCRIPTION_IP, BLOG_DIRECTORY_FILTER_IP, BLOG_EMAIL_ENABLED_IP, BLOG_ENTRIES_DISPLAY_DEFAULT, BLOG_ENTRIES_DISPLAY_IP, BLOG_ENTRY_META_DATA_EXTENSION_IP, BLOG_FILE_ENCODING_IP, BLOG_FILE_EXTENSIONS_IP, BLOG_HOME_IP, BLOG_LANGUAGE_DEFAULT, BLOG_LANGUAGE_IP, BLOG_NAME_IP, BLOG_OWNER, BLOG_OWNER_EMAIL, BLOG_PERMISSIONS_IP, BLOG_PINGBACKS_DIRECTORY_IP, BLOG_PINGBACKS_ENABLED_IP, BLOG_PROPERTIES_EXTENSIONS_IP, BLOG_TRACKBACK_DIRECTORY_IP, BLOG_TRACKBACKS_ENABLED_IP, BLOG_URL_IP, BLOJSOM_ALL_CATEGORIES, BLOJSOM_AUTHORIZATION_PROVIDER_IP, BLOJSOM_BLOG, BLOJSOM_BLOG_HOME_IP, BLOJSOM_BROADCASTER_IP, BLOJSOM_CATEGORIES, BLOJSOM_COMMENTS_ENABLED, BLOJSOM_CONFIGURATION_BASE_DIRECTORY_IP, BLOJSOM_CONFIGURATION_IP, BLOJSOM_DATE, BLOJSOM_DATE_ISO8601, BLOJSOM_DATE_OBJECT, BLOJSOM_DATE_UTC, BLOJSOM_DEFAULT_BROADCASTER, BLOJSOM_DEFAULT_CONFIGURATION_BASE_DIRECTORY, BLOJSOM_DEFAULT_RESOURCE_DIRECTORY, BLOJSOM_DEFAULT_RESOURCE_MANAGER, BLOJSOM_DEFAULT_TEMPLATES_DIRECTORY, BLOJSOM_DEFAULT_USER_IP, BLOJSOM_EMAIL_ENABLED, BLOJSOM_ENTRIES, BLOJSOM_FETCHER_IP, BLOJSOM_FLAVOR_CONFIGURATION_IP, BLOJSOM_INSTALLATION_DIRECTORY_IP, BLOJSOM_INSTALLED_LOCALES_IP, BLOJSOM_LAST_MODIFIED, BLOJSOM_LISTENER_CONFIGURATION_IP, BLOJSOM_PERMALINK, BLOJSOM_PERMALINK_NEXT_ENTRY, BLOJSOM_PERMALINK_PREVIOUS_ENTRY, BLOJSOM_PLUGIN_CHAIN, BLOJSOM_PLUGIN_CONFIGURATION_IP, BLOJSOM_PLUGINS, BLOJSOM_REQUESTED_CATEGORY, BLOJSOM_REQUESTED_FLAVOR, BLOJSOM_RESOURCE_DIRECTORY_IP, BLOJSOM_RESOURCE_MANAGER_BUNDLES_IP, BLOJSOM_RESOURCE_MANAGER_CONTEXT_KEY, BLOJSOM_RESOURCE_MANAGER_IP, BLOJSOM_SITE_URL, BLOJSOM_TEMPLATES_DIRECTORY_IP, BLOJSOM_USER, BLOJSOM_USERS_IP, BLOJSOM_VERSION, BLOJSOM_VERSION_NUMBER, CACHE_CONTROL_HTTP_HEADER, CATEGORY_PARAM, COMMENT_EXTENSION, DEFAULT_AUTHORIZATION_PROVIDER, DEFAULT_COMMENTS_DIRECTORY, DEFAULT_DIGEST_ALGORITHM, DEFAULT_DISPATCHER_CONFIGURATION_FILE, DEFAULT_ENTRY_EXTENSION, DEFAULT_FLAVOR_CONFIGURATION_FILE, DEFAULT_FLAVOR_HTML, DEFAULT_METADATA_EXTENSION, DEFAULT_PERMISSIONS_CONFIGURATION_FILE, DEFAULT_PINGBACKS_DIRECTORY, DEFAULT_PLUGIN_CONFIGURATION_FILE, DEFAULT_PROPERTIES_EXTENSIONS, DEFAULT_TRACKBACK_DIRECTORY, DESCRIPTION_KEY, DIGEST_ALGORITHM, FLAVOR_PARAM, HTTP_ETAG, HTTP_LASTMODIFIED, INFINITE_BLOG_DEPTH, ISO_8601_DATE_FORMAT, LINE_SEPARATOR, LINEAR_NAVIGATION_ENABLED_IP, MAX_HASHABLE_LENGTH, NAME_KEY, NO_CACHE_HTTP_HEADER_VALUE, OVERRIDE_LASTMODIFIED_PARAM, PAGE_PARAM, PAGE_PARAM_ARCHIVE, PERMALINK_PARAM, PINGBACK_EXTENSION, PLUGINS_PARAM, PRAGMA_HTTP_HEADER, PREFERRED_SYNDICATION_FLAVOR, RECURSIVE_CATEGORIES, REDIRECT_TO_PARAM, RFC_822_DATE_FORMAT, SHORT_ISO_8601_DATE_FORMAT, TRACKBACK_EXTENSION, USE_ENCRYPTED_PASSWORDS, UTC_DATE_FORMAT, UTF8, WHITESPACE, XMLRPC_ENABLED_IP
 
Constructor Summary
BlojsomServlet()
          Create a new blojsom servlet instance
 
Method Summary
protected  void configureDispatchers(javax.servlet.ServletConfig servletConfig)
          Configure the dispatchers that blojsom will use when passing a request/response on to a particular template
protected  void configureFlavorsForBlog(javax.servlet.ServletConfig servletConfig, BlogUser blogUser)
          Configure the flavors for the blog which map flavor values like "html" and "rss" to the proper template and content type
protected  void configurePlugins(javax.servlet.ServletConfig servletConfig)
          Load the plugins
protected  void configurePluginsForBlog(javax.servlet.ServletConfig servletConfig, BlogUser blogUser)
          Configure the plugins that blojsom will use for a given blog
protected  void configureResourceManager()
          Instantiate the resource manager
 void destroy()
          Called when removing the servlet from the servlet container.
 void init(javax.servlet.ServletConfig servletConfig)
          Initialize blojsom: configure blog, configure flavors, configure dispatchers
protected  void service(javax.servlet.http.HttpServletRequest httpServletRequest, javax.servlet.http.HttpServletResponse httpServletResponse)
          Service a request to blojsom
 
Methods inherited from class org.blojsom.servlet.BlojsomBaseServlet
configureBlojsom, configureFetcher
 
Methods inherited from class javax.servlet.http.HttpServlet
doDelete, doGet, doHead, doOptions, doPost, doPut, doTrace, getLastModified, service
 
Methods inherited from class javax.servlet.GenericServlet
getInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletInfo, getServletName, init, log, log
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BlojsomServlet

public BlojsomServlet()
Create a new blojsom servlet instance

Method Detail

configureDispatchers

protected void configureDispatchers(javax.servlet.ServletConfig servletConfig)
                             throws javax.servlet.ServletException
Configure the dispatchers that blojsom will use when passing a request/response on to a particular template

Parameters:
servletConfig - Servlet configuration information
Throws:
javax.servlet.ServletException

configureFlavorsForBlog

protected void configureFlavorsForBlog(javax.servlet.ServletConfig servletConfig,
                                       BlogUser blogUser)
                                throws javax.servlet.ServletException
Configure the flavors for the blog which map flavor values like "html" and "rss" to the proper template and content type

Parameters:
servletConfig - Servlet configuration information
Throws:
javax.servlet.ServletException
Since:
blojsom 2.24

configurePlugins

protected void configurePlugins(javax.servlet.ServletConfig servletConfig)
                         throws javax.servlet.ServletException
Load the plugins

Parameters:
servletConfig - ServletConfig
Throws:
javax.servlet.ServletException - If there is an error loading the plugin configuration file
Since:
blojsom 2.24

configurePluginsForBlog

protected void configurePluginsForBlog(javax.servlet.ServletConfig servletConfig,
                                       BlogUser blogUser)
                                throws javax.servlet.ServletException
Configure the plugins that blojsom will use for a given blog

Parameters:
servletConfig - Servlet configuration information
blogUser - BlogUser information
Throws:
javax.servlet.ServletException
Since:
blojsom 2.24

configureResourceManager

protected void configureResourceManager()
                                 throws javax.servlet.ServletException
Instantiate the resource manager

Throws:
javax.servlet.ServletException - If there is an error instantiating the resource manager class

init

public void init(javax.servlet.ServletConfig servletConfig)
          throws javax.servlet.ServletException
Initialize blojsom: configure blog, configure flavors, configure dispatchers

Specified by:
init in interface javax.servlet.Servlet
Overrides:
init in class BlojsomBaseServlet
Parameters:
servletConfig - Servlet configuration information
Throws:
javax.servlet.ServletException - If there is an error initializing blojsom

service

protected void service(javax.servlet.http.HttpServletRequest httpServletRequest,
                       javax.servlet.http.HttpServletResponse httpServletResponse)
                throws javax.servlet.ServletException,
                       java.io.IOException
Service a request to blojsom

Parameters:
httpServletRequest - Request
httpServletResponse - Response
Throws:
javax.servlet.ServletException - If there is an error processing the request
java.io.IOException - If there is an error in IO

destroy

public void destroy()
Called when removing the servlet from the servlet container. Also calls the BlojsomPlugin.destroy() method for each of the plugins loaded by blojsom. This method also calls the BlojsomFetcher.destroy() method for the fetcher loaded by blojsom.