fr.opensagres.xdocreport.template.formatter
Class FieldsMetadata

java.lang.Object
  extended by fr.opensagres.xdocreport.template.formatter.FieldsMetadata

public class FieldsMetadata
extends java.lang.Object

Fields Metadata is used in the preprocessing step to modify some XML entries like generate script (Freemarker, Velocity...) for loop for Table row, generate script for Image...


Field Summary
static java.lang.String DEFAULT_AFTER_ROW_TOKEN
           
static java.lang.String DEFAULT_AFTER_TABLE_CELL_TOKEN
           
static java.lang.String DEFAULT_BEFORE_ROW_TOKEN
           
static java.lang.String DEFAULT_BEFORE_TABLE_CELL_TOKEN
           
static FieldsMetadata EMPTY
           
protected  java.util.List<FieldMetadata> fields
           
protected  java.util.Map<java.lang.String,FieldMetadata> fieldsAsImage
           
protected  java.util.Map<java.lang.String,FieldMetadata> fieldsAsList
           
protected  java.util.Map<java.lang.String,FieldMetadata> fieldsAsTextStyling
           
 
Constructor Summary
FieldsMetadata()
           
FieldsMetadata(java.lang.String templateEngineKind)
           
 
Method Summary
 FieldMetadata addField(java.lang.String fieldName, java.lang.Boolean listType, java.lang.String imageName, java.lang.String syntaxKind, java.lang.Boolean syntaxWithDirective)
           
 FieldMetadata addFieldAsImage(java.lang.String fieldName)
          Add a field name which is considered as an image.
 FieldMetadata addFieldAsImage(java.lang.String fieldName, boolean useImageSize)
          Add a field name which is considered as an image.
 FieldMetadata addFieldAsImage(java.lang.String fieldName, NullImageBehaviour behaviour)
          Add a field name which is considered as an image.
 FieldMetadata addFieldAsImage(java.lang.String fieldName, NullImageBehaviour behaviour, boolean useImageSize)
          Add a field name which is considered as an image.
 FieldMetadata addFieldAsImage(java.lang.String imageName, java.lang.String fieldName)
          Add a field name which is considered as an image.
 FieldMetadata addFieldAsImage(java.lang.String imageName, java.lang.String fieldName, boolean useImageSize)
           
 FieldMetadata addFieldAsImage(java.lang.String imageName, java.lang.String fieldName, NullImageBehaviour behaviour)
           
 FieldMetadata addFieldAsImage(java.lang.String imageName, java.lang.String fieldName, NullImageBehaviour behaviour, boolean useImageSize)
          Add a field name which is considered as an image.
 FieldMetadata addFieldAsList(java.lang.String fieldName)
          Add a field name which belongs to a list.
 FieldMetadata addFieldAsTextStyling(java.lang.String fieldName, java.lang.String syntaxKind)
          Add a field name which can contains text stylink (Html, Wikipedia, etc..).
 FieldMetadata addFieldAsTextStyling(java.lang.String fieldName, java.lang.String syntaxKind, boolean syntaxWithDirective)
          Add a field name which can contains text stylink (Html, Wikipedia, etc..).
 FieldMetadata addFieldAsTextStyling(java.lang.String fieldName, SyntaxKind syntaxKind)
          Add a field name which can contains text stylink (Html, Wikipedia, etc..).
 FieldMetadata addFieldAsTextStyling(java.lang.String fieldName, SyntaxKind syntaxKind, boolean syntaxWithDirective)
          Add a field name which can contains text stylink (Html, Wikipedia, etc..).
 java.lang.String getAfterRowToken()
           
 java.lang.String getAfterTableCellToken()
           
 java.lang.String getBeforeRowToken()
           
 java.lang.String getBeforeTableCellToken()
           
 NullImageBehaviour getBehaviour()
          Returns the "global" behaviour to use when the stream of the image is null.
 java.lang.String getDescription()
          Returns the description of fields metadata.
 FieldMetadata getFieldAsImage(java.lang.String fieldName)
           
 java.util.List<FieldMetadata> getFields()
          Returns list of fields metadata.
 java.util.Collection<FieldMetadata> getFieldsAsImage()
          Returns list of fields name which are considered as an image.
 java.util.Collection<java.lang.String> getFieldsAsList()
          Returns list of fields name which belongs to a list.
 java.util.Collection<FieldMetadata> getFieldsAsTextStyling()
          Returns list of fields name which can contains text styling.
 java.lang.String getImageFieldName(java.lang.String fieldName)
           
 java.lang.String getTemplateEngineKind()
          Returns the template engine kind.
 boolean hasFieldsAsImage()
          Returns true if there are fields as image and false otherwise.
 boolean isEvaluateEngineOnlyForFields()
          Returns true if evaluation of the template engine should be done only for directive inserted in a field (MergeField for MS Word, Text-Inpout for ODT, etc) and false otherwise.
 boolean isFieldAsImage(java.lang.String fieldName)
           
 boolean isUseImageSize()
           
 void load(java.lang.String key, java.lang.Class<?> clazz)
          Load simple fields metadata in the given fieldsMetadata by using the given key and Java Class.
 void load(java.lang.String key, java.lang.Class<?> clazz, boolean listType)
          Load simple/list fields metadata in the given fieldsMetadata by using the given key and Java Class.
 void saveXML(java.io.OutputStream out)
          Serialize as XML without indentation the fields metadata to the given OutputStream.
 void saveXML(java.io.OutputStream out, boolean indent)
          Serialize as XML the fields metadata to the given OutputStream.
 void saveXML(java.io.Writer writer)
          Serialize as XML without indentation the fields metadata to the given XML writer.
 void saveXML(java.io.Writer writer, boolean indent)
          Serialize as XML the fields metadata to the given XML writer.
 void setAfterRowToken(java.lang.String afterRowToken)
           
 void setAfterTableCellToken(java.lang.String afterTableCellToken)
           
 void setBeforeRowToken(java.lang.String beforeRowToken)
           
 void setBeforeTableCellToken(java.lang.String beforeTableCellToken)
           
 void setBehaviour(NullImageBehaviour behaviour)
          Set the "global" behaviour to use when the stream of the image is null.
 void setDescription(java.lang.String description)
          Set the description of fields metadata.
 void setEvaluateEngineOnlyForFields(boolean evaluateEngineOnlyForFields)
          Set true if evaluation of the template engine should be done only for directive inserted in a field (MergeField for MS Word, Text-Inpout for ODT, etc) and false otherwises.
 void setTemplateEngineKind(java.lang.String templateEngineKind)
          Set the template engine kind.
 void setUseImageSize(boolean useImageSize)
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

EMPTY

public static final FieldsMetadata EMPTY

DEFAULT_BEFORE_ROW_TOKEN

public static final java.lang.String DEFAULT_BEFORE_ROW_TOKEN
See Also:
Constant Field Values

DEFAULT_AFTER_ROW_TOKEN

public static final java.lang.String DEFAULT_AFTER_ROW_TOKEN
See Also:
Constant Field Values

DEFAULT_BEFORE_TABLE_CELL_TOKEN

public static final java.lang.String DEFAULT_BEFORE_TABLE_CELL_TOKEN
See Also:
Constant Field Values

DEFAULT_AFTER_TABLE_CELL_TOKEN

public static final java.lang.String DEFAULT_AFTER_TABLE_CELL_TOKEN
See Also:
Constant Field Values

fields

protected final java.util.List<FieldMetadata> fields

fieldsAsList

protected final java.util.Map<java.lang.String,FieldMetadata> fieldsAsList

fieldsAsImage

protected final java.util.Map<java.lang.String,FieldMetadata> fieldsAsImage

fieldsAsTextStyling

protected final java.util.Map<java.lang.String,FieldMetadata> fieldsAsTextStyling
Constructor Detail

FieldsMetadata

public FieldsMetadata()

FieldsMetadata

public FieldsMetadata(java.lang.String templateEngineKind)
Method Detail

addFieldAsImage

public FieldMetadata addFieldAsImage(java.lang.String fieldName)
Add a field name which is considered as an image.

Parameters:
fieldName -

addFieldAsImage

public FieldMetadata addFieldAsImage(java.lang.String fieldName,
                                     boolean useImageSize)
Add a field name which is considered as an image.

Parameters:
fieldName -

addFieldAsImage

public FieldMetadata addFieldAsImage(java.lang.String fieldName,
                                     NullImageBehaviour behaviour)
Add a field name which is considered as an image.

Parameters:
fieldName -

addFieldAsImage

public FieldMetadata addFieldAsImage(java.lang.String fieldName,
                                     NullImageBehaviour behaviour,
                                     boolean useImageSize)
Add a field name which is considered as an image.

Parameters:
fieldName -

addFieldAsImage

public FieldMetadata addFieldAsImage(java.lang.String imageName,
                                     java.lang.String fieldName)
Add a field name which is considered as an image.

Parameters:
imageName -
fieldName -

addFieldAsImage

public FieldMetadata addFieldAsImage(java.lang.String imageName,
                                     java.lang.String fieldName,
                                     boolean useImageSize)

addFieldAsImage

public FieldMetadata addFieldAsImage(java.lang.String imageName,
                                     java.lang.String fieldName,
                                     NullImageBehaviour behaviour)

addFieldAsImage

public FieldMetadata addFieldAsImage(java.lang.String imageName,
                                     java.lang.String fieldName,
                                     NullImageBehaviour behaviour,
                                     boolean useImageSize)
Add a field name which is considered as an image.

Parameters:
imageName -
fieldName -

addFieldAsTextStyling

public FieldMetadata addFieldAsTextStyling(java.lang.String fieldName,
                                           SyntaxKind syntaxKind)
Add a field name which can contains text stylink (Html, Wikipedia, etc..).

Parameters:
fieldName -
syntaxKind -

addFieldAsTextStyling

public FieldMetadata addFieldAsTextStyling(java.lang.String fieldName,
                                           SyntaxKind syntaxKind,
                                           boolean syntaxWithDirective)
Add a field name which can contains text stylink (Html, Wikipedia, etc..).

Parameters:
fieldName -
syntaxKind -

addFieldAsTextStyling

public FieldMetadata addFieldAsTextStyling(java.lang.String fieldName,
                                           java.lang.String syntaxKind)
Add a field name which can contains text stylink (Html, Wikipedia, etc..).

Parameters:
fieldName -
syntaxKind -

addFieldAsTextStyling

public FieldMetadata addFieldAsTextStyling(java.lang.String fieldName,
                                           java.lang.String syntaxKind,
                                           boolean syntaxWithDirective)
Add a field name which can contains text stylink (Html, Wikipedia, etc..).

Parameters:
fieldName -
syntaxKind -

addFieldAsList

public FieldMetadata addFieldAsList(java.lang.String fieldName)
Add a field name which belongs to a list.

Parameters:
fieldName -

addField

public FieldMetadata addField(java.lang.String fieldName,
                              java.lang.Boolean listType,
                              java.lang.String imageName,
                              java.lang.String syntaxKind,
                              java.lang.Boolean syntaxWithDirective)

getFieldAsImage

public FieldMetadata getFieldAsImage(java.lang.String fieldName)

getFieldsAsList

public java.util.Collection<java.lang.String> getFieldsAsList()
Returns list of fields name which belongs to a list.

Returns:

getFieldsAsImage

public java.util.Collection<FieldMetadata> getFieldsAsImage()
Returns list of fields name which are considered as an image.

Returns:

getFieldsAsTextStyling

public java.util.Collection<FieldMetadata> getFieldsAsTextStyling()
Returns list of fields name which can contains text styling.

Returns:

hasFieldsAsImage

public boolean hasFieldsAsImage()
Returns true if there are fields as image and false otherwise.

Returns:

isFieldAsImage

public boolean isFieldAsImage(java.lang.String fieldName)

getImageFieldName

public java.lang.String getImageFieldName(java.lang.String fieldName)

getBeforeRowToken

public java.lang.String getBeforeRowToken()

setBeforeRowToken

public void setBeforeRowToken(java.lang.String beforeRowToken)

getAfterRowToken

public java.lang.String getAfterRowToken()

setAfterRowToken

public void setAfterRowToken(java.lang.String afterRowToken)

getBeforeTableCellToken

public java.lang.String getBeforeTableCellToken()

setBeforeTableCellToken

public void setBeforeTableCellToken(java.lang.String beforeTableCellToken)

getAfterTableCellToken

public java.lang.String getAfterTableCellToken()

setAfterTableCellToken

public void setAfterTableCellToken(java.lang.String afterTableCellToken)

getFields

public java.util.List<FieldMetadata> getFields()
Returns list of fields metadata.

Returns:

saveXML

public void saveXML(java.io.Writer writer)
             throws java.io.IOException
Serialize as XML without indentation the fields metadata to the given XML writer. Here a sample of XML writer :
 
  
  
 
 
 

Parameters:
writer -
Throws:
java.io.IOException

saveXML

public void saveXML(java.io.Writer writer,
                    boolean indent)
             throws java.io.IOException
Serialize as XML the fields metadata to the given XML writer. Here a sample of XML writer :
 
  
  
 
 
 

Parameters:
writer - XML writer.
indent - true if indent must be managed and false otherwise.
Throws:
java.io.IOException

saveXML

public void saveXML(java.io.OutputStream out)
             throws java.io.IOException
Serialize as XML without indentation the fields metadata to the given OutputStream. Here a sample of XML out:
 
  
  
 
 
 

Parameters:
writer -
Throws:
java.io.IOException

saveXML

public void saveXML(java.io.OutputStream out,
                    boolean indent)
             throws java.io.IOException
Serialize as XML the fields metadata to the given OutputStream. Here a sample of XML out :
 
  
  
 
 
 

Parameters:
writer - XML writer.
indent - true if indent must be managed and false otherwise.
Throws:
java.io.IOException

load

public void load(java.lang.String key,
                 java.lang.Class<?> clazz)
          throws XDocReportException
Load simple fields metadata in the given fieldsMetadata by using the given key and Java Class.

Parameters:
key - the key (first token) to use to generate field name.
clazz - the Java class model to use to load fields metadata.
Throws:
XDocReportException

load

public void load(java.lang.String key,
                 java.lang.Class<?> clazz,
                 boolean listType)
          throws XDocReportException
Load simple/list fields metadata in the given fieldsMetadata by using the given key and Java Class.

Parameters:
key - the key (first token) to use to generate field name.
clazz - the Java class model to use to load fields metadata.
listType - true if it's a list and false otherwise.
Throws:
XDocReportException

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

getDescription

public java.lang.String getDescription()
Returns the description of fields metadata.

Returns:

setDescription

public void setDescription(java.lang.String description)
Set the description of fields metadata.

Parameters:
templateEngineKind -

getTemplateEngineKind

public java.lang.String getTemplateEngineKind()
Returns the template engine kind.

Returns:

setTemplateEngineKind

public void setTemplateEngineKind(java.lang.String templateEngineKind)
Set the template engine kind.

Parameters:
templateEngineKind -

isEvaluateEngineOnlyForFields

public boolean isEvaluateEngineOnlyForFields()
Returns true if evaluation of the template engine should be done only for directive inserted in a field (MergeField for MS Word, Text-Inpout for ODT, etc) and false otherwise.

Returns:

setEvaluateEngineOnlyForFields

public void setEvaluateEngineOnlyForFields(boolean evaluateEngineOnlyForFields)
Set true if evaluation of the template engine should be done only for directive inserted in a field (MergeField for MS Word, Text-Inpout for ODT, etc) and false otherwises.

Parameters:
evaluateEngineOnlyForFields -

getBehaviour

public NullImageBehaviour getBehaviour()
Returns the "global" behaviour to use when the stream of the image is null.

Returns:

setBehaviour

public void setBehaviour(NullImageBehaviour behaviour)
Set the "global" behaviour to use when the stream of the image is null.

Parameters:
behaviour -

isUseImageSize

public boolean isUseImageSize()

setUseImageSize

public void setUseImageSize(boolean useImageSize)


Copyright © 2012. All Rights Reserved.