com.raritantechnologies.searchApp.taglibrary
Class PageImportRenderer

java.lang.Object
  extended bycom.raritantechnologies.searchApp.taglibrary.PageImportRenderer
All Implemented Interfaces:
IConfigurable, IPageContextRenderer
Direct Known Subclasses:
DynamicPageImportRenderer, FTPPageImportRenderer, HTMLScraperPageImportRenderer, RoleBasedPageImportRenderer, RSSPageImportRenderer, TabbedPageImportRenderer, TreeNodePageImportRenderer, URLPageImportRenderer, XMLEditorRenderer

public class PageImportRenderer
extends java.lang.Object
implements IPageContextRenderer

Imports external HTML fragment from a file into a page. Used by the PageImportTag to insert the html fragment into a JSP page.

Typically use<SystemObject> for configuration. Type="PageImportRenderer".

XML Configuration Template:
   <SystemObject type="PageImportRenderer" name="[The SysObject Name]"
                    configurableClass="com.raritantechnologies.searchApp.taglibrary.PageImportRenderer"
                    addPersistentParams="true|false"
                    addRequestParams="true(default)|false" 
                    pageLookupSource="HTMLfileName">

      <PageElements>
        <PageElement>

          <Header>[The header html]</Header>
          <Trailer>[The trailer html]</Trailer>

          <Body fileName="[theBodyFilename]" />
			<Body lookupSource="[theBodyFilename]" />
			<Body resultField="[to store the result from looking up source]"/>
        </PageElement>
      </PageElements>

      <!-- Optional String Filter that will be applied to the imported page data -->
      <StringFilter class="[ class of com.raritantechnologies.utils.filter.IStringFilter ]" >

      </StringFilter>

    </SystemObject>

   <!-- Alternate configuration that can extract data from a Jar or Zip file: -->
   <!--  Jar or Zip file Entry -->
   <SystemObject type="PageImportRenderer" name="[The SysObject Name]"
                    configurableClass="com.raritantechnologies.searchApp.taglibrary.PageImportRenderer"
                    addPersistentParams="true|false" >
      <PageElements>
        <PageElement>
          <Header>[The header html]</Header>
          <Trailer>[The trailer html]</Trailer>
          <Body fileName="[theJarname]" type="jar" entry="[entry name]" />
        </PageElement>

        <!-- Alternatively can specify the HTML directly using the html type 
        <PageElement>
          <Body  type="html" >
           [ the body HTML ]
          </Body>
        </PageElement>

      </PageElements>

      <!-- Optional String Filter that will be applied to the imported page data -->
      <StringFilter class="[ class of com.raritantechnologies.utils.filter.IStringFilter ]" >

      </StringFilter>

    </SystemObject>
 

Developed by Raritan Technologies .

Author:
Ted Sullivan

Nested Class Summary
 class PageImportRenderer.PageElement
           
 
Field Summary
protected  boolean caching
           
 
Constructor Summary
PageImportRenderer()
           
 
Method Summary
 void addPageElement(java.lang.String htmlHeader, java.lang.String fragmentFile, java.lang.String htmlTrailer, java.lang.String pageType, java.lang.String entryName)
           
 boolean getAddPersistent()
           
 java.lang.String getConfigurationXML()
           
 java.lang.String getFragmentFile(PageImportRenderer.PageElement pe, RaritanPageContext rpc)
          Get the fragment file name.
 java.lang.String getPage(RaritanPageContext pContext)
          returns an HTML page or page fragment given a set of request parameters.
 java.lang.String getPageHeader(java.lang.String pageHeader)
           
 java.lang.String getPageName()
           
 java.lang.String getPageTrailer()
           
 void initialize(org.w3c.dom.Element elem)
          Initializes the object from an XML tag or element.
 java.lang.String render(RaritanPageContext pContext)
          Returns the tag body.
 void setAddPersistent(boolean addPersistent)
           
 void setPageHeader(java.lang.String pageHeader)
           
 void setPageName(java.lang.String pageName)
           
 void setPageTrailer(java.lang.String pageTrailer)
           
 void setStringFilter(IStringFilter stringFilter)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

caching

protected boolean caching
Constructor Detail

PageImportRenderer

public PageImportRenderer()
Method Detail

initialize

public void initialize(org.w3c.dom.Element elem)
Description copied from interface: IConfigurable
Initializes the object from an XML tag or element. This method is called by the Framework as part of the application initializtion. see ConfigurationManager, XMLConfigurationManager, XMLSearchFieldMapFactory, XMLSearchSourceFactory. Configurable objects that are owned or contained by other configurable objects will be initialized in by the parent object.

Specified by:
initialize in interface IConfigurable

render

public java.lang.String render(RaritanPageContext pContext)
Description copied from interface: IPageContextRenderer
Returns the tag body.

Specified by:
render in interface IPageContextRenderer
Parameters:
pContext - Platform-neutral page context ( can be used in non J2EE environments such as ASP).
Returns:
The tag body text string.

getPage

public java.lang.String getPage(RaritanPageContext pContext)
returns an HTML page or page fragment given a set of request parameters.

Parameters:
pContext - contains request and session parameters needed to execute the page retrieval.
Returns:
A string containing the page data.

getFragmentFile

public java.lang.String getFragmentFile(PageImportRenderer.PageElement pe,
                                        RaritanPageContext rpc)
Get the fragment file name. This method was originally added to support the RoleBasedPageImportRenderer, which needs to support different file names based on a user role. A subclass can overrride this method, and nothing else, to support such functionality.


addPageElement

public void addPageElement(java.lang.String htmlHeader,
                           java.lang.String fragmentFile,
                           java.lang.String htmlTrailer,
                           java.lang.String pageType,
                           java.lang.String entryName)

setPageHeader

public void setPageHeader(java.lang.String pageHeader)

getPageHeader

public java.lang.String getPageHeader(java.lang.String pageHeader)

setPageTrailer

public void setPageTrailer(java.lang.String pageTrailer)

getPageTrailer

public java.lang.String getPageTrailer()

setPageName

public void setPageName(java.lang.String pageName)

getPageName

public java.lang.String getPageName()

setAddPersistent

public void setAddPersistent(boolean addPersistent)

getAddPersistent

public boolean getAddPersistent()

setStringFilter

public void setStringFilter(IStringFilter stringFilter)

getConfigurationXML

public java.lang.String getConfigurationXML()