Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Hibernate, Relational Persistence for Idiomatic Java
   *
   * JBoss, Home of Professional Open Source
   * Copyright 2011 Red Hat Inc. and/or its affiliates and other contributors
   * as indicated by the @authors tag. All rights reserved.
   * See the copyright.txt in the distribution for a
   * full listing of individual contributors.
   *
  * This copyrighted material is made available to anyone wishing to use,
  * modify, copy, or redistribute it subject to the terms and conditions
  * of the GNU Lesser General Public License, v. 2.1.
  * This program is distributed in the hope that it will be useful, but WITHOUT A
  * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
  * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
  * You should have received a copy of the GNU Lesser General Public License,
  * v.2.1 along with this distribution; if not, write to the Free Software
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
  * MA  02110-1301, USA.
  */
 package org.hibernate.search.query.hibernate.impl;
 
 import java.util.List;
 
 

Author(s):
Emmanuel Bernard <emmanuel@hibernate.org>
 
 	private static final Log log = LoggerFactory.make();
 	private final ObjectsInitializer delegate;
 
 		this. = delegate;
 	}
 
 	public void initializeObjects(EntityInfo[] entityInfos,
 										 Criteria criteriaClass<?> entityType,
 										 SearchFactoryImplementor searchFactoryImplementor,
 										 TimeoutManager timeoutManager,
 										 Session session) {
 		//Do not call isTimeOut here as the caller might be the last biggie on the list.
 		final int maxResults = entityInfos.length;
 		if ( maxResults == 0 ) {
 			if ( .isTraceEnabled() ) {
 				.tracef"No object to initialize"maxResults );
 			}
 			return;
 		}
 
 		SessionImplementor sessionImplementor = (SessionImplementorsession;
 		String entityName = session.getSessionFactory().getClassMetadataentityType ).getEntityName();
 		EntityPersister persister = sessionImplementor.getFactory().getEntityPersisterentityName );
 		PersistenceContext persistenceContext = sessionImplementor.getPersistenceContext();
 
 		//check the persistence context
 		List<EntityInforemainingEntityInfos = new ArrayList<EntityInfo>( maxResults );
 		for ( EntityInfo entityInfo : entityInfos ) {
 			if ( ObjectLoaderHelper.areDocIdAndEntityIdIdenticalentityInfosession ) ) {
 				EntityKey entityKey = new EntityKeyentityInfo.getId(), persistersession.getTenantIdentifier() );
 				final boolean isInitialized = persistenceContext.containsEntityentityKey );
 				if ( !isInitialized ) {
 					remainingEntityInfos.addentityInfo );
 				}
 			}
 			else {
 				//if document id !=  entity id we can't use PC lookup
 				remainingEntityInfos.addentityInfo );
 			}
 		}
 		//update entityInfos to only contains the remaining ones
 		final int remainingSize = remainingEntityInfos.size();
 		if ( .isTraceEnabled() ) {
 			.tracef"Initialized %d objects out of %d in the persistence context"maxResults - remainingSizemaxResults );
 		}
 		if (remainingSize > 0) {
 					remainingEntityInfos.toArraynew EntityInfo[remainingSize] ),
 					criteria,
 					entityType,
 					searchFactoryImplementor,
 					timeoutManager,
 					session
 			);
 		}
 	}
New to GrepCode? Check out our FAQ X