fr.opensagres.xdocreport.template.formatter
Class FieldsMetadata

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

public class FieldsMetadata
extends 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 String DEFAULT_AFTER_ROW_TOKEN
           
static String DEFAULT_AFTER_TABLE_CELL_TOKEN
           
static String DEFAULT_BEFORE_ROW_TOKEN
           
static String DEFAULT_BEFORE_TABLE_CELL_TOKEN
           
static FieldsMetadata EMPTY
           
protected  List<FieldMetadata> fields
           
protected  Map<String,FieldMetadata> fieldsAsImage
           
protected  Map<String,FieldMetadata> fieldsAsList
           
protected  Map<String,FieldMetadata> fieldsAsTextStyling
           
 
Constructor Summary
FieldsMetadata()
           
FieldsMetadata(String templateEngineKind)
           
FieldsMetadata(TemplateEngineKind templateEngineKind)
           
 
Method Summary
 FieldMetadata addField(String fieldName, Boolean listType, String imageName, String syntaxKind, Boolean syntaxWithDirective)
           
 FieldMetadata addFieldAsImage(String fieldName)
          Add a field name which is considered as an image.
 FieldMetadata addFieldAsImage(String fieldName, boolean useImageSize)
          Add a field name which is considered as an image.
 FieldMetadata addFieldAsImage(String fieldName, NullImageBehaviour behaviour)
          Add a field name which is considered as an image.
 FieldMetadata addFieldAsImage(String fieldName, NullImageBehaviour behaviour, boolean useImageSize)
          Add a field name which is considered as an image.
 FieldMetadata addFieldAsImage(String imageName, String fieldName)
          Add a field name which is considered as an image.
 FieldMetadata addFieldAsImage(String imageName, String fieldName, boolean useImageSize)
           
 FieldMetadata addFieldAsImage(String imageName, String fieldName, NullImageBehaviour behaviour)
           
 FieldMetadata addFieldAsImage(String imageName, String fieldName, NullImageBehaviour behaviour, boolean useImageSize)
          Add a field name which is considered as an image.
 FieldMetadata addFieldAsList(String fieldName)
          Add a field name which belongs to a list.
 FieldMetadata addFieldAsTextStyling(String fieldName, String syntaxKind)
          Add a field name which can contains text stylink (Html, Wikipedia, etc..).
 FieldMetadata addFieldAsTextStyling(String fieldName, String syntaxKind, boolean syntaxWithDirective)
          Add a field name which can contains text stylink (Html, Wikipedia, etc..).
 FieldMetadata addFieldAsTextStyling(String fieldName, SyntaxKind syntaxKind)
          Add a field name which can contains text stylink (Html, Wikipedia, etc..).
 FieldMetadata addFieldAsTextStyling(String fieldName, SyntaxKind syntaxKind, boolean syntaxWithDirective)
          Add a field name which can contains text stylink (Html, Wikipedia, etc..).
 String getAfterRowToken()
           
 String getAfterTableCellToken()
           
 String getBeforeRowToken()
           
 String getBeforeTableCellToken()
           
 NullImageBehaviour getBehaviour()
          Returns the "global" behaviour to use when the stream of the image is null.
 String getDescription()
          Returns the description of fields metadata.
 FieldMetadata getFieldAsImage(String fieldName)
           
 List<FieldMetadata> getFields()
          Returns list of fields metadata.
 Collection<FieldMetadata> getFieldsAsImage()
          Returns list of fields name which are considered as an image.
 Collection<String> getFieldsAsList()
          Returns list of fields name which belongs to a list.
 Collection<FieldMetadata> getFieldsAsTextStyling()
          Returns list of fields name which can contains text styling.
 String getImageFieldName(String fieldName)
           
 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(String fieldName)
           
 boolean isUseImageSize()
           
 void load(String key, Class<?> clazz)
          Load simple fields metadata in the given fieldsMetadata by using the given key and Java Class.
 void load(String key, Class<?> clazz, boolean listType)
          Load simple/list fields metadata in the given fieldsMetadata by using the given key and Java Class.
 void saveXML(OutputStream out)
          Serialize as XML without indentation the fields metadata to the given OutputStream.
 void saveXML(OutputStream out, boolean indent)
          Serialize as XML the fields metadata to the given OutputStream.
 void saveXML(Writer writer)
          Serialize as XML without indentation the fields metadata to the given XML writer.
 void saveXML(Writer writer, boolean indent)
          Serialize as XML the fields metadata to the given XML writer.
 void saveXML(Writer writer, boolean indent, boolean formatAsJavaString)
          Serialize as XML the fields metadata to the given XML writer.
 void setAfterRowToken(String afterRowToken)
           
 void setAfterTableCellToken(String afterTableCellToken)
           
 void setBeforeRowToken(String beforeRowToken)
           
 void setBeforeTableCellToken(String beforeTableCellToken)
           
 void setBehaviour(NullImageBehaviour behaviour)
          Set the "global" behaviour to use when the stream of the image is null.
 void setDescription(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(String templateEngineKind)
          Set the template engine kind.
 void setUseImageSize(boolean useImageSize)
           
 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 String DEFAULT_BEFORE_ROW_TOKEN
See Also:
Constant Field Values

DEFAULT_AFTER_ROW_TOKEN

public static final String DEFAULT_AFTER_ROW_TOKEN
See Also:
Constant Field Values

DEFAULT_BEFORE_TABLE_CELL_TOKEN

public static final String DEFAULT_BEFORE_TABLE_CELL_TOKEN
See Also:
Constant Field Values

DEFAULT_AFTER_TABLE_CELL_TOKEN

public static final String DEFAULT_AFTER_TABLE_CELL_TOKEN
See Also:
Constant Field Values

fields

protected final List<FieldMetadata> fields

fieldsAsList

protected final Map<String,FieldMetadata> fieldsAsList

fieldsAsImage

protected final Map<String,FieldMetadata> fieldsAsImage

fieldsAsTextStyling

protected final Map<String,FieldMetadata> fieldsAsTextStyling
Constructor Detail

FieldsMetadata

public FieldsMetadata()

FieldsMetadata

public FieldsMetadata(TemplateEngineKind templateEngineKind)

FieldsMetadata

public FieldsMetadata(String templateEngineKind)
Method Detail

addFieldAsImage

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

Parameters:
fieldName -

addFieldAsImage

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

Parameters:
fieldName -

addFieldAsImage

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

Parameters:
fieldName -

addFieldAsImage

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

Parameters:
fieldName -

addFieldAsImage

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

Parameters:
imageName -
fieldName -

addFieldAsImage

public FieldMetadata addFieldAsImage(String imageName,
                                     String fieldName,
                                     boolean useImageSize)

addFieldAsImage

public FieldMetadata addFieldAsImage(String imageName,
                                     String fieldName,
                                     NullImageBehaviour behaviour)

addFieldAsImage

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

Parameters:
imageName -
fieldName -

addFieldAsTextStyling

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

Parameters:
fieldName -
syntaxKind -

addFieldAsTextStyling

public FieldMetadata addFieldAsTextStyling(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(String fieldName,
                                           String syntaxKind)
Add a field name which can contains text stylink (Html, Wikipedia, etc..).

Parameters:
fieldName -
syntaxKind -

addFieldAsTextStyling

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

Parameters:
fieldName -
syntaxKind -

addFieldAsList

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

Parameters:
fieldName -

addField

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

getFieldAsImage

public FieldMetadata getFieldAsImage(String fieldName)

getFieldsAsList

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

Returns:

getFieldsAsImage

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

Returns:

getFieldsAsTextStyling

public 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(String fieldName)

getImageFieldName

public String getImageFieldName(String fieldName)

getBeforeRowToken

public String getBeforeRowToken()

setBeforeRowToken

public void setBeforeRowToken(String beforeRowToken)

getAfterRowToken

public String getAfterRowToken()

setAfterRowToken

public void setAfterRowToken(String afterRowToken)

getBeforeTableCellToken

public String getBeforeTableCellToken()

setBeforeTableCellToken

public void setBeforeTableCellToken(String beforeTableCellToken)

getAfterTableCellToken

public String getAfterTableCellToken()

setAfterTableCellToken

public void setAfterTableCellToken(String afterTableCellToken)

getFields

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

Returns:

saveXML

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

Parameters:
writer -
Throws:
IOException

saveXML

public void saveXML(Writer writer,
                    boolean indent)
             throws 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:
IOException

saveXML

public void saveXML(Writer writer,
                    boolean indent,
                    boolean formatAsJavaString)
             throws 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:
IOException

saveXML

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

Parameters:
writer -
Throws:
IOException

saveXML

public void saveXML(OutputStream out,
                    boolean indent)
             throws 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:
IOException

load

public void load(String key,
                 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(String key,
                 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 String toString()
Overrides:
toString in class Object

getDescription

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

Returns:

setDescription

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

Parameters:
templateEngineKind -

getTemplateEngineKind

public String getTemplateEngineKind()
Returns the template engine kind.

Returns:

setTemplateEngineKind

public void setTemplateEngineKind(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 © 2013. All rights reserved.