Class persisterClass = model.getEntityPersisterClass();
if ( persisterClass == null || persisterClass == SingleTableEntityPersister.class ) {
return new SingleTableEntityPersister( model, cacheAccessStrategy, factory, cfg );
}
else if ( persisterClass == JoinedSubclassEntityPersister.class ) {
return new JoinedSubclassEntityPersister( model, cacheAccessStrategy, factory, cfg );
}
else if ( persisterClass == UnionSubclassEntityPersister.class ) {
return new UnionSubclassEntityPersister( model, cacheAccessStrategy, factory, cfg );
}
else {