if (obj!=null) { clone = (Custom) obj.clone(); TwoPhaseLoad.addUninitializedEntity( session.generateEntityKey( id, this ), clone, session ); TwoPhaseLoad.postHydrate( this, id, new String[] { obj.getName() }, session ); TwoPhaseLoad.initializeEntity( clone, false, new PreLoadEvent( (EventSource) session ) ); TwoPhaseLoad.afterInitialize( clone, session ); TwoPhaseLoad.postLoad( clone, session, new PostLoadEvent( (EventSource) session ) );
private void makeEntityCircularReferenceSafe( ReferenceCacheEntryImpl referenceCacheEntry, EventSource session, Object entity, EntityKey entityKey) { // make it circular-reference safe final StatefulPersistenceContext statefulPersistenceContext = (StatefulPersistenceContext) session.getPersistenceContext(); if ( ( entity instanceof ManagedEntity ) ) { statefulPersistenceContext.addReferenceEntry( entity, Status.READ_ONLY ); } else { TwoPhaseLoad.addUninitializedCachedEntity( entityKey, entity, referenceCacheEntry.getSubclassPersister(), LockMode.NONE, referenceCacheEntry.getVersion(), session ); } statefulPersistenceContext.initializeNonLazyCollections(); }
LOG.tracev( "Total objects hydrated: {0}", hydratedObjectsSize ); for ( Object hydratedObject : hydratedObjects ) { TwoPhaseLoad.initializeEntity( hydratedObject, readOnly, session, pre ); TwoPhaseLoad.afterInitialize( hydratedObject, session ); TwoPhaseLoad.postLoad( hydratedObject, session, post ); if ( afterLoadActions != null ) { for ( AfterLoadAction afterLoadAction : afterLoadActions ) {
TwoPhaseLoad.addUninitializedEntity( key, object, TwoPhaseLoad.postHydrate( persister, id,
private void performTwoPhaseLoad( PreLoadEvent preLoadEvent, ResultSetProcessingContextImpl context, List<HydratedEntityRegistration> hydratedEntityRegistrations) { final int numberOfHydratedObjects = hydratedEntityRegistrations == null ? 0 : hydratedEntityRegistrations.size(); log.tracev( "Total objects hydrated: {0}", numberOfHydratedObjects ); if ( hydratedEntityRegistrations == null ) { return; } for ( HydratedEntityRegistration registration : hydratedEntityRegistrations ) { TwoPhaseLoad.initializeEntity( registration.getInstance(), context.isReadOnly(), context.getSession(), preLoadEvent ); } }
TwoPhaseLoad.initializeEntity( hydratedObjects.get( i ), readOnly, session, pre ); TwoPhaseLoad.postLoad( hydratedObject, session, post );
session.getTimestamp(), version, useMinimalPuts( session, entityEntry ) );
for ( int i = 0; i < hydratedState.length; i++ ) { final Object value = hydratedState[i]; Boolean overridingEager = getOverridingEager( session, entityName, propertyNames[i], types[i] ); if ( value == LazyPropertyInitializer.UNFETCHED_PROPERTY ) { persister.getCacheEntryStructure().structure( entry ), version, useMinimalPuts( session, entityEntry ) );
private void postLoad( PostLoadEvent postLoadEvent, ResultSetProcessingContextImpl context, List<HydratedEntityRegistration> hydratedEntityRegistrations, List<AfterLoadAction> afterLoadActionList) { // Until this entire method is refactored w/ polymorphism, postLoad was // split off from initializeEntity. It *must* occur after // endCollectionLoad to ensure the collection is in the // persistence context. if ( hydratedEntityRegistrations == null ) { return; } for ( HydratedEntityRegistration registration : hydratedEntityRegistrations ) { TwoPhaseLoad.postLoad( registration.getInstance(), context.getSession(), postLoadEvent ); if ( afterLoadActionList != null ) { for ( AfterLoadAction afterLoadAction : afterLoadActionList ) { afterLoadAction.afterLoad( context.getSession(), registration.getInstance(), (Loadable) registration.getEntityReference().getEntityPersister() ); } } } }
private void afterInitialize(ResultSetProcessingContextImpl context, List<HydratedEntityRegistration> hydratedEntityRegistrations) { if ( hydratedEntityRegistrations == null ) { return; } for ( HydratedEntityRegistration registration : hydratedEntityRegistrations ) { TwoPhaseLoad.afterInitialize( registration.getInstance(), context.getSession() ); } }
TwoPhaseLoad.addUninitializedEntity( entityKey, entityInstance, TwoPhaseLoad.postHydrate( concreteEntityPersister, id,
LOG.tracev( "Total objects hydrated: {0}", hydratedObjectsSize ); for ( int i = 0; i < hydratedObjectsSize; i++ ) { TwoPhaseLoad.initializeEntity( hydratedObjects.get(i), readOnly, session, pre, post );
session.getTimestamp(), version, useMinimalPuts( session, entityEntry ) );
TwoPhaseLoad.addUninitializedEntity( key, object, TwoPhaseLoad.postHydrate( persister, id,
TwoPhaseLoad.addUninitializedCachedEntity( entityKey, entity,
LOG.tracev( "Total objects hydrated: {0}", hydratedObjectsSize ); for ( int i = 0; i < hydratedObjectsSize; i++ ) { TwoPhaseLoad.initializeEntity( hydratedObjects.get(i), readOnly, session, pre, post );
TwoPhaseLoad.addUninitializedEntity( key, object, TwoPhaseLoad.postHydrate( persister, id,
private void makeEntityCircularReferenceSafe( ReferenceCacheEntryImpl referenceCacheEntry, EventSource session, Object entity, EntityKey entityKey) { // make it circular-reference safe final StatefulPersistenceContext statefulPersistenceContext = (StatefulPersistenceContext) session.getPersistenceContext(); if ( ( entity instanceof ManagedEntity ) ) { statefulPersistenceContext.addReferenceEntry( entity, Status.READ_ONLY ); } else { TwoPhaseLoad.addUninitializedCachedEntity( entityKey, entity, referenceCacheEntry.getSubclassDescriptor(), LockMode.NONE, referenceCacheEntry.getVersion(), session ); } statefulPersistenceContext.initializeNonLazyCollections(); }
TwoPhaseLoad.addUninitializedEntity( key, object, TwoPhaseLoad.postHydrate( persister, id,
TwoPhaseLoad.addUninitializedCachedEntity( entityKey, result,