Package org.eigenbase.enki.hibernate

Contains Hibernate-specific implementations of various Enki interfaces.


Class Summary
HibernateMassDeletionUtil HibernateMassDeletionUtil is a utility class that implements deleting a number of RefObject instances in the most efficient manner possible by utilizing special knowledge of internal Enki/Hibernate data structures.
HibernateMDRepository HibernateMDRepository implements MDRepository and EnkiMDRepository for Hibernate-based metamodel storage.
HibernateMDRepository.ExtentDescriptor ExtentDescriptor describes an instantiated model extent.
HibernateMDRepository.MdrSessionStack MdrSessionStack maintains a thread-local stack of HibernateMDRepository.MdrSession instances.
HibernateMDRepository.ModelDescriptor ModelDescriptor describes a meta-model.
HibernateMDRepository.ModelPluginDescriptor ModelPluginDescriptor describes a meta-model plug-in
HibernateMDRepository.ModelPropertiesComparator ModelPropertiesComparator sorts model Properties objects by their plug-in flag.

Exception Summary
EnkiHibernateException EnkiHibernateException is thrown for runtime errors within the Hibernate sub-system of Enki.

Package org.eigenbase.enki.hibernate Description

Contains Hibernate-specific implementations of various Enki interfaces.

This implementation supports custom MOF Tags for controlling some aspects of code generation.

MOF Tags
Name Description
org.eigenbase.enki.maxLength Controls the maximum length for a string attribute. It may be applied to a simple string attribute, a string collection attribute, or to an entire class. Values of the tag applied to an attribute take precedence over the class's value even if the attribute is inherited from a supertype. Values of the tag applied to a class apply to all to all untagged string attributes in the class. Subclasses inherit the value. The value must be an integer greater than 0 or the special value "unlimited." Lengths greater than 32768 use the Hibernate "text" type.
org.eigenbase.enki.transientPackage Controls whether a package is considered transient (not persisted to database). If this tag appears on a package, with any value, the package and its contents (including other packages) are considered transient.
org.eigenbase.enki.lazyAssociation Controls whether an association is loaded via Enki's lazy association mechanism. This differs from normal Hibernate laziness and is useful for especially large collections.

The sample model distributed with Enki contains examples of these tags.

Revision $Id: //open/enki/src/org/eigenbase/enki/hibernate/package.html#5 $
Copyright Copyright (C) 2007-2007 The Eigenbase Project
Copyright (C) 2007-2007 Disruptive Tech
Copyright (C) 2007-2007 LucidEra, Inc.
Author Stephan Zuercher