Class SDOTypeHelperDelegator

java.lang.Object
org.eclipse.persistence.sdo.helper.delegates.AbstractHelperDelegator
org.eclipse.persistence.sdo.helper.delegates.SDOTypeHelperDelegator
All Implemented Interfaces:
TypeHelper, SDOTypeHelper

public class SDOTypeHelperDelegator extends AbstractHelperDelegator implements SDOTypeHelper

Purpose: Helper to provide access to declared SDO Types.

Responsibilities:

  • Finds the appropriate SDOTypeHelperDelegate for the classLoader/application name and delegates work to that
  • Look up a Type given the uri and typeName or interfaceClass.
  • SDO Types are available through the getType("commonj.sdo", typeName) method.
  • Defines Types from DataObjects.
  • Constructor Details

    • SDOTypeHelperDelegator

      public SDOTypeHelperDelegator()
    • SDOTypeHelperDelegator

      public SDOTypeHelperDelegator(HelperContext aContext)
  • Method Details

    • getJavaWrapperTypeForSDOType

      public Class getJavaWrapperTypeForSDOType(Type sdoType)
      Description copied from interface: SDOTypeHelper
      INTERNAL:
      Specified by:
      getJavaWrapperTypeForSDOType in interface SDOTypeHelper
      Returns:
    • getType

      public Type getType(String uri, String typeName)
      Description copied from interface: TypeHelper
      Return the Type specified by typeName with the given uri, or null if not found. If the XSD uri (in the case of built-in Schema types) or the XSD typeName (in case an sdo:name annotation has been used) are different from the SDO name and uri (as returned by type.getURI()) and type.getName()), only the SDO uri and name are used for the lookup.
      If null or "" is passed as the value of the uri parameter, then a type with no URI will be returned, if found.
      Specified by:
      getType in interface TypeHelper
      Parameters:
      uri - The uri of the Type - type.getURI();
      typeName - The name of the Type - type.getName();
      Returns:
      the Type specified by typeName with the given uri, or null if not found.
    • getTypeForSimpleJavaType

      public Type getTypeForSimpleJavaType(Class implClass)
      Description copied from interface: SDOTypeHelper
      INTERNAL:
      Specified by:
      getTypeForSimpleJavaType in interface SDOTypeHelper
      Returns:
    • addType

      public void addType(SDOType newType)
      Description copied from interface: SDOTypeHelper
      INTERNAL:
      Specified by:
      addType in interface SDOTypeHelper
    • getType

      public Type getType(Class interfaceClass)
      Description copied from interface: TypeHelper
      Return the Type for this interfaceClass or null if not found.
      Specified by:
      getType in interface TypeHelper
      Parameters:
      interfaceClass - is the interface for the DataObject's Type - type.getInstanceClass();
      Returns:
      the Type for this interfaceClass or null if not found.
    • getTypeForImplClass

      public SDOType getTypeForImplClass(Class implClass)
      Specified by:
      getTypeForImplClass in interface SDOTypeHelper
    • define

      public Type define(DataObject dataObject)
      Description copied from interface: TypeHelper
      Define the DataObject as a Type. The Type is available through TypeHelper.getType(java.lang.String, java.lang.String) methods. If a type with the same name already exists, it is returned and no new definition takes place. If the uri property of the type to be defined is set to "", then the resulting type will have no uri, same as if the uri property was set to null.
      Specified by:
      define in interface TypeHelper
      Parameters:
      dataObject - the DataObject representing the Type.
      Returns:
      the defined Type.
    • define

      public List define(List types)
      Description copied from interface: TypeHelper
      Define the list of DataObjects as Types. The Types are available through TypeHelper.getType(java.lang.String, java.lang.String) methods. The output list will contain, for every item in the input list, either the Type newly defined or a pre-existing Type in case a Type with the given name already exists, followed by any other types defined as a result of this call.
      Specified by:
      define in interface TypeHelper
      Parameters:
      types - a List of DataObjects representing the Types.
      Returns:
      the defined Types.
    • getXSDTypeFromSDOType

      public QName getXSDTypeFromSDOType(Type aType)
      Description copied from interface: SDOTypeHelper
      INTERNAL:
      Specified by:
      getXSDTypeFromSDOType in interface SDOTypeHelper
      Returns:
    • getSDOTypeFromXSDType

      public SDOType getSDOTypeFromXSDType(QName aName)
      Description copied from interface: SDOTypeHelper
      INTERNAL:
      Specified by:
      getSDOTypeFromXSDType in interface SDOTypeHelper
      Returns:
    • setTypesHashMap

      public void setTypesHashMap(Map typesHashMap)
      Description copied from interface: SDOTypeHelper
      INTERNAL:
      Specified by:
      setTypesHashMap in interface SDOTypeHelper
    • getTypesHashMap

      public Map getTypesHashMap()
      Description copied from interface: SDOTypeHelper
      INTERNAL:
      Specified by:
      getTypesHashMap in interface SDOTypeHelper
      Returns:
    • getWrappersHashMap

      public Map getWrappersHashMap()
      INTERNAL: Return the map of Wrapper objects (SDOWrapperTypes that wrap a primitive document).
      Specified by:
      getWrappersHashMap in interface SDOTypeHelper
      Returns:
      a HashMap of SDOWrapperTypes, keyed on the XSD type that it wraps.
    • setWrappersHashMap

      public void setWrappersHashMap(Map aMap)
      INTERNAL: Set the map of Wrapper objects (SDOWrapperTypes that wrap a primitive document).
      Specified by:
      setWrappersHashMap in interface SDOTypeHelper
      Parameters:
      aMap - a HashMap of SDOWrapperTypes, keyed on the XSD type that it wraps.
    • reset

      public void reset()
      Description copied from interface: SDOTypeHelper
      INTERNAL:
      Specified by:
      reset in interface SDOTypeHelper
    • defineOpenContentProperty

      public Property defineOpenContentProperty(String uri, DataObject property)
      Description copied from interface: TypeHelper
      Define the DataObject as a Property for setting open content. The containing Type of the open content property is not specified by SDO. If the specified uri is not null the defined property is accessible through TypeHelper.getOpenContentProperty(uri, propertyName). If a null uri is specified, the location and management of the open content property is not specified by SDO.
      Specified by:
      defineOpenContentProperty in interface TypeHelper
      Parameters:
      uri - the namespace URI of the open content Property or null.
      Returns:
      the defined open content Property.
    • getOpenContentProperty

      public Property getOpenContentProperty(String uri, String propertyName)
      Description copied from interface: TypeHelper
      Get the open content (global) Property with the specified uri and name, or null if not found. If the Schema name of the Property is different than its SDO name, only the SDO name is used for the lookup.
      If null or "" is passed as the value of the uri parameter, then a Property with no URI will be returned. (for example, a property mapped from a global element in an XSD with no target namespace)
      Specified by:
      getOpenContentProperty in interface TypeHelper
      Parameters:
      uri - the namespace URI of the open content Property.
      propertyName - the name of the open content Property.
      Returns:
      the global Property.
    • getTypeHelperDelegate

      public SDOTypeHelperDelegate getTypeHelperDelegate()
    • addNamespace

      public String addNamespace(String prefix, String uri)
      INTERNAL: Add the given namespace uri and prefix to the global namespace resolver.
      Specified by:
      addNamespace in interface SDOTypeHelper
    • getPrefix

      public String getPrefix(String uri)
      INTERNAL: Return the prefix for the given uri, or generate a new one if necessary
      Specified by:
      getPrefix in interface SDOTypeHelper
    • getNamespaceResolver

      public NamespaceResolver getNamespaceResolver()
      INTERNAL: Return the NamespaceResolver
      Specified by:
      getNamespaceResolver in interface SDOTypeHelper
    • getOpenContentProperties

      public Map getOpenContentProperties()
      INTERNAL: Return the Map of Open Content Properties
      Specified by:
      getOpenContentProperties in interface SDOTypeHelper
    • addWrappersToProject

      public void addWrappersToProject(Project toplinkProject)
      Specified by:
      addWrappersToProject in interface SDOTypeHelper
    • getInterfacesToSDOTypeHashMap

      public Map getInterfacesToSDOTypeHashMap()
      Specified by:
      getInterfacesToSDOTypeHashMap in interface SDOTypeHelper
    • getImplClassesToSDOType

      public Map<Class,SDOType> getImplClassesToSDOType()
      Specified by:
      getImplClassesToSDOType in interface SDOTypeHelper
    • getAnonymousTypes

      public List getAnonymousTypes()
      Specified by:
      getAnonymousTypes in interface SDOTypeHelper