java.lang.Object
org.eclipse.persistence.dynamic.DynamicHelper
- Direct Known Subclasses:
JPADynamicHelper
A DynamicHelper provides some utility methods to simplify application
development with dynamic types. Since the application does not have static
references to the dynamic types it must use entity names. This helper
provides simplified access to methods that would typically require the static
classes.
- Since:
- EclipseLink 1.2
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
A SessionCustomizer which configures all descriptors as dynamic entity types. -
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addTypes
(boolean createMissingTables, boolean generateFKConstraints, DynamicType... types) Add one or more EntityType instances to a session and optionally generate needed tables with or without FK constraints.Lookup the dynamic type for an alias.static DynamicType
getType
(ClassDescriptor descriptor) static DynamicType
getType
(DynamicEntity entity) Provide access to the entity's type.newDynamicEntity
(String typeName) newReadAllQuery
(String typeName) Helper method to simplify creating a native ReadAllQuery using the entity type name (descriptor alias)newReadObjectQuery
(String typeName) Helper method to simplify creating a native ReadObjectQuery using the entity type name (descriptor alias)newReportQuery
(String typeName, ExpressionBuilder builder) Helper method to simplify creating a native ReportQuery using the entity type name (descriptor alias)void
removeType
(String typeName) Remove a dynamic type from the system.
-
Field Details
-
session
-
fqClassnameToDescriptor
-
-
Constructor Details
-
DynamicHelper
-
-
Method Details
-
getSession
-
getType
Lookup the dynamic type for an alias. This is required to get the type for factory creation but can also be used to provide the application with access to the meta model (type and properties) allowing for dynamic use as well as optimized data value retrieval from an entity. -
getType
-
getType
Provide access to the entity's type.- Throws:
ClassCastException
- if entity is not an instance ofDynamicEntityImpl
-
removeType
Remove a dynamic type from the system. This implementation assumes that the dynamic type has no relationships to it and that it is not involved in an inheritance relationship. If there are concurrent processes using this type when it is removed some exceptions may occur. -
newDynamicEntity
-
newReadAllQuery
Helper method to simplify creating a native ReadAllQuery using the entity type name (descriptor alias) -
newReadObjectQuery
Helper method to simplify creating a native ReadObjectQuery using the entity type name (descriptor alias) -
newReportQuery
Helper method to simplify creating a native ReportQuery using the entity type name (descriptor alias) -
getDynamicClassLoader
-
addTypes
public void addTypes(boolean createMissingTables, boolean generateFKConstraints, DynamicType... types) Add one or more EntityType instances to a session and optionally generate needed tables with or without FK constraints.
-