Class ValueCustom


public class ValueCustom extends SharedValueBase
Member field or property customization information.
Author:
Dennis M. Sosnoski
  • Field Details

    • s_allowedAttributes

      public static final StringArray s_allowedAttributes
      Enumeration of allowed attribute names
    • m_private

      private boolean m_private
      Private property flag.
    • m_fieldName

      private String m_fieldName
      'field' attribute value (null if none).
    • m_getName

      private String m_getName
      'get-method' attribute value (null if none).
    • m_setName

      private String m_setName
      'set-method' attribute value (null if none).
    • m_propertyName

      private String m_propertyName
      'property-name' attribute value (null if none).
  • Constructor Details

    • ValueCustom

      protected ValueCustom(SharedNestingBase parent)
      Constructor.
      Parameters:
      parent -
    • ValueCustom

      protected ValueCustom(SharedNestingBase parent, String name)
      Constructor with name known.
      Parameters:
      parent -
      name -
  • Method Details

    • memberNameFromGetMethod

      public static String memberNameFromGetMethod(String name)
      Get the member name for a property from the read method name. This means stripping off the leading "get" or "is" prefix, then case-converting the result.
      Parameters:
      name -
      Returns:
      member name
      See Also:
    • memberNameFromSetMethod

      public static String memberNameFromSetMethod(String name)
      Get the member name for a property from the write method name. This means stripping off the leading "set" prefix, then case-converting the result.
      Parameters:
      name -
      Returns:
      member name
      See Also:
    • memberNameFromField

      public static String memberNameFromField(String name, String[] prefs, String[] suffs)
      Get the member name for a field from the field name. This means stripping off and leading field name prefix and/or trailing suffix, then case-converting the result.
      Parameters:
      name -
      prefs - field prefixes to be stripped
      suffs - field suffixes to be stripped
      Returns:
      member name
      See Also:
    • setElement

      private void setElement(String text, IUnmarshallingContext ictx)
      Set element name method. This is intended for use during unmarshalling, so it needs to allow for being called with a null value. TODO: add validation
      Parameters:
      text - (null if attribute not present)
      ictx -
    • setAttribute

      private void setAttribute(String text, IUnmarshallingContext ictx)
      Set attribute name method. This is intended for use during unmarshalling, so it needs to allow for being called with a null value. TODO: add validation
      Parameters:
      text - (null if attribute not present)
      ictx -
    • isProperty

      public boolean isProperty()
      Check if member represents a property.
      Returns:
      true
    • isPrivate

      public boolean isPrivate()
      Check if a private member.
      Returns:
      true if private, false if not
    • getFieldName

      public String getFieldName()
      Get 'field' attribute value.
      Returns:
      'field' value (null if none)
    • getGetName

      public String getGetName()
      Get 'get-method' attribute name.
      Returns:
      'get' attribute name (null if none)
    • getSetName

      public String getSetName()
      Get 'set-method' attribute name.
      Returns:
      'set-method' attribute name (null if none)
    • getPropertyName

      public String getPropertyName()
      Get 'property-name' attribute value.
      Returns:
      property name (null if none)
    • preSet

      protected void preSet(IUnmarshallingContext uctx)
      Make sure all attributes are defined.
      Parameters:
      uctx - unmarshalling context
    • postSet

      protected void postSet() throws JiBXException
      Post-set method that handles checking attribute combinations and sets the actual member name.
      Throws:
      JiBXException
    • fillDetails

      void fillDetails(IClassItem field, IClassItem gmeth, IClassItem smeth, IClassLocator icl, Boolean req, Integer style)
      Complete customization information based on either field or access method information.
      Parameters:
      field - (null if none)
      gmeth - read access method (null if none)
      smeth - write access method (null if none)
      icl - class locator
      req - required member flag (null if unknown)
      style - representation style (null if unspecified)
    • fillDetails

      void fillDetails(IClass info, Boolean req, Integer style)
      Complete customization information based on whatever field or access method information has been set.
      Parameters:
      info - containing class information
      req - required member flag (null if unknown)
      style - representation style (null if unspecified)
    • factory

      private static ValueCustom factory(IUnmarshallingContext ictx)
      Factory method for creating instances during unmarshalling.
      Parameters:
      ictx -
      Returns:
      instance