Queryable findQueryableUsingImports(String className) { final String importedClassName = sfi.getImportedClassName( className ); if ( importedClassName == null ) { return null; } try { return ( Queryable ) sfi.getEntityPersister( importedClassName ); } catch ( MappingException me ) { return null; } }
private void readObject(ObjectInputStream ois) throws IOException, ClassNotFoundException { ois.defaultReadObject(); persister = session.getFactory() .getEntityPersister( entityName ); }
private void readObject(ObjectInputStream ois) throws IOException, ClassNotFoundException { ois.defaultReadObject(); persister = session.getFactory().getEntityPersister( entityName ); }
public Set getQuerySpaces() { Set result = new HashSet(); Iterator iter = criteriaEntityNames.values().iterator(); while ( iter.hasNext() ) { String entityName = ( String ) iter.next(); result.addAll( Arrays.asList( getFactory().getEntityPersister( entityName ).getQuerySpaces() ) ); } return result; }
public Set getQuerySpaces() { Set result = new HashSet(); Iterator iter = criteriaEntityNames.values().iterator(); while ( iter.hasNext() ) { String entityName = (String) iter.next(); result.addAll( Arrays.asList( getFactory().getEntityPersister(entityName).getQuerySpaces() ) ); } return result; }
public Object destructure(Object item, SessionFactoryImplementor factory) { Map map = (Map) item; boolean lazyPropertiesUnfetched = ( (Boolean) map.get("_lazyPropertiesUnfetched") ).booleanValue(); String subclass = (String) map.get("_subclass"); EntityPersister subclassPersister = factory.getEntityPersister(subclass); String[] names = subclassPersister.getPropertyNames(); Serializable[] state = new Serializable[names.length]; for ( int i=0; i<names.length; i++ ) { state[i] = (Serializable) map.get( names[i] ); } return new CacheEntry(state, subclass, lazyPropertiesUnfetched); }
private EntityPersister getEntityPersister(final Class entityClass) { ClassMetadata classMetadata = factoryImplementor.getClassMetadata(entityClass); String name = classMetadata.getEntityName(); if(name == null) { throw new RuntimeException("No entity persister found for class " + entityClass); } return factoryImplementor.getEntityPersister(name); } }
private EntityMode getEntityMode(Criteria criteria, CriteriaQuery criteriaQuery) { EntityPersister meta = criteriaQuery.getFactory() .getEntityPersister( criteriaQuery.getEntityName(criteria) ); EntityMode result = meta.guessEntityMode(entity); if (result==null) { throw new ClassCastException( entity.getClass().getName() ); } return result; }
Queryable getEntityPersister(String entityName) throws QueryException { try { return ( Queryable ) getFactory().getEntityPersister( entityName ); } catch ( Exception e ) { throw new QueryException( "persistent class not found: " + entityName ); } }
Queryable getEntityPersister(String entityName) throws QueryException { try { return ( Queryable ) getFactory().getEntityPersister( entityName ); } catch ( Exception e ) { throw new QueryException( "persistent class not found: " + entityName ); } }
public void postInstantiate() { super.postInstantiate(); if (hasSequentialSelects) { String[] entityNames = getSubclassClosure(); for ( int i=1; i<entityNames.length; i++ ) { Loadable loadable = (Loadable) getFactory().getEntityPersister( entityNames[i] ); String sequentialSelect = generateSequentialSelect(loadable); sequentialSelectStringsByEntityName.put( entityNames[i], sequentialSelect ); } } }
public Object instantiate( String entityName, Serializable id) throws HibernateException { errorIfClosed(); return getFactory().getEntityPersister( entityName ) .instantiate( id, EntityMode.POJO ); }
Queryable getEntityPersisterUsingImports(String className) { final String importedClassName = getFactory().getImportedClassName( className ); if ( importedClassName == null ) { return null; } try { return ( Queryable ) getFactory().getEntityPersister( importedClassName ); } catch ( MappingException me ) { return null; } }
public Object get(String entityName, Serializable id, LockMode lockMode) { errorIfClosed(); Object result = getFactory().getEntityPersister(entityName) .load(id, null, lockMode, this); temporaryPersistenceContext.clear(); return result; }
/** * Associate a proxy that was instantiated by another session with this session */ private void reassociateProxy(LazyInitializer li, HibernateProxy proxy) throws HibernateException { if ( li.getSession() != this ) { EntityPersister persister = session.getFactory().getEntityPersister( li.getEntityName() ); EntityKey key = new EntityKey( li.getIdentifier(), persister, session.getEntityMode() ); if ( !proxiesByKey.containsKey(key) ) proxiesByKey.put(key, proxy); // any earlier proxy takes precedence proxy.getHibernateLazyInitializer().setSession(session); } }
public int getHashCode(Object x, EntityMode entityMode, SessionFactoryImplementor factory) { EntityPersister persister = factory.getEntityPersister(associatedEntityName); if ( !persister.hasIdentifierPropertyOrEmbeddedCompositeIdentifier() ) { return super.getHashCode(x, entityMode); } if (x instanceof HibernateProxy) { return ( (HibernateProxy) x ).getHibernateLazyInitializer().getIdentifier().hashCode(); } Serializable id = persister.getIdentifier(x, entityMode); return persister.getIdentifierType().getHashCode(id, entityMode, factory); }
private EntityLoader createUniqueKeyLoader(Type uniqueKeyType, String[] columns, Map enabledFilters) { if ( uniqueKeyType.isEntityType() ) { String className = ( ( EntityType ) uniqueKeyType ).getAssociatedEntityName(); uniqueKeyType = getFactory().getEntityPersister( className ).getIdentifierType(); } return new EntityLoader( this, columns, uniqueKeyType, 1, LockMode.NONE, getFactory(), enabledFilters ); }
public boolean isNull(Object owner, SessionImplementor session) { if ( propertyName != null ) { EntityPersister ownerPersister = session.getFactory().getEntityPersister(entityName); Serializable id = session.getEntityIdentifier(owner); EntityKey entityKey = new EntityKey( id, ownerPersister, session.getEntityMode() ); return session.getPersistenceContext().isPropertyNull( entityKey, getPropertyName() ); } else { return false; } }
/** * Register the entity as batch loadable, if enabled */ private void scheduleBatchLoad(Serializable id, SessionImplementor session) throws MappingException { if (uniqueKeyPropertyName==null) { //cannot batch fetch by unique key EntityPersister persister = session.getFactory() .getEntityPersister( getAssociatedEntityName() ); session.getPersistenceContext() .getBatchFetchQueue() .addBatchLoadableEntityKey( new EntityKey( id, persister, session.getEntityMode() ) ); } }
/** * Return the underlying persistent object in the given <tt>Session</tt>, or null, * do not initialize the proxy */ public final Object getImplementation(SessionImplementor s) throws HibernateException { return s.getPersistenceContext().getEntity( new EntityKey( getIdentifier(), s.getFactory().getEntityPersister( getEntityName() ), s.getEntityMode() ) ); }