PageMixer API - 3.1

jp.ne.dti.lares.foozy.pagemixer.servlet
Class ServletContextLocator

java.lang.Object
  |
  +--jp.ne.dti.lares.foozy.pagemixer.page.ClassLoaderLocator
        |
        +--jp.ne.dti.lares.foozy.pagemixer.servlet.ServletContextLocator
All Implemented Interfaces:
Locator

public class ServletContextLocator
extends ClassLoaderLocator

Locate resource by ServletContext(and ClassLoader).

This gets InputStream of resource by ServletContext#getResourceAsStream or Class#getResourceAsStream, so this does not locate resoruce out of Servlet container (or class loading domain).

You should use WebAppLocator if you want to reload modified target resource dynamicaly.

Since:
PageMixer 3.0(as one in this package)
See Also:
WebAppLocator

Constructor Summary
ServletContextLocator(javax.servlet.ServletContext context)
          Create locator to locate resoruce by given context
ServletContextLocator(javax.servlet.ServletContext context, java.lang.Class baseClass)
          Create locator to locate resoruce by given context and class
 
Method Summary
 java.io.InputStream getInputStream(java.lang.Object descriptor)
          Get InputStram by ServletContext#getResourceAsStream.
 
Methods inherited from class jp.ne.dti.lares.foozy.pagemixer.page.ClassLoaderLocator
close, getLastModified, isNewerThan, open
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ServletContextLocator

public ServletContextLocator(javax.servlet.ServletContext context)
Create locator to locate resoruce by given context
Parameters:
context - to locate resource

ServletContextLocator

public ServletContextLocator(javax.servlet.ServletContext context,
                             java.lang.Class baseClass)
Create locator to locate resoruce by given context and class
Parameters:
context - to locate resource
baseClass - to locate resource
Method Detail

getInputStream

public java.io.InputStream getInputStream(java.lang.Object descriptor)
                                   throws java.io.IOException
Get InputStram by ServletContext#getResourceAsStream.

Then, invoke super.getInputStream(Object) if resource is not located by ServletContext#getResourceAsStream.

Overrides:
getInputStream in class ClassLoaderLocator
Following copied from interface: jp.ne.dti.lares.foozy.pagemixer.page.Locator
Parameters:
descriptor - ,implementation specific
Returns:
stream to input specified resource
Throws:
java.io.IOException - fail to create stream

PageMixer API - 3.1