Class RestrictedStringAdapter

All Implemented Interfaces:
Serializable

public class RestrictedStringAdapter extends SimpleAdapter
A property adapter for a String based type that is known to have a converting factory method with the following signature: public static <type> valueOf(String s). This approach is usually used by the simple types that use derivation by restriction.
Version:
1.00 2002.05.21
Author:
gg
See Also:
  • Field Details

    • m_methodFactory

      protected Method m_methodFactory
      The factory method.
  • Constructor Details

    • RestrictedStringAdapter

      public RestrictedStringAdapter(XmlBean.BeanInfo infoBean, Class clzType, String sName, String sXml, XmlElement xml)
      Construct a RestrictedStringAdapter.
      Parameters:
      infoBean - BeanInfo for a bean containing this property
      clzType - the type of the property
      sName - the property name
      sXml - the XML tag name
      xml - additional XML information
  • Method Details

    • isCloneRequired

      public boolean isCloneRequired()
      Description copied from class: PropertyAdapter
      Determine if the property value must be deep-cloned. Typically, a property value must be deep-cloned if it is a mutable reference type, e.g. StringBuffer, Date, byte[].
      Overrides:
      isCloneRequired in class SimpleAdapter
      Returns:
      true if the property value must be "deep" cloned when the containing object is cloned
    • fromXml

      public Object fromXml(XmlElement xml)
      Deserialize an object from an XML element.
      Overrides:
      fromXml in class SimpleAdapter
      Parameters:
      xml - the XML element to deserialize from
      Returns:
      the object deserialized from the XML element
    • toXml

      public XmlElement toXml(Object o)
      Serialize an object into an XML element.
      Overrides:
      toXml in class SimpleAdapter
      Parameters:
      o - the object to serialize
      Returns:
      the XML element representing the serialized form of the passed object
    • fromUri

      public Object fromUri(String sUri)
      Deserialize an object from a URI element.
      Overrides:
      fromUri in class SimpleAdapter
      Parameters:
      sUri - the URI element to deserialize from
      Returns:
      the object deserialized from the URI element
      Throws:
      UnsupportedOperationException - if the property cannot be read from a URI element
    • toUri

      public String toUri(Object o)
      Serialize an object into a URI element.
      Overrides:
      toUri in class SimpleAdapter
      Parameters:
      o - the object to serialize
      Returns:
      the URI element representing the serialized form of the passed object
      Throws:
      UnsupportedOperationException - if the property cannot be written to a URI element
    • readExternal

      public Object readExternal(DataInput in) throws IOException
      Read a value from the passed DataInput object.
      Overrides:
      readExternal in class PropertyAdapter
      Parameters:
      in - the DataInput stream to read property data from
      Returns:
      the data read from the DataInput; may be null
      Throws:
      IOException - if an I/O exception occurs
    • writeExternal

      public void writeExternal(DataOutput out, Object o) throws IOException
      Write the specified data to the passed DataOutput object.
      Overrides:
      writeExternal in class PropertyAdapter
      Parameters:
      out - the DataOutput stream to write to
      o - the data to write to the DataOutput; never null
      Throws:
      IOException - if an I/O exception occurs
    • instantiateBean

      protected Object instantiateBean(String s)
      Convert a String into an instance of the bean.
      Parameters:
      s - a String value to be passed to the factory method
      Returns:
      an instance of the bean (property value)