Jive Forums API (5.5.20.2-oracle) Developer Javadocs

com.jivesoftware.forum.renderer.filter
Class HTMLFilter

java.lang.Object
  extended by com.jivesoftware.forum.renderer.AbstractRenderFilter
      extended by com.jivesoftware.forum.renderer.filter.HTMLFilter
All Implemented Interfaces:
com.jivesoftware.forum.renderer.impl.JiveSystemRenderFilter, PreProcessingRenderFilter, RenderFilter

public class HTMLFilter
extends AbstractRenderFilter
implements com.jivesoftware.forum.renderer.impl.JiveSystemRenderFilter, PreProcessingRenderFilter

A Filter that takes a string which may contain HTML tags (ie, <table>, etc) and converts the '<', '>' and '&' characters to their HTML escape sequences. If block mode is enabled HTML will only be escaped inside of [html] [/html] blocks.

This filter has the ability to allow specific HTML tags to pass through the filter when not used in block mode. By default the following tags are allowed to bypass the filter:

Note: if you have this filter enabled you do not also need to have the NewlineFilter filter enabled. This HTML filter will filter newline characters ('\n' or '\r\n') when the filter input does not contain any HTML tags.


Field Summary
static java.lang.String HTML_FILTER_CONTEXT_PARAM
           
 
Constructor Summary
HTMLFilter()
          Creates a new default HTML filter.
 
Method Summary
protected  java.lang.String cleanseText(java.lang.String text, RenderContext renderContext)
           
protected  boolean contentIsHtml(java.lang.Object sourceObject)
           
protected  java.lang.String executeHtmlTarget(java.lang.String string, RenderContext renderContext)
          This method is called to execute the filter when the render target specified in the context is RenderTarget.TARGET_HTML.
protected  java.lang.String executeNoMarkupTarget(java.lang.String string, RenderContext renderContext)
          This method is called to execute the filter when the render target specified in the context is RenderTarget.TARGET_NO_MARKUP.
protected  java.lang.String executePlainEmailTarget(java.lang.String string, RenderContext renderContext)
          This method is called to execute the filter when the render target specified in the context is RenderTarget.TARGET_PLAIN_EMAIL.
protected  java.lang.String executePlainTextTarget(java.lang.String string, RenderContext renderContext)
          This method is called to execute the filter when the render target specified in the context is RenderTarget.TARGET_PLAIN_TEXT.
protected  java.lang.String executeWysiwygEditorTarget(java.lang.String string, RenderContext renderContext)
          This method is called to execute the filter when the render target specified in the context is RenderTarget.TARGET_WYSIWYG_EDITOR.
 java.lang.String getAllowedSchemesStr()
           
 java.lang.String getAllowedTagsStr()
           
 java.lang.String getBlockEnd()
          Returns the HTML tag that ends a HTML block.
 java.lang.String getBlockStart()
          Returns the HTML tag that starts a HTML block.
protected  java.lang.String[] getDefaultHelp()
          Returns a String[section,title,body] for the default help for the filter.
 java.lang.String getDisallowedTagsStr()
           
protected  java.util.Map getDocumentationMap()
          Returns a documentation Map keyed by languageCode -> String[section,title,body].
 java.lang.String getName()
          Returns the unique name of the filter.
 boolean isAllowRelativeLinks()
           
 boolean isAllowSymbols()
           
protected  boolean isEnabledByDefault()
          Returns true if the filter should be enabled by default, false otherwise.
 boolean isOnlyFltrBlksEnabled()
          Returns true if HTML filtering will only occur inside of [html] blocks or not.
 boolean isStripDisallowedTags()
           
 void setAllowedSchemesStr(java.lang.String allowedSchemesString)
           
 void setAllowedTagsStr(java.lang.String allowedTagsString)
           
 void setAllowRelativeLinks(boolean allowRelativeLinks)
           
 void setAllowSymbols(boolean allowSymbols)
           
 void setBlockEnd(java.lang.String blockEnd)
          Sets the HTML tag that ends a HTML block.
 void setBlockStart(java.lang.String blockStart)
          Sets the HTML tag that starts a HTML block.
 void setDisallowedTagsStr(java.lang.String allowedTagsString)
           
 void setOnlyFltrBlksEnabled(boolean enabled)
          Enables or disables the HTML filtering only inside of [html] [/html] blocks or not.
 void setStripDisallowedTags(boolean stripDisallowedTags)
           
 
Methods inherited from class com.jivesoftware.forum.renderer.AbstractRenderFilter
execute, getUserDocumentation, isEnabled, setEnabled
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

HTML_FILTER_CONTEXT_PARAM

public static final java.lang.String HTML_FILTER_CONTEXT_PARAM
See Also:
Constant Field Values
Constructor Detail

HTMLFilter

public HTMLFilter()
Creates a new default HTML filter.

Method Detail

getName

public java.lang.String getName()
Description copied from interface: RenderFilter
Returns the unique name of the filter.

Specified by:
getName in interface RenderFilter
Specified by:
getName in class AbstractRenderFilter
Returns:
the unique name of the filter.

isEnabledByDefault

protected boolean isEnabledByDefault()
Description copied from class: AbstractRenderFilter
Returns true if the filter should be enabled by default, false otherwise.

Specified by:
isEnabledByDefault in class AbstractRenderFilter
Returns:
true if the filter should be enabled by default, false otherwise.

executePlainTextTarget

protected java.lang.String executePlainTextTarget(java.lang.String string,
                                                  RenderContext renderContext)
Description copied from class: AbstractRenderFilter
This method is called to execute the filter when the render target specified in the context is RenderTarget.TARGET_PLAIN_TEXT.

Specified by:
executePlainTextTarget in class AbstractRenderFilter
Parameters:
string - the String to filter
renderContext - the context the filter is being executed within
Returns:
a filtered string

executePlainEmailTarget

protected java.lang.String executePlainEmailTarget(java.lang.String string,
                                                   RenderContext renderContext)
Description copied from class: AbstractRenderFilter
This method is called to execute the filter when the render target specified in the context is RenderTarget.TARGET_PLAIN_EMAIL.

Specified by:
executePlainEmailTarget in class AbstractRenderFilter
Parameters:
string - the String to filter
renderContext - the context the filter is being executed within
Returns:
a filtered string

executeHtmlTarget

protected java.lang.String executeHtmlTarget(java.lang.String string,
                                             RenderContext renderContext)
Description copied from class: AbstractRenderFilter
This method is called to execute the filter when the render target specified in the context is RenderTarget.TARGET_HTML.

Specified by:
executeHtmlTarget in class AbstractRenderFilter
Parameters:
string - the String to filter
renderContext - the context the filter is being executed within
Returns:
a filtered string

executeWysiwygEditorTarget

protected java.lang.String executeWysiwygEditorTarget(java.lang.String string,
                                                      RenderContext renderContext)
Description copied from class: AbstractRenderFilter
This method is called to execute the filter when the render target specified in the context is RenderTarget.TARGET_WYSIWYG_EDITOR.

Specified by:
executeWysiwygEditorTarget in class AbstractRenderFilter
Parameters:
string - the String to filter
renderContext - the context the filter is being executed within
Returns:
a filtered string

executeNoMarkupTarget

protected java.lang.String executeNoMarkupTarget(java.lang.String string,
                                                 RenderContext renderContext)
Description copied from class: AbstractRenderFilter
This method is called to execute the filter when the render target specified in the context is RenderTarget.TARGET_NO_MARKUP.

Specified by:
executeNoMarkupTarget in class AbstractRenderFilter
Parameters:
string - the String to filter
renderContext - the context the filter is being executed within
Returns:
a filtered string

getDocumentationMap

protected java.util.Map getDocumentationMap()
Description copied from class: AbstractRenderFilter
Returns a documentation Map keyed by languageCode -> String[section,title,body].

Specified by:
getDocumentationMap in class AbstractRenderFilter
Returns:
a documentation Map keyed by languageCode -> String[section,title,body]

getDefaultHelp

protected java.lang.String[] getDefaultHelp()
Description copied from class: AbstractRenderFilter
Returns a String[section,title,body] for the default help for the filter.

Specified by:
getDefaultHelp in class AbstractRenderFilter
Returns:
a String[section,title,body] for the default help for the filter

isOnlyFltrBlksEnabled

public boolean isOnlyFltrBlksEnabled()
Returns true if HTML filtering will only occur inside of [html] blocks or not.

Returns:
true if HTML filtering will only occur inside of [html] blocks or not.

setOnlyFltrBlksEnabled

public void setOnlyFltrBlksEnabled(boolean enabled)
Enables or disables the HTML filtering only inside of [html] [/html] blocks or not.

Parameters:
enabled - true if new window mode should be enabled.

isStripDisallowedTags

public boolean isStripDisallowedTags()

setStripDisallowedTags

public void setStripDisallowedTags(boolean stripDisallowedTags)

isAllowSymbols

public boolean isAllowSymbols()

setAllowSymbols

public void setAllowSymbols(boolean allowSymbols)

isAllowRelativeLinks

public boolean isAllowRelativeLinks()

setAllowRelativeLinks

public void setAllowRelativeLinks(boolean allowRelativeLinks)

getAllowedTagsStr

public java.lang.String getAllowedTagsStr()

setAllowedTagsStr

public void setAllowedTagsStr(java.lang.String allowedTagsString)

getDisallowedTagsStr

public java.lang.String getDisallowedTagsStr()

setDisallowedTagsStr

public void setDisallowedTagsStr(java.lang.String allowedTagsString)

getAllowedSchemesStr

public java.lang.String getAllowedSchemesStr()

setAllowedSchemesStr

public void setAllowedSchemesStr(java.lang.String allowedSchemesString)

getBlockStart

public java.lang.String getBlockStart()
Returns the HTML tag that starts a HTML block. For example, it could be <pre>. This will only be used if we are filtering html in [html] [/html] blocks.

Returns:
the HTML tag to start a HTML block.

setBlockStart

public void setBlockStart(java.lang.String blockStart)
Sets the HTML tag that starts a HTML block. For example, it could be <pre>. This will only be used if we are filtering html in [html] [/html] blocks.

Parameters:
blockStart - the HTML tag to start a HTML block.

getBlockEnd

public java.lang.String getBlockEnd()
Returns the HTML tag that ends a HTML block. For example, it could be </pre>. This will only be used if we are filtering html in [html] [/html] blocks.

Returns:
the HTML tag to end a HTML block.

setBlockEnd

public void setBlockEnd(java.lang.String blockEnd)
Sets the HTML tag that ends a HTML block. For example, it could be </pre>. This will only be used if we are filtering html in [html/ [/html] blocks.

Parameters:
blockEnd - the HTML tag to end a HTML block.

cleanseText

protected java.lang.String cleanseText(java.lang.String text,
                                       RenderContext renderContext)

contentIsHtml

protected boolean contentIsHtml(java.lang.Object sourceObject)

Jive Forums Project Page

Copyright © 1999-2006 Jive Software.