@Override public Serializable[] getSpaces() { return persister.getQuerySpaces(); } @Override
final LinkedHashSet<String> spacesList = new LinkedHashSet<>(); for ( Queryable persister : affectedQueryables ) { spacesList.addAll( Arrays.asList( (String[]) persister.getQuerySpaces() ) );
while ( iter.hasNext() ) { Queryable p = getEntityPersisterForName( (String) iter.next() ); addQuerySpaces( p.getQuerySpaces() );
specifiedAliases.add( rootRtn.getAlias() ); entityAliases.add( rootRtn.getEntityAliases() ); ArrayHelper.addAll( querySpaces, persister.getQuerySpaces() ); includeInResultRowList.add( true ); entityOwners.add( -1 ); entityAliases.add( collRtn.getElementEntityAliases() ); ArrayHelper.addAll( querySpaces, elementPersister.getQuerySpaces() ); specifiedAliases.add( fetchRtn.getAlias() ); entityAliases.add( fetchRtn.getEntityAliases() ); ArrayHelper.addAll( querySpaces, persister.getQuerySpaces() ); includeInResultRowList.add( false ); entityOwners.add( ownerIndex ); entityAliases.add( fetchRtn.getElementEntityAliases() ); ArrayHelper.addAll( querySpaces, elementPersister.getQuerySpaces() );
@Override protected AST createIntoClause(String path, AST propertySpec) throws SemanticException { Queryable persister = (Queryable) getSessionFactoryHelper().requireClassPersister( path ); IntoClause intoClause = (IntoClause) getASTFactory().create( INTO, persister.getEntityName() ); intoClause.setFirstChild( propertySpec ); intoClause.initialize( persister ); addQuerySpaces( persister.getQuerySpaces() ); return intoClause; }
public Serializable[] getSpaces() { return persister.getQuerySpaces(); }
public Serializable[] getSpaces() { return persister.getQuerySpaces(); }
protected AST createIntoClause(String path, AST propertySpec) throws SemanticException { Queryable persister = ( Queryable ) getSessionFactoryHelper().requireClassPersister( path ); IntoClause intoClause = ( IntoClause ) getASTFactory().create( INTO, persister.getEntityName() ); intoClause.setFirstChild( propertySpec ); intoClause.initialize( persister ); addQuerySpaces( persister.getQuerySpaces() ); return intoClause; }
public BulkOperationCleanupAction(SessionImplementor session, Queryable[] affectedQueryables) { this.session = session; // TODO : probably better to calculate these and pass them in, as it'll be more performant ArrayList tmpSpaces = new ArrayList(); for ( int i = 0; i < affectedQueryables.length; i++ ) { if ( affectedQueryables[i].hasCache() ) { affectedEntityNames.add( affectedQueryables[i].getEntityName() ); } Set roles = session.getFactory().getCollectionRolesByEntityParticipant( affectedQueryables[i].getEntityName() ); if ( roles != null ) { affectedCollectionRoles.addAll( roles ); } for ( int y = 0; y < affectedQueryables[i].getQuerySpaces().length; y++ ) { tmpSpaces.add( affectedQueryables[i].getQuerySpaces()[y] ); } } this.spaces = new Serializable[ tmpSpaces.size() ]; for ( int i = 0; i < tmpSpaces.size(); i++ ) { this.spaces[i] = ( Serializable ) tmpSpaces.get( i ); } }
/** * Constructs an action to cleanup "affected cache regions" based on the * affected entity persisters. The affected regions are defined as the * region (if any) of the entity persisters themselves, plus the * collection regions for any collection in which those entity * persisters participate as elements/keys/etc. * * @param session The session to which this request is tied. * @param affectedQueryables The affected entity persisters. */ public BulkOperationCleanupAction(SessionImplementor session, Queryable[] affectedQueryables) { SessionFactoryImplementor factory = session.getFactory(); LinkedHashSet<String> spacesList = new LinkedHashSet<String>(); for ( Queryable persister : affectedQueryables ) { spacesList.addAll( Arrays.asList( (String[]) persister.getQuerySpaces() ) ); if ( persister.hasCache() ) { entityCleanups.add( new EntityCleanup( persister.getCacheAccessStrategy() ) ); } Set<String> roles = factory.getCollectionRolesByEntityParticipant( persister.getEntityName() ); if ( roles != null ) { for ( String role : roles ) { CollectionPersister collectionPersister = factory.getCollectionPersister( role ); if ( collectionPersister.hasCache() ) { collectionCleanups.add( new CollectionCleanup( collectionPersister.getCacheAccessStrategy() ) ); } } } } this.affectedTableSpaces = spacesList.toArray( new String[ spacesList.size() ] ); }
/** * Constructs an action to cleanup "affected cache regions" based on the * affected entity persisters. The affected regions are defined as the * region (if any) of the entity persisters themselves, plus the * collection regions for any collection in which those entity * persisters participate as elements/keys/etc. * * @param session The session to which this request is tied. * @param affectedQueryables The affected entity persisters. */ public BulkOperationCleanupAction(SessionImplementor session, Queryable[] affectedQueryables) { SessionFactoryImplementor factory = session.getFactory(); LinkedHashSet<String> spacesList = new LinkedHashSet<String>(); for ( Queryable persister : affectedQueryables ) { spacesList.addAll( Arrays.asList( (String[]) persister.getQuerySpaces() ) ); if ( persister.hasCache() ) { entityCleanups.add( new EntityCleanup( persister.getCacheAccessStrategy() ) ); } Set<String> roles = factory.getCollectionRolesByEntityParticipant( persister.getEntityName() ); if ( roles != null ) { for ( String role : roles ) { CollectionPersister collectionPersister = factory.getCollectionPersister( role ); if ( collectionPersister.hasCache() ) { collectionCleanups.add( new CollectionCleanup( collectionPersister.getCacheAccessStrategy() ) ); } } } } this.affectedTableSpaces = spacesList.toArray( new String[ spacesList.size() ] ); }
specifiedAliases.add( rootRtn.getAlias() ); entityAliases.add( rootRtn.getEntityAliases() ); ArrayHelper.addAll( querySpaces, persister.getQuerySpaces() ); includeInResultRowList.add( true ); entityOwners.add( -1 ); entityAliases.add( collRtn.getElementEntityAliases() ); ArrayHelper.addAll( querySpaces, elementPersister.getQuerySpaces() ); specifiedAliases.add( fetchRtn.getAlias() ); entityAliases.add( fetchRtn.getEntityAliases() ); ArrayHelper.addAll( querySpaces, persister.getQuerySpaces() ); includeInResultRowList.add( false ); entityOwners.add( ownerIndex ); entityAliases.add( fetchRtn.getElementEntityAliases() ); ArrayHelper.addAll( querySpaces, elementPersister.getQuerySpaces() );
specifiedAliases.add( rootRtn.getAlias() ); entityAliases.add( rootRtn.getEntityAliases() ); ArrayHelper.addAll( querySpaces, persister.getQuerySpaces() ); includeInResultRowList.add( true ); entityOwners.add( -1 ); entityAliases.add( collRtn.getElementEntityAliases() ); ArrayHelper.addAll( querySpaces, elementPersister.getQuerySpaces() ); specifiedAliases.add( fetchRtn.getAlias() ); entityAliases.add( fetchRtn.getEntityAliases() ); ArrayHelper.addAll( querySpaces, persister.getQuerySpaces() ); includeInResultRowList.add( false ); entityOwners.add( ownerIndex ); entityAliases.add( fetchRtn.getElementEntityAliases() ); ArrayHelper.addAll( querySpaces, elementPersister.getQuerySpaces() );
while ( iter.hasNext() ) { Queryable p = getEntityPersisterForName( ( String ) iter.next() ); addQuerySpaces( p.getQuerySpaces() );
while ( iter.hasNext() ) { Queryable p = getEntityPersisterForName( ( String ) iter.next() ); addQuerySpaces( p.getQuerySpaces() );
while ( iter.hasNext() ) { Queryable p = getEntityPersisterForName( ( String ) iter.next() ); addQuerySpaces( p.getQuerySpaces() );
while ( iter.hasNext() ) { Queryable p = getEntityPersisterForName( ( String ) iter.next() ); addQuerySpaces( p.getQuerySpaces() );
@Override protected AST createIntoClause(String path, AST propertySpec) throws SemanticException { Queryable persister = ( Queryable ) getSessionFactoryHelper().requireClassPersister( path ); IntoClause intoClause = ( IntoClause ) getASTFactory().create( INTO, persister.getEntityName() ); intoClause.setFirstChild( propertySpec ); intoClause.initialize( persister ); addQuerySpaces( persister.getQuerySpaces() ); return intoClause; }
@Override protected AST createIntoClause(String path, AST propertySpec) throws SemanticException { Queryable persister = ( Queryable ) getSessionFactoryHelper().requireClassPersister( path ); IntoClause intoClause = ( IntoClause ) getASTFactory().create( INTO, persister.getEntityName() ); intoClause.setFirstChild( propertySpec ); intoClause.initialize( persister ); addQuerySpaces( persister.getQuerySpaces() ); return intoClause; }