org.nuiton.util.converter
Class FormatMap
java.lang.Object
java.util.AbstractMap<K,V>
java.util.HashMap<FormatMap.Format,Object>
org.nuiton.util.converter.FormatMap
- All Implemented Interfaces:
- Serializable, Cloneable, Map<FormatMap.Format,Object>
public class FormatMap
- extends HashMap<FormatMap.Format,Object>
Classe servant de conteneur pour les différentes representation d'un objet
Les representations doivents être des instances de FormatMap.Format. Le mieux
est lors de l'ecriture des convertisseurs pour un nouveau format est de
créer une instance final static de FormatMap.Format Format pour representer
ce format
Utilisation
FormatMap values = new FormatMap(MonObject.class);
values.put(FormatConverter.FORMAT_JAVA, monInstance);
Element xml = (Element)values.convert(XMLConverter.FORMAT_XML);
Object sql = values.convert(SQLConverter.FORMAT_SQL);
FormatMap values = new FormatMap(MonObject.class);
values.put(FormatConverter.FORMAT_XML, monInstanceEnXML);
Object sql = values.convert(SQLConverter.FORMAT_SQL);
Dans ce second cas, la demande de la version SQL, transforme automatiquement
la representation XML qui est la seul presente en Java, puis a partir de
cette representation Java, on recupere la representation SQL. Bien sur
Si le convertisseur SQL, peut directement convertir le XML en SQL, alors
la conversion Java ne sera pas faite.
Il est souvent plus simple de faire une petite classe avec les methodes
getSQL() et getXML(), qui retourne les valeurs directement dans le bon type
et qui n'ont pas besoin d'argument.
Created: 16 septembre 2005 10:41:58 CEST
- Since:
- 1.3 (replace
org.nuiton.util.FormatMap class).
- Version:
- $Id: FormatMap.java 1948 2010-11-17 21:31:00Z sletellier $
- Author:
- Benjamin POUSSIN
- See Also:
- Serialized Form
| Methods inherited from class java.util.HashMap |
clear, clone, containsKey, containsValue, entrySet, get, isEmpty, keySet, put, putAll, remove, size, values |
clazz
protected Class<?> clazz
FormatMap
public FormatMap(Class<?> clazz)
getType
public Class<?> getType()
setValue
public void setValue(FormatMap.Format format,
Object value)
- Met a jour la valeur de l'objet. Toutes les autres valeurs calculées
sont oubliées et seront recalculé en fonction de cette nouvelle valeur
- Parameters:
format - le format a utiliservalue -
convert
public Object convert(FormatMap.Format format,
Object... args)
- Utilise le FormatConverterFactory par defaut pour la conversion
- Parameters:
format - le format a utiliserargs - les arguments
- Returns:
- l'objet converti
convert
public Object convert(FormatConverterFactory factory,
FormatMap.Format format,
Object... args)
- Recupere la valeur dans le format demandé
- Parameters:
factory - la FormatConverterFactory a utiliserformat - le format souhaitéargs - des arguments facultatifs en fonction du context d'utilisation
- Returns:
- l'objet converti
unconvert
public Object unconvert(FormatMap.Format format,
Object... args)
- Utilise le FormatConverterFactory par defaut pour la conversion
- Parameters:
format - le format utiliseargs -
- Returns:
- l'objet java
unconvert
public Object unconvert(FormatConverterFactory factory,
FormatMap.Format format,
Object... args)
- Donne la representation Java de l'objet en essayant de partir de la
representation passé en parametre.
- Parameters:
factory - la factory a utiliserformat - le format de départ souhaitéargs - des arguments facultatifs en fonction du context d'utilisation
- Returns:
- l'objet java
Copyright © 2004-2011 CodeLutin. All Rights Reserved.