List of usage examples for org.hibernate.persister.entity UnionSubclassEntityPersister getRootEntityName
public String getRootEntityName()
From source file:com.blazebit.persistence.integration.hibernate.base.HibernateJpaProvider.java
License:Apache License
@Override public boolean isColumnShared(EntityType<?> ownerType, String attributeName) { AbstractEntityPersister persister = getEntityPersister(ownerType); if (!(persister instanceof SingleTableEntityPersister) && !(persister instanceof UnionSubclassEntityPersister)) { return false; }/*from ww w . j av a 2 s . c om*/ if (persister instanceof SingleTableEntityPersister) { SingleTableEntityPersister singleTableEntityPersister = (SingleTableEntityPersister) persister; SingleTableEntityPersister rootPersister = (SingleTableEntityPersister) entityPersisters .get(singleTableEntityPersister.getRootEntityName()); return isColumnShared(singleTableEntityPersister, rootPersister.getName(), rootPersister.getSubclassClosure(), attributeName); } else if (persister instanceof UnionSubclassEntityPersister) { UnionSubclassEntityPersister unionSubclassEntityPersister = (UnionSubclassEntityPersister) persister; UnionSubclassEntityPersister rootPersister = (UnionSubclassEntityPersister) entityPersisters .get(unionSubclassEntityPersister.getRootEntityName()); return isColumnShared(unionSubclassEntityPersister, rootPersister.getName(), rootPersister.getSubclassClosure(), attributeName); } return false; }