org.mmbase.util.transformers
Class XmlField

java.lang.Object
  extended byorg.mmbase.util.transformers.StringTransformer
      extended byorg.mmbase.util.transformers.ConfigurableStringTransformer
          extended byorg.mmbase.util.transformers.XmlField
All Implemented Interfaces:
CharTransformer, ConfigurableTransformer, Serializable, Transformer
Direct Known Subclasses:
XmlField

public class XmlField
extends ConfigurableStringTransformer
implements CharTransformer

XMLFields in MMBase. This class can encode such a field to several other formats.

Version:
$Id: XmlField.java,v 1.46 2006/04/10 13:34:19 pierre Exp $
Author:
Michiel Meeuwissen
See Also:
Serialized Form
To Do:
THIS CLASS NEEDS A CONCEPT! It gets a bit messy.

Nested Class Summary
protected static class XmlField.FormatException
           
 
Field Summary
static int ASCII
           
static int HTML_BLOCK
           
static int HTML_BLOCK_BR
           
static int HTML_BLOCK_BR_NOSURROUNDINGP
           
static int HTML_BLOCK_LIST
           
static int HTML_BLOCK_LIST_BR
           
static int HTML_BLOCK_LIST_BR_NOSURROUNDINGP
           
static int HTML_BLOCK_LIST_NOSURROUNDINGP
           
static int HTML_BLOCK_NOSURROUNDINGP
           
static int HTML_INLINE
           
static int POORBODY
           
static int RICHBODY
           
static int XHTML
           
 
Fields inherited from class org.mmbase.util.transformers.ConfigurableStringTransformer
to
 
Constructor Summary
XmlField()
           
XmlField(int to)
           
 
Method Summary
 String getEncoding()
          Returns the encoding that is currently active
protected static void handleFormat(StringObject obj, boolean format)
          Only escape, clean up.
protected static void handleRich(StringObject obj, boolean sections, boolean leaveExtraNewLines, boolean surroundingP)
           
protected static void handleRich(StringObject obj, boolean sections, boolean leaveExtraNewLines, boolean surroundingP, boolean placeListsInsideP)
           
static String poorToHTMLInline(String data)
          So poor, that it actually generates pieces of XHTML 1.1 inlines (so, no use of section, br, p).
static String poorToXML(String data)
           
static String poorToXML(String data, boolean format)
          As richToXML but a little less rich.
protected static StringObject prepareData(String data)
           
protected static String prepareDataString(String data)
           
static String richToHTMLBlock(String data)
           
static String richToHTMLBlock(String data, boolean multipibleBrs, boolean surroundingP)
           
static String richToHTMLBlock(String data, boolean multipibleBrs, boolean surroundingP, boolean placeListsInsideP)
          So poor, that it actually generates pieces of XHTML 1.1 blocks (so, no use of sections).
static String richToXML(String data)
           
static String richToXML(String data, boolean format)
          Defines a kind of 'rich' text format.
 String transform(String data)
           
 String transformBack(String r)
           
 Map transformers()
          Returns which transformations can be done by an object of this class.
protected static void validate(String incoming)
           
static String wikiToXML(String data)
           
protected static String XSLTransform(String xslFile, String data)
          Base function for XSL conversions.
 
Methods inherited from class org.mmbase.util.transformers.ConfigurableStringTransformer
configure, toString
 
Methods inherited from class org.mmbase.util.transformers.StringTransformer
transform, transform, transformBack, transformBack
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.mmbase.util.transformers.CharTransformer
transform, transform, transformBack, transformBack
 
Methods inherited from interface org.mmbase.util.transformers.Transformer
toString
 

Field Detail

POORBODY

public static final int POORBODY
See Also:
Constant Field Values

RICHBODY

public static final int RICHBODY
See Also:
Constant Field Values

HTML_INLINE

public static final int HTML_INLINE
See Also:
Constant Field Values

HTML_BLOCK

public static final int HTML_BLOCK
See Also:
Constant Field Values

HTML_BLOCK_BR

public static final int HTML_BLOCK_BR
See Also:
Constant Field Values

HTML_BLOCK_NOSURROUNDINGP

public static final int HTML_BLOCK_NOSURROUNDINGP
See Also:
Constant Field Values

HTML_BLOCK_BR_NOSURROUNDINGP

public static final int HTML_BLOCK_BR_NOSURROUNDINGP
See Also:
Constant Field Values

HTML_BLOCK_LIST

public static final int HTML_BLOCK_LIST
See Also:
Constant Field Values

HTML_BLOCK_LIST_BR

public static final int HTML_BLOCK_LIST_BR
See Also:
Constant Field Values

HTML_BLOCK_LIST_NOSURROUNDINGP

public static final int HTML_BLOCK_LIST_NOSURROUNDINGP
See Also:
Constant Field Values

HTML_BLOCK_LIST_BR_NOSURROUNDINGP

public static final int HTML_BLOCK_LIST_BR_NOSURROUNDINGP
See Also:
Constant Field Values

ASCII

public static final int ASCII
See Also:
Constant Field Values

XHTML

public static final int XHTML
See Also:
Constant Field Values
Constructor Detail

XmlField

public XmlField()

XmlField

public XmlField(int to)
Method Detail

handleFormat

protected static void handleFormat(StringObject obj,
                                   boolean format)
Only escape, clean up.

Since:
MMBase-1.7

prepareDataString

protected static String prepareDataString(String data)

prepareData

protected static StringObject prepareData(String data)

handleRich

protected static void handleRich(StringObject obj,
                                 boolean sections,
                                 boolean leaveExtraNewLines,
                                 boolean surroundingP)

handleRich

protected static void handleRich(StringObject obj,
                                 boolean sections,
                                 boolean leaveExtraNewLines,
                                 boolean surroundingP,
                                 boolean placeListsInsideP)

wikiToXML

public static String wikiToXML(String data)

richToXML

public static String richToXML(String data,
                               boolean format)
Defines a kind of 'rich' text format. This is a way to easily type structured text in XML. The XML tags which can be produced by this are all HTML as well. This is a generalisation of the MMBase html() functions which does similar duties, but hopefully this one is better, and more powerfull too. The following things are recognized: Test with commandline: java org.mmbase.util.Encode RICH_TEXT (reads from STDIN)

Parameters:
data - text to convert
format - if the resulting XML must be nicely formatted (default: false)
Returns:
the converted text

richToXML

public static String richToXML(String data)

poorToXML

public static String poorToXML(String data,
                               boolean format)
As richToXML but a little less rich. Which means that only one new line is non significant.

See Also:
richToXML(java.lang.String, boolean)

poorToXML

public static String poorToXML(String data)

richToHTMLBlock

public static String richToHTMLBlock(String data,
                                     boolean multipibleBrs,
                                     boolean surroundingP,
                                     boolean placeListsInsideP)
So poor, that it actually generates pieces of XHTML 1.1 blocks (so, no use of sections).

Since:
MMBase-1.7
See Also:
richToXML(java.lang.String, boolean)

richToHTMLBlock

public static String richToHTMLBlock(String data)

richToHTMLBlock

public static String richToHTMLBlock(String data,
                                     boolean multipibleBrs,
                                     boolean surroundingP)

poorToHTMLInline

public static String poorToHTMLInline(String data)
So poor, that it actually generates pieces of XHTML 1.1 inlines (so, no use of section, br, p).

Since:
MMBase-1.7

XSLTransform

protected static String XSLTransform(String xslFile,
                                     String data)
Base function for XSL conversions.


validate

protected static void validate(String incoming)
                        throws XmlField.FormatException
Throws:
XmlField.FormatException

transformers

public Map transformers()
Description copied from interface: ConfigurableTransformer
Returns which transformations can be done by an object of this class.

Specified by:
transformers in interface ConfigurableTransformer
Specified by:
transformers in class ConfigurableStringTransformer

transform

public String transform(String data)
Specified by:
transform in interface CharTransformer
Specified by:
transform in class StringTransformer

transformBack

public String transformBack(String r)
Specified by:
transformBack in interface CharTransformer
Overrides:
transformBack in class StringTransformer

getEncoding

public String getEncoding()
Description copied from interface: ConfigurableTransformer
Returns the encoding that is currently active

Specified by:
getEncoding in interface ConfigurableTransformer
Specified by:
getEncoding in class ConfigurableStringTransformer


MMBase build 1.8.1.20060716