org.nuiton.util.converter
Class FormatConverterFactory

java.lang.Object
  extended by org.nuiton.util.converter.FormatConverterFactory

public class FormatConverterFactory
extends Object

Factory permet d'enregistrer des objets de changement de format, et de les recupérer pour les utiliser. Les objets converter doivent au moins savoir convertir les objets depuis une representation Java. Pour des raisons d'optimisation, il est possible qu'il sache aussi convertir a partir d'autre representation, qui si elle existe sont moins couteuse a convertir. Il faut aussi que les converter sache convertir de leur representation vers un objet Java. par exemple si on enregistre les convertiseurs suivant:

 addConverter(new MatrixToXMLFormatConverter());
 addConverter(new MatrixToSQLFormatConverter());
 FormatConverterFactory.convert(Matrix.class, MatrixToXMLFormatConverter.TYPE,
    values, AppContext);
 
Dans ce cas pour des raisons d'optimisation

Created: 14 septembre 2005 00:19:51 CEST

Since:
1.3 replace the class org.nuiton.util.FormatConverterFactory.
Version:
$Id: FormatConverterFactory.java 2137 2011-05-13 09:07:31Z tchemit $
Author:
Benjamin POUSSIN

Field Summary
protected  org.apache.commons.collections.map.MultiKeyMap converters
           FormatConverter>
protected static FormatConverterFactory instance
           
 
Constructor Summary
FormatConverterFactory()
           
 
Method Summary
 void addConverter(Class<?> clazz, FormatMap.Format format, FormatConverter<?> c)
          Permet d'enregitrer un converter pour permettre la convertion d'une certain type Java d'une representation vers une autre.
 Object convert(FormatConverter<?> defaultConverter, FormatMap.Format format, FormatMap values, Object... args)
           
 Object convert(FormatMap.Format format, FormatMap values, Object... args)
           
 FormatConverter<?> findConverter(Class<?> clazz, FormatMap.Format format)
           
 FormatConverter<?> findConverter(Class<?> clazz, FormatMap.Format format, FormatConverter<?> defaultConverter)
          Permet de retrouver le meilleur converter disponible pour l'argument clazz
 FormatConverter<?> getConverter(Class<?> clazz, FormatMap.Format format)
           
 FormatConverter<?> getConverter(Class<?> clazz, FormatMap.Format format, FormatConverter<?> defaultConverter)
          permet de recupere le converter pour la classe souhaitée.
static FormatConverterFactory getInstance()
           
 Object unconvert(FormatConverter<?> defaultConverter, FormatMap.Format format, FormatMap values, Object... args)
           
 Object unconvert(FormatMap.Format format, FormatMap values, Object... args)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

instance

protected static FormatConverterFactory instance

converters

protected org.apache.commons.collections.map.MultiKeyMap converters
FormatConverter>

Constructor Detail

FormatConverterFactory

public FormatConverterFactory()
Method Detail

getInstance

public static FormatConverterFactory getInstance()

addConverter

public void addConverter(Class<?> clazz,
                         FormatMap.Format format,
                         FormatConverter<?> c)
Permet d'enregitrer un converter pour permettre la convertion d'une certain type Java d'une representation vers une autre. par exemple le type String d'un objet Java vers une chaine XML

Parameters:
clazz - la class de la representation Java de l'objet
format - le format géré par le FormatConverter
c - le converter a enregistrer

getConverter

public FormatConverter<?> getConverter(Class<?> clazz,
                                       FormatMap.Format format,
                                       FormatConverter<?> defaultConverter)
permet de recupere le converter pour la classe souhaitée.

Parameters:
clazz - la classe de l'objet dont on souhaite le converter
format - qui doit être géré par le converter
defaultConverter - si aucun converter trouvé, ce converter est retourné
Returns:
le converter souhaité ou defaultConverter

getConverter

public FormatConverter<?> getConverter(Class<?> clazz,
                                       FormatMap.Format format)
Parameters:
clazz -
format -
Returns:
retourne null si aucun converter trouvé
See Also:
#getConverter(Class, Format, FormatConverter)

findConverter

public FormatConverter<?> findConverter(Class<?> clazz,
                                        FormatMap.Format format,
                                        FormatConverter<?> defaultConverter)
Permet de retrouver le meilleur converter disponible pour l'argument clazz

Parameters:
clazz - la classe de l'objet dont on souhaite le converter
format - qui doit être géré par le converter
defaultConverter - si aucun converter trouvé, ce converter est retourné
Returns:
le converter souhaité ou defaultConverter

findConverter

public FormatConverter<?> findConverter(Class<?> clazz,
                                        FormatMap.Format format)
Parameters:
clazz -
format -
Returns:
retourne null si aucun converter trouvé
See Also:
#findConverter(Class, Format, FormatConverter)

convert

public Object convert(FormatMap.Format format,
                      FormatMap values,
                      Object... args)

unconvert

public Object unconvert(FormatMap.Format format,
                        FormatMap values,
                        Object... args)

convert

public Object convert(FormatConverter<?> defaultConverter,
                      FormatMap.Format format,
                      FormatMap values,
                      Object... args)

unconvert

public Object unconvert(FormatConverter<?> defaultConverter,
                        FormatMap.Format format,
                        FormatMap values,
                        Object... args)


Copyright © 2004-2011 CodeLutin. All Rights Reserved.