org.directwebremoting.convert
Class CollectionConverter

java.lang.Object
  extended by org.directwebremoting.extend.AbstractConverter
      extended by org.directwebremoting.convert.CollectionConverter
All Implemented Interfaces:
Converter

public class CollectionConverter
extends AbstractConverter

An implementation of Converter for Collections of Strings.

Author:
Joe Walker [joe at getahead dot ltd dot uk]

Constructor Summary
CollectionConverter()
           
 
Method Summary
 java.lang.Object convertInbound(java.lang.Class<?> paramType, InboundVariable data)
          Attempt to coerce the data from a string to an Object.
 OutboundVariable convertOutbound(java.lang.Object data, OutboundContext outctx)
          Return a javascript string that defines the variable named varName to have the contents of the converted object data.
 void setConverterManager(ConverterManager converterManager)
          If we are a compound converter that farms out part of the conversion to other converters then you farm the conversion out via a configuration.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CollectionConverter

public CollectionConverter()
Method Detail

setConverterManager

public void setConverterManager(ConverterManager converterManager)
Description copied from interface: Converter
If we are a compound converter that farms out part of the conversion to other converters then you farm the conversion out via a configuration.

Specified by:
setConverterManager in interface Converter
Overrides:
setConverterManager in class AbstractConverter
Parameters:
converterManager - The configuration object

convertInbound

public java.lang.Object convertInbound(java.lang.Class<?> paramType,
                                       InboundVariable data)
                                throws ConversionException
Description copied from interface: Converter
Attempt to coerce the data from a string to an Object. If anything goes wrong with inbound conversion then we generally throw an exception because we are converting data from the untrusted Internet so we take the assumption that anything wrong is someone hacking.

Parameters:
paramType - The type to convert to
data - The data to convert
Returns:
The converted data, or null if the conversion was not possible
Throws:
ConversionException - If the conversion failed for some reason

convertOutbound

public OutboundVariable convertOutbound(java.lang.Object data,
                                        OutboundContext outctx)
                                 throws ConversionException
Description copied from interface: Converter
Return a javascript string that defines the variable named varName to have the contents of the converted object data.

In contrast to convertInbound() failures in converting data on the way out should not stop processing, and we should carry on if we can. Failures are probably down to some misconfiguration so as much information about the error as can be safely generated to console logs is good. In other words if you need to loop in outbound conversion then it might be a good idea to catch issues inside the loop, log, and carry on.

Parameters:
data - The data to convert
outctx - A collection of objects already converted and the results
Returns:
The OutboundVariable that represents the data to convert
Throws:
ConversionException - If the conversion failed for some reason

Copyright 2008