org.apache.tapestry.util.io
Class DataSqueezerImpl

java.lang.Object
  extended by org.apache.tapestry.util.io.DataSqueezerImpl
All Implemented Interfaces:
DataSqueezer

public class DataSqueezerImpl
extends java.lang.Object
implements DataSqueezer

A class used to convert arbitrary objects to Strings and back. This has particular uses involving HTTP URLs and Cookies.

Author:
Howard Lewis Ship

Constructor Summary
DataSqueezerImpl()
           
 
Method Summary
 void register(SqueezeAdaptor adaptor)
          Registers the adaptor with one or more single-character prefixes.
 void setSqueezeAdaptors(java.util.List adaptors)
           
 java.lang.String squeeze(java.lang.Object data)
          Squeezes the data object into a String by locating an appropriate adaptor that can perform the conversion.
 java.lang.String[] squeeze(java.lang.Object[] data)
          A convience; invokes squeeze(Object)for each element in the data array.
 java.lang.String toString()
           
 java.lang.Object unsqueeze(java.lang.String string)
          Unsqueezes the string.
 java.lang.Object[] unsqueeze(java.lang.String[] strings)
          Convienience method for unsqueezing many strings (back into objects).
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DataSqueezerImpl

public DataSqueezerImpl()
Method Detail

setSqueezeAdaptors

public void setSqueezeAdaptors(java.util.List adaptors)

register

public void register(SqueezeAdaptor adaptor)
Registers the adaptor with one or more single-character prefixes.

Note: This method should be used for testing purposes only! Squeeze adaptors are normally injected by HiveMind.

Parameters:
adaptor - the adaptor which to be registered.

squeeze

public java.lang.String squeeze(java.lang.Object data)
Squeezes the data object into a String by locating an appropriate adaptor that can perform the conversion. data may be null.

Specified by:
squeeze in interface DataSqueezer

squeeze

public java.lang.String[] squeeze(java.lang.Object[] data)
A convience; invokes squeeze(Object)for each element in the data array. If data is null, returns null.

Specified by:
squeeze in interface DataSqueezer

unsqueeze

public java.lang.Object unsqueeze(java.lang.String string)
Unsqueezes the string. Note that in a special case, where the first character of the string is not a recognized prefix, it is assumed that the string is simply a string, and return with no change.

Specified by:
unsqueeze in interface DataSqueezer

unsqueeze

public java.lang.Object[] unsqueeze(java.lang.String[] strings)
Convienience method for unsqueezing many strings (back into objects).

If strings is null, returns null.

Specified by:
unsqueeze in interface DataSqueezer

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object