/** * @deprecated (since 5.2) Use {@link MetamodelImplementor#collectionPersisters} instead. */ @Deprecated default Map<String, CollectionPersister> getCollectionPersisters() { return getMetamodel().collectionPersisters(); }
public Set<Serializable> getQuerySpaces() { Set<Serializable> result = new HashSet<>(); for ( CriteriaInfoProvider info : criteriaInfoMap.values() ) { result.addAll( Arrays.asList( info.getSpaces() ) ); } for ( final Map.Entry<String, Criteria> entry : associationPathCriteriaMap.entrySet() ) { String path = entry.getKey(); CriteriaImpl.Subcriteria crit = (CriteriaImpl.Subcriteria) entry.getValue(); int index = path.lastIndexOf( '.' ); if ( index > 0 ) { path = path.substring( index + 1, path.length() ); } CriteriaInfoProvider info = criteriaInfoMap.get( crit.getParent() ); CollectionPersister persister = getFactory().getMetamodel().collectionPersisters().get( info.getName() + "." + path ); if ( persister != null ) { result.addAll( Arrays.asList( persister.getCollectionSpaces() ) ); } } return result; }
@Override public Map getAllCollectionMetadata() throws HibernateException { try { final Map<String, CollectionMetadata> map = new HashMap<>(); for (final Object entryObj : getSessionFactoryV5().getMetamodel().collectionPersisters().entrySet()) { final Map.Entry<String, org.hibernate.metadata.CollectionMetadata> entry = (Map.Entry<String, org.hibernate.metadata.CollectionMetadata>) entryObj; map.put(entry.getKey(), CollectionMetadataV2Adapter.adapt(entry.getValue(), getSessionFactoryV5())); } return map; } catch (final PersistenceException ex) { throw HibernateExceptionAdapter.adapt(ex); } }
@Override public Set<AssociationKeyMetadata> getAllAssociationKeyMetadata() { Set<AssociationKeyMetadata> allAssociationKeyMetadata = new HashSet<>(); for ( CollectionPersister associationPersister : factory.getMetamodel().collectionPersisters().values() ) { allAssociationKeyMetadata.add( ( (OgmCollectionPersister) associationPersister ).getAssociationKeyMetadata() ); } for ( EntityPersister entityPersister : factory.getMetamodel().entityPersisters().values() ) { for ( String property : entityPersister.getPropertyNames() ) { AssociationKeyMetadata inverseOneToOneAssociationKeyMetadata = ( (OgmEntityPersister) entityPersister ).getInverseOneToOneAssociationKeyMetadata( property ); if ( inverseOneToOneAssociationKeyMetadata != null ) { allAssociationKeyMetadata.add( inverseOneToOneAssociationKeyMetadata ); } } } return allAssociationKeyMetadata; }
MetamodelImplementor metamodelImplementor = sessionFactoryImplementor.getMetamodel(); Iterator<?> collectionIterator = metamodelImplementor.collectionPersisters().values().iterator();
protected Map<AssociationKeyMetadata, A> initializeAssociationQueries( SessionFactoryImplementor sessionFactoryImplementor) { Map<AssociationKeyMetadata, A> queryMap = new HashMap<AssociationKeyMetadata, A>(); Collection<CollectionPersister> collectionPersisters = sessionFactoryImplementor.getMetamodel().collectionPersisters().values(); for ( CollectionPersister collectionPersister : collectionPersisters ) { if ( collectionPersister instanceof OgmCollectionPersister ) { OgmCollectionPersister ogmCollectionPersister = (OgmCollectionPersister) collectionPersister; OgmEntityPersister ogmEntityPersister = (OgmEntityPersister) ( ogmCollectionPersister.getOwnerEntityPersister() ); EntityKeyMetadata ownerEntityKeyMetadata = ogmEntityPersister.getEntityKeyMetadata(); ownerEntityKeyMetadata = entityKeyMetadata( ogmEntityPersister ); AssociationKeyMetadata associationKeyMetadata = ogmCollectionPersister.getAssociationKeyMetadata(); A createNeo4jAssociationQueries = createNeo4jAssociationQueries( ownerEntityKeyMetadata, associationKeyMetadata ); queryMap.put( associationKeyMetadata, createNeo4jAssociationQueries ); } } return queryMap; }
private Map<EntityKeyMetadata, E> initializeEntityWithEmbeddedQueries(SessionFactoryImplementor sessionFactoryImplementor) { Map<EntityKeyMetadata, E> entityQueries = initializeEntityQueries( sessionFactoryImplementor ); Collection<CollectionPersister> collectionPersisters = sessionFactoryImplementor.getMetamodel().collectionPersisters().values(); for ( CollectionPersister collectionPersister : collectionPersisters ) { if ( collectionPersister instanceof OgmCollectionPersister ) { OgmCollectionPersister ogmCollectionPersister = (OgmCollectionPersister) collectionPersister; OgmEntityPersister ogmEntityPersister = (OgmEntityPersister) ( ogmCollectionPersister.getOwnerEntityPersister() ); EntityKeyMetadata ownerEntityKeyMetadata = ogmEntityPersister.getEntityKeyMetadata(); ownerEntityKeyMetadata = entityKeyMetadata( ogmEntityPersister ); if ( !entityQueries.containsKey( ownerEntityKeyMetadata ) ) { // Embeddables metadata E createNeo4jEntityQueries = createNeo4jEntityQueries( ogmEntityPersister.getEntityKeyMetadata(), null ); entityQueries.put( ownerEntityKeyMetadata, createNeo4jEntityQueries ); } } } return entityQueries; }