List of usage examples for org.hibernate.type CollectionType UNFETCHED_COLLECTION
Object UNFETCHED_COLLECTION
To view the source code for org.hibernate.type CollectionType UNFETCHED_COLLECTION.
Click Source Link
From source file:com.miranteinfo.seam.hibernate.HibernateCascade.java
License:Open Source License
/** * Cascade to the collection elements//from w w w .j ava 2s .c o m */ private void cascadeCollectionElements(final Object child, final CollectionType collectionType, final CascadeStyle style, final Type elemType, final Object anything, final boolean isCascadeDeleteEnabled) throws HibernateException { // we can't cascade to non-embedded elements boolean embeddedElements = eventSource.getEntityMode() != EntityMode.DOM4J || ((EntityType) collectionType.getElementType(eventSource.getFactory())).isEmbeddedInXML(); boolean reallyDoCascade = style.reallyDoCascade(action) && embeddedElements && child != CollectionType.UNFETCHED_COLLECTION; if (reallyDoCascade) { if (log.isTraceEnabled()) { log.trace("cascade " + action + " for collection: " + collectionType.getRole()); } Iterator iter = action.getCascadableChildrenIterator(eventSource, collectionType, child); while (iter.hasNext()) { cascadeProperty(iter.next(), elemType, style, anything, isCascadeDeleteEnabled); } if (log.isTraceEnabled()) { log.trace("done cascade " + action + " for collection: " + collectionType.getRole()); } } final boolean deleteOrphans = hasOrphanDelete(style) && action.deleteOrphans() && elemType.isEntityType() && child instanceof PersistentCollection; //a newly instantiated collection can't have orphans if (deleteOrphans) { // handle orphaned entities!! if (log.isTraceEnabled()) { log.trace("deleting orphans for collection: " + collectionType.getRole()); } // we can do the cast since orphan-delete does not apply to: // 1. newly instantiated collections // 2. arrays (we can't track orphans for detached arrays) final String entityName = collectionType.getAssociatedEntityName(eventSource.getFactory()); deleteOrphans(entityName, (PersistentCollection) child); if (log.isTraceEnabled()) { log.trace("done deleting orphans for collection: " + collectionType.getRole()); } } }
From source file:org.eclipse.emf.cdo.server.internal.hibernate.tuplizer.CDOManyAttributeGetter.java
License:Open Source License
@Override public Object get(Object target) throws HibernateException { // Check if there is already a persistentcollection PersistentCollection collection = PersistableListHolder.getInstance().getListMapping(target, getEStructuralFeature());// www . j a va 2 s . c o m if (collection != null) { return collection; } InternalCDORevision revision = (InternalCDORevision) target; CDOList list = revision.getList(getEStructuralFeature(), 10); if (list instanceof WrappedHibernateList) { final WrappedHibernateList wrappedHibernateList = (WrappedHibernateList) list; if (((WrappedHibernateList) list).isUninitializedCollection()) { return CollectionType.UNFETCHED_COLLECTION; } final Object delegate = wrappedHibernateList.getDelegate(); if (delegate instanceof PersistentCollection) { return delegate; } } // Wrap the moveablearraylist HibernateMoveableListWrapper wrapper = new HibernateMoveableListWrapper(); wrapper.setEFeature(getEStructuralFeature()); wrapper.setDelegate(list); // And return it return wrapper; }
From source file:org.eclipse.emf.cdo.server.internal.hibernate.tuplizer.CDOManyReferenceGetter.java
License:Open Source License
@Override public Object get(Object target) throws HibernateException { // Check if there is already a persistentcollection PersistentCollection collection = PersistableListHolder.getInstance().getListMapping(target, getEStructuralFeature());//from w w w. j a v a 2 s . c om if (collection != null) { return collection; } InternalCDORevision revision = (InternalCDORevision) target; CDOList list = revision.getList(getEStructuralFeature(), 10); if (list instanceof WrappedHibernateList) { final WrappedHibernateList wrappedHibernateList = (WrappedHibernateList) list; if (wrappedHibernateList.isUninitializedCollection()) { return CollectionType.UNFETCHED_COLLECTION; } final Object delegate = wrappedHibernateList.getDelegate(); if (delegate instanceof PersistentCollection) { return delegate; } } // Wrap the moveablearraylist HibernateMoveableListWrapper wrapper = new HibernateMoveableListWrapper(); wrapper.setEFeature(getEStructuralFeature()); wrapper.setDelegate(list); // And return it return wrapper; }