org.nuiton.wikitty.entities
Class WikittyExtension

java.lang.Object
  extended by org.nuiton.wikitty.entities.WikittyExtension
All Implemented Interfaces:
Serializable

public class WikittyExtension
extends Object
implements Serializable

Version:
$Revision: 1463 $ Last update: $Date: 2012-04-05 18:08:38 +0200 (Thu, 05 Apr 2012) $ by : $Author: bpoussin $
Author:
poussin
See Also:
Serialized Form

Field Summary
protected static Pattern fieldNamePattern
          Field name pattern only word character [a-zA-Z_0-9] is accepted
protected  LinkedHashMap<String,FieldType> fields
          fields use ordered map, to keep order insertion of field key: field name value: field type
protected  String name
          Name of this extension.
protected static Pattern NamePattern
          Field name pattern only word character [a-zA-Z_0-9] is accepted
protected  PropertyChangeSupport propertyChangeSupport
          Property change support.
protected  List<String> requires
          Name of others extensions needed to put this extension to object.
protected  Map<String,String> tagValues
          used to store tag/value used by client side ex: updatedDate=101212
protected  String version
          use to know version objet, when you change field number, type or other you must change version number.
 
Constructor Summary
WikittyExtension()
          Default constructor.
WikittyExtension(String name)
           
WikittyExtension(String name, String version, LinkedHashMap<String,FieldType> fields)
           
WikittyExtension(String name, String version, Map<String,String> tagValues, List<String> requires, LinkedHashMap<String,FieldType> fields)
           
WikittyExtension(String name, String version, Map<String,String> tagValues, String[] requires, LinkedHashMap<String,FieldType> fields)
           
WikittyExtension(String name, String version, Map<String,String> tagValues, String requires, LinkedHashMap<String,FieldType> fields)
           
 
Method Summary
 void addField(String fieldName, FieldType type)
           
 void addPropertyChangeListener(PropertyChangeListener listener)
           
 void addPropertyChangeListener(String propertyName, PropertyChangeListener listener)
           
 void addTagValue(String tag, String value)
           
 WikittyExtension cloneForUpgrade()
           
static String computeId(String name, String version)
          Compute id for extension name and version in argument.
static String computeName(String id)
          Extract name from extension id
static String computeVersion(String id)
          Extract extension version from extension id.
 boolean equals(Object obj)
           
static String extractExtensionName(String fqFieldName)
          Extract extension name from fully qualified field name
static String extractFieldName(String fqFieldName)
          Extract field name from fully qualified field name (suppression [n/m] if field is collection) and suppress TYPE if needed
 Collection<String> getFieldNames()
           
 FieldType getFieldType(String fieldName)
           
 String getId()
           
 String getName()
           
protected  PropertyChangeSupport getPropertyChangeSupport()
           
 List<String> getRequires()
           
 List<Element> getSortAscending()
          Retourne la liste des champs a trier de facon ascendante
 List<Element> getSortDescending()
          Retourne la liste des champs a trier de facon descendante
 Set<String> getTagNames()
           
 String getTagValue(String tag)
           
 Map<String,String> getTagValues()
           
 String getTagValueSortOrder()
           
 String getTagValueToString()
           
 String getVersion()
           
 int hashCode()
           
 boolean hasTagValueSortOrder()
           
 boolean hasTagValueToString()
           
static boolean isFqField(String fieldName)
           
 void removeField(String fieldName)
           
 void removePropertyChangeListener(PropertyChangeListener listener)
           
 void removePropertyChangeListener(String propertyName, PropertyChangeListener listener)
           
 void setName(String name)
          Set extension name.
 void setRequires(List<String> requires)
           
 void setTagValues(Map<String,String> tagValues)
          Set all tag values.
 String toDefinition()
           
 String toString()
           
 String toString(Wikitty wikitty)
          Return toString representation.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

NamePattern

protected static Pattern NamePattern
Field name pattern only word character [a-zA-Z_0-9] is accepted


fieldNamePattern

protected static Pattern fieldNamePattern
Field name pattern only word character [a-zA-Z_0-9] is accepted


propertyChangeSupport

protected transient PropertyChangeSupport propertyChangeSupport
Property change support. Warning, this transient field is null after deserialization.


name

protected String name
Name of this extension.


requires

protected List<String> requires
Name of others extensions needed to put this extension to object.


version

protected String version
use to know version objet, when you change field number, type or other you must change version number.


tagValues

protected Map<String,String> tagValues
used to store tag/value used by client side ex: updatedDate=101212


fields

protected LinkedHashMap<String,FieldType> fields
fields use ordered map, to keep order insertion of field key: field name value: field type

Constructor Detail

WikittyExtension

public WikittyExtension()
Default constructor. Used by hibernate.


WikittyExtension

public WikittyExtension(String name)

WikittyExtension

public WikittyExtension(String name,
                        String version,
                        LinkedHashMap<String,FieldType> fields)

WikittyExtension

public WikittyExtension(String name,
                        String version,
                        Map<String,String> tagValues,
                        String requires,
                        LinkedHashMap<String,FieldType> fields)

WikittyExtension

public WikittyExtension(String name,
                        String version,
                        Map<String,String> tagValues,
                        String[] requires,
                        LinkedHashMap<String,FieldType> fields)

WikittyExtension

public WikittyExtension(String name,
                        String version,
                        Map<String,String> tagValues,
                        List<String> requires,
                        LinkedHashMap<String,FieldType> fields)
Method Detail

getPropertyChangeSupport

protected PropertyChangeSupport getPropertyChangeSupport()

addPropertyChangeListener

public void addPropertyChangeListener(PropertyChangeListener listener)

removePropertyChangeListener

public void removePropertyChangeListener(PropertyChangeListener listener)

addPropertyChangeListener

public void addPropertyChangeListener(String propertyName,
                                      PropertyChangeListener listener)

removePropertyChangeListener

public void removePropertyChangeListener(String propertyName,
                                         PropertyChangeListener listener)

cloneForUpgrade

public WikittyExtension cloneForUpgrade()

computeId

public static String computeId(String name,
                               String version)
Compute id for extension name and version in argument.

Parameters:
name - extension name
version - extension version
Returns:
extension string id

computeName

public static String computeName(String id)
Extract name from extension id

Parameters:
id - id like MonExtension[3.0]
Returns:
extension name. Example 'MonExtension'

computeVersion

public static String computeVersion(String id)
Extract extension version from extension id. If id contains no version this method return '0.0'.

Parameters:
id - id like MonExtension[3.0]
Returns:
extension version. Example '3.0'

isFqField

public static boolean isFqField(String fieldName)

extractExtensionName

public static String extractExtensionName(String fqFieldName)
Extract extension name from fully qualified field name

Parameters:
fqFieldName - fully qualified field name like 'WikittyUser.login'
Returns:
return extension name. Example 'WikittyUser'
Throws:
WikittyException - if bad fqFieldName format

extractFieldName

public static String extractFieldName(String fqFieldName)
Extract field name from fully qualified field name (suppression [n/m] if field is collection) and suppress TYPE if needed

Parameters:
fqFieldName - fully qualified field name like 'WikittyUser.login'
Returns:
return field name. Example 'login'

getId

public String getId()

getName

public String getName()

setName

public void setName(String name)
Set extension name. Check for invalid extension name (non alphanumeric characters).

Parameters:
name - name

getVersion

public String getVersion()

getRequires

public List<String> getRequires()

setRequires

public void setRequires(List<String> requires)

getFieldType

public FieldType getFieldType(String fieldName)

getFieldNames

public Collection<String> getFieldNames()

addField

public void addField(String fieldName,
                     FieldType type)

removeField

public void removeField(String fieldName)

hashCode

public int hashCode()
Overrides:
hashCode in class Object

addTagValue

public void addTagValue(String tag,
                        String value)

getTagValue

public String getTagValue(String tag)

getTagNames

public Set<String> getTagNames()

getTagValues

public Map<String,String> getTagValues()

setTagValues

public void setTagValues(Map<String,String> tagValues)
Set all tag values. If argument is null, new empty map is created.


hasTagValueToString

public boolean hasTagValueToString()

getTagValueToString

public String getTagValueToString()

hasTagValueSortOrder

public boolean hasTagValueSortOrder()

getTagValueSortOrder

public String getTagValueSortOrder()

getSortAscending

public List<Element> getSortAscending()
Retourne la liste des champs a trier de facon ascendante

Returns:
une liste contenant les champs de tri ou une liste vide

getSortDescending

public List<Element> getSortDescending()
Retourne la liste des champs a trier de facon descendante

Returns:
une liste contenant les champs de tri ou une liste vide

equals

public boolean equals(Object obj)
Overrides:
equals in class Object

toString

public String toString()
Overrides:
toString in class Object

toDefinition

public String toDefinition()

toString

public String toString(Wikitty wikitty)
Return toString representation. Use tagValue 'toString' format if exist, else standard Wikitty.toString is call

Parameters:
wikitty -
Returns:


Copyright © 2009-2012 CodeLutin. All Rights Reserved.