Dali Provisional API
Release 3.2

org.eclipse.jpt.jpa.eclipselink.core.jpql.spi
Class EclipseLinkDynamicManagedType

java.lang.Object
  extended by org.eclipse.jpt.jpa.eclipselink.core.jpql.spi.EclipseLinkDynamicManagedType
Direct Known Subclasses:
EclipseLinkDynamicEmbeddable, EclipseLinkDynamicEntity, EclipseLinkDynamicMappedSuperclass

public abstract class EclipseLinkDynamicManagedType
extends Object

The abstract implementation of a IManagedType that supports a dynamic managed type. Provisional API: This interface is part of an interim API that is still under development and expected to change significantly before reaching stability. It is available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.

Since:
3.2

Constructor Summary
EclipseLinkDynamicManagedType(JpaManagedTypeProvider provider, JpaManagedType delegate)
          Creates a new EclipseLinkDynamicManagedType.
 
Method Summary
protected  EclipseLinkDynamicType buildDynamicType()
          Creates a IType that supports dynamic type, which means the type cannot be found in the project but is only in memory.
protected  EclipseLinkDynamicMapping buildMapping(EclipseLinkMapping mapping)
          Creates the external form that needs to wrap the given AttributeMapping.
protected  Map<String,EclipseLinkDynamicMapping> buildMappings()
          Creates an external form for each AttributeMapping and stores them by using their mapping name.
 int compareTo(IManagedType managedType)
          
 JpaManagedType getDelegate()
          Returns the default implementation of IManagedType that is wrapped by this one.
 IMapping getMappingNamed(String name)
          
 JpaManagedTypeProvider getProvider()
          
 IType getType()
          
protected  void initializeMappings()
          Initializes this managed type.
 Iterable<IMapping> mappings()
          
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EclipseLinkDynamicManagedType

public EclipseLinkDynamicManagedType(JpaManagedTypeProvider provider,
                                     JpaManagedType delegate)
Creates a new EclipseLinkDynamicManagedType.

Parameters:
provider - The provider of JPA managed types
delegate - The default implementation of IManagedType
Method Detail

buildDynamicType

protected EclipseLinkDynamicType buildDynamicType()
Creates a IType that supports dynamic type, which means the type cannot be found in the project but is only in memory.

Returns:
A new EclipseLinkDynamicType

buildMapping

protected EclipseLinkDynamicMapping buildMapping(EclipseLinkMapping mapping)
Creates the external form that needs to wrap the given AttributeMapping. By default, the call is delegated to IMappingBuilder.

Parameters:
mapping - The mapping to wrap with a IMapping
Returns:
A new concrete instance of IMapping

buildMappings

protected Map<String,EclipseLinkDynamicMapping> buildMappings()
Creates an external form for each AttributeMapping and stores them by using their mapping name.

Returns:
The mappings mapped by their name

compareTo

public int compareTo(IManagedType managedType)


getDelegate

public JpaManagedType getDelegate()
Returns the default implementation of IManagedType that is wrapped by this one.

Returns:
The actual JpaManagedType

getMappingNamed

public IMapping getMappingNamed(String name)


getProvider

public JpaManagedTypeProvider getProvider()


getType

public IType getType()


initializeMappings

protected void initializeMappings()
Initializes this managed type.


mappings

public Iterable<IMapping> mappings()


Dali Provisional API
Release 3.2

Copyright (c) 2012 Oracle. All rights reserved.