org.norther.tammi.core.converter
Class DefaultObjectConverter

java.lang.Object
  extended by org.norther.tammi.core.base.Adaptee
      extended by org.norther.tammi.core.converter.DefaultObjectConverter
All Implemented Interfaces:
Serializable, NotificationBroadcaster, NotificationEmitter, Manageable, MBeanDelegate, ObjectConverter
Direct Known Subclasses:
DefaultDateConverter, DefaultIdentityConverter, DefaultInternetAddressConverter, DefaultNumberConverter, DefaultObjectNameConverter, DefaultPermissionConverter, DefaultVariableConverter

public class DefaultObjectConverter
extends Adaptee
implements ObjectConverter

A default implementation of ObjectConverter acting also as an adapter to class specific implementations.

This implementation provides conversions between strings and Java base types. For more complicated cases, subclasses must implement specific conversion methods.

Author:
Ilkka Priha
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.norther.tammi.core.base.Adaptee
ADAPTEE_NOTIF_DESCRIPTION, ADAPTEE_NOTIFICATIONS
 
Fields inherited from interface org.norther.tammi.core.base.MBeanDelegate
ARRAY_TYPE, OBJECT_TYPE, PRIMITIVE_TYPE, STRING_TYPE
 
Constructor Summary
DefaultObjectConverter()
          Constructs a new converter.
DefaultObjectConverter(ObjectConverter adaptee)
          Constructs a new converter adapter.
 
Method Summary
protected  Object fromLocalizedObject(String className, Object object, String pattern, Locale locale, ResourceBundle bundle)
          Returns a non-localized source object to be applied in type conversion.
protected  Object getComponentInstance(String className, Object object, String pattern, Object minValue, Object maxValue)
          Gets an instance of the named component class by converting the source object and optionally applying the specified pattern and limits.
 String getFormatPattern(String className, String pattern, Locale locale)
          Gets the format pattern.
 Object getInstance(String className, Object object, String pattern, Object minValue, Object maxValue)
          Gets an instance of the named class by converting the source object and optionally applying the specified pattern and limits.
 Object getInstance(String className, Object object, String pattern, Object minValue, Object maxValue, Locale locale, ResourceBundle bundle)
          Gets an instance of the named class by converting the localized source resource and optionally applying the specified pattern and limits.
 Object getInstance(String className, Object object, String pattern, Object minValue, Object maxValue, String baseName, Locale locale)
          Gets an instance of the named class by converting the localized source object and optionally applying the specified pattern and limits.
 String getLocalizedPattern(String className, String pattern, Locale locale)
          Gets the localized format pattern.
 ObjectName getResourceFinderName()
          Gets the the resource finder of this converter.
 boolean isConversionSupported(String className)
          Checks whether conversion of the specified class is supported.
 void postmanaged()
          This method is called when the implementing adaptee has been managed either during post-registration of the corresponding adapter MBean or just after it is explicitly added to the adapter MBean during run-time.
 void setResourceFinderName(ObjectName finder)
          Sets the resource finder of this converter.
protected  String toComponentString(String className, Object object, String pattern)
          Returns a string representation of an object of the named component class by optionally applying the specified pattern.
protected  String toLocalizedObject(String className, String object, String pattern, Locale locale, ResourceBundle bundle)
          Returns a localized source object to be applied after type conversion.
 String toString(String className, Object object, String pattern)
          Returns a string representation of an object of the named class by optionally applying the specified pattern.
 String toString(String className, Object object, String pattern, Locale locale, ResourceBundle bundle)
          Returns a localized resource of the named class by optionally applying the specified pattern.
 String toString(String className, Object object, String pattern, String baseName, Locale locale)
          Returns a localized string representation of an object of the named class by optionally applying the specified pattern.
 String[] toStrings(String className, Object object, String pattern)
          Returns a string representation of an array object of the named class by optionally applying the specified pattern.
 String[] toStrings(String className, Object object, String pattern, Locale locale, ResourceBundle bundle)
          Returns a localized resource of the named class by optionally applying the specified pattern.
 String[] toStrings(String className, Object object, String pattern, String baseName, Locale locale)
          Returns a localized string representation of an object of the named class by optionally applying the specified pattern.
 void unmanaged()
          This method is called when the implementing adaptee is unmanaged either during pre-deregistration of the corresponding adapter MBean or just before it is explicitly removed from the adapter MBean during run-time.
 
Methods inherited from class org.norther.tammi.core.base.Adaptee
addAdaptee, addNotificationListener, getAttributeSupport, getBroker, getCanonicalName, getDomain, getFactory, getLoader, getLog, getLog, getMBean, getMBeanServer, getNotificationInfo, getObjectName, getRegistrationTime, getSequenceNumber, hasListeners, isRegistered, premanaged, removeNotificationListener, removeNotificationListener, sendNotification, sendNotification, sendNotification, sendNotification, unregister
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultObjectConverter

public DefaultObjectConverter()
Constructs a new converter.


DefaultObjectConverter

public DefaultObjectConverter(ObjectConverter adaptee)
Constructs a new converter adapter.

Parameters:
adaptee - the adaptee.
Method Detail

postmanaged

public void postmanaged()
Description copied from interface: Manageable
This method is called when the implementing adaptee has been managed either during post-registration of the corresponding adapter MBean or just after it is explicitly added to the adapter MBean during run-time.

Specified by:
postmanaged in interface Manageable
Overrides:
postmanaged in class Adaptee

unmanaged

public void unmanaged()
               throws Exception
Description copied from interface: Manageable
This method is called when the implementing adaptee is unmanaged either during pre-deregistration of the corresponding adapter MBean or just before it is explicitly removed from the adapter MBean during run-time.

Specified by:
unmanaged in interface Manageable
Overrides:
unmanaged in class Adaptee
Throws:
Exception - if the adaptee refused to be unmanaged.

getInstance

public Object getInstance(String className,
                          Object object,
                          String pattern,
                          Object minValue,
                          Object maxValue)
                   throws ConversionException
Description copied from interface: ObjectConverter
Gets an instance of the named class by converting the source object and optionally applying the specified pattern and limits.

Specified by:
getInstance in interface ObjectConverter
Parameters:
className - the name of the class.
object - the source object.
pattern - an optional conversion pattern.
minValue - an optional minimum value.
maxValue - an optional maximum value.
Returns:
the instance.
Throws:
ConversionException - if conversion fails.

getInstance

public Object getInstance(String className,
                          Object object,
                          String pattern,
                          Object minValue,
                          Object maxValue,
                          String baseName,
                          Locale locale)
                   throws ConversionException
Description copied from interface: ObjectConverter
Gets an instance of the named class by converting the localized source object and optionally applying the specified pattern and limits.

Specified by:
getInstance in interface ObjectConverter
Parameters:
className - the name of the class.
object - the source object.
pattern - an optional conversion pattern.
minValue - an optional minimum value.
maxValue - an optional maximum value.
baseName - the base name of the resource bundle.
locale - the optional locale of the source object.
Returns:
the instance.
Throws:
ConversionException - if conversion fails.

getInstance

public Object getInstance(String className,
                          Object object,
                          String pattern,
                          Object minValue,
                          Object maxValue,
                          Locale locale,
                          ResourceBundle bundle)
                   throws ConversionException
Description copied from interface: ObjectConverter
Gets an instance of the named class by converting the localized source resource and optionally applying the specified pattern and limits.

Specified by:
getInstance in interface ObjectConverter
Parameters:
className - the name of the class.
object - the source object.
pattern - an optional conversion pattern.
minValue - an optional minimum value.
maxValue - an optional maximum value.
locale - the locale of the source object.
bundle - the resource bundle to apply.
Returns:
the instance.
Throws:
ConversionException - if conversion fails.

toString

public String toString(String className,
                       Object object,
                       String pattern)
Description copied from interface: ObjectConverter
Returns a string representation of an object of the named class by optionally applying the specified pattern.

Specified by:
toString in interface ObjectConverter
Parameters:
className - the name of the class.
object - the source object.
pattern - an optional conversion pattern.
Returns:
the string representation.

toString

public String toString(String className,
                       Object object,
                       String pattern,
                       String baseName,
                       Locale locale)
Description copied from interface: ObjectConverter
Returns a localized string representation of an object of the named class by optionally applying the specified pattern.

Specified by:
toString in interface ObjectConverter
Parameters:
className - the name of the class.
object - the source object.
pattern - the conversion pattern.
baseName - the base name of the resource bundle.
locale - the optional locale of the result.
Returns:
the string representation.

toString

public String toString(String className,
                       Object object,
                       String pattern,
                       Locale locale,
                       ResourceBundle bundle)
Description copied from interface: ObjectConverter
Returns a localized resource of the named class by optionally applying the specified pattern.

Specified by:
toString in interface ObjectConverter
Parameters:
className - the name of the class.
object - the source object.
pattern - the conversion pattern.
locale - the optional locale of the result.
bundle - the resource bundle to apply.
Returns:
the string resource.

toStrings

public String[] toStrings(String className,
                          Object object,
                          String pattern)
Description copied from interface: ObjectConverter
Returns a string representation of an array object of the named class by optionally applying the specified pattern.

Specified by:
toStrings in interface ObjectConverter
Parameters:
className - the name of the class.
object - the source object.
pattern - an optional conversion pattern.
Returns:
the string representation.

toStrings

public String[] toStrings(String className,
                          Object object,
                          String pattern,
                          String baseName,
                          Locale locale)
Description copied from interface: ObjectConverter
Returns a localized string representation of an object of the named class by optionally applying the specified pattern.

Specified by:
toStrings in interface ObjectConverter
Parameters:
className - the name of the class.
object - the source object.
pattern - the conversion pattern.
baseName - the base name of the resource bundle.
locale - the optional locale of the result.
Returns:
the string representation.

toStrings

public String[] toStrings(String className,
                          Object object,
                          String pattern,
                          Locale locale,
                          ResourceBundle bundle)
Description copied from interface: ObjectConverter
Returns a localized resource of the named class by optionally applying the specified pattern.

Specified by:
toStrings in interface ObjectConverter
Parameters:
className - the name of the class.
object - the source object.
pattern - the conversion pattern.
locale - the optional locale of the result.
bundle - the resource bundle to apply.
Returns:
the string resource.

isConversionSupported

public boolean isConversionSupported(String className)
Description copied from interface: ObjectConverter
Checks whether conversion of the specified class is supported.

Specified by:
isConversionSupported in interface ObjectConverter
Parameters:
className - the class name.
Returns:
true for a supported conversion, false otherwise.

getFormatPattern

public String getFormatPattern(String className,
                               String pattern,
                               Locale locale)
Description copied from interface: ObjectConverter
Gets the format pattern.

Specified by:
getFormatPattern in interface ObjectConverter
Parameters:
className - the class name.
pattern - the conversion pattern.
locale - an optional locale to apply.
Returns:
the format pattern or the conversion pattern if the same.

getLocalizedPattern

public String getLocalizedPattern(String className,
                                  String pattern,
                                  Locale locale)
Description copied from interface: ObjectConverter
Gets the localized format pattern.

Specified by:
getLocalizedPattern in interface ObjectConverter
Parameters:
className - the class name.
pattern - the conversion pattern.
locale - an optional locale to apply.
Returns:
the localized pattern or the conversion pattern if the same.

getResourceFinderName

public ObjectName getResourceFinderName()
Description copied from interface: ObjectConverter
Gets the the resource finder of this converter.

Specified by:
getResourceFinderName in interface ObjectConverter
Returns:
the object name of the resource finder or a query.

setResourceFinderName

public void setResourceFinderName(ObjectName finder)
Description copied from interface: ObjectConverter
Sets the resource finder of this converter. If it is not set, the default one will be used.

Specified by:
setResourceFinderName in interface ObjectConverter
Parameters:
finder - the object name of the resource finder or a query.

fromLocalizedObject

protected Object fromLocalizedObject(String className,
                                     Object object,
                                     String pattern,
                                     Locale locale,
                                     ResourceBundle bundle)
Returns a non-localized source object to be applied in type conversion.

Parameters:
className - the name of the class.
object - the source object.
pattern - an optional conversion pattern.
locale - the locale of the source object.
bundle - the resource bundle if available.
Returns:
the non-localized source object.

toLocalizedObject

protected String toLocalizedObject(String className,
                                   String object,
                                   String pattern,
                                   Locale locale,
                                   ResourceBundle bundle)
Returns a localized source object to be applied after type conversion.

Parameters:
className - the name of the class.
object - the source object.
pattern - an optional conversion pattern.
locale - the locale of the source object.
bundle - the resource bundle if available.
Returns:
the localized source object.

getComponentInstance

protected Object getComponentInstance(String className,
                                      Object object,
                                      String pattern,
                                      Object minValue,
                                      Object maxValue)
                               throws ConversionException
Gets an instance of the named component class by converting the source object and optionally applying the specified pattern and limits.

Parameters:
className - the name of the class.
object - the source object.
pattern - an optional conversion pattern.
minValue - an optional minimum value.
maxValue - an optional maximum value.
Returns:
the component instance.
Throws:
ConversionException - if conversion fails.

toComponentString

protected String toComponentString(String className,
                                   Object object,
                                   String pattern)
Returns a string representation of an object of the named component class by optionally applying the specified pattern.

Parameters:
className - the name of the class.
object - the source object.
pattern - an optional conversion pattern.
Returns:
the string representation.


Copyright © 2004 The Norther Organization. All rights reserved.