Package org.hibernate

Examples of org.hibernate.LockMode


      lockModes.put( getSQLAlias( subcriteria ), me.getValue() );
    }
    iter = rootCriteria.iterateSubcriteria();
    while ( iter.hasNext() ) {
      CriteriaImpl.Subcriteria subcriteria = ( CriteriaImpl.Subcriteria ) iter.next();
      LockMode lm = subcriteria.getLockMode();
      if ( lm != null ) {
        lockModes.put( getSQLAlias( subcriteria ), lm );
      }
    }
View Full Code Here


            me.getValue() );
      }
    }
    LockMode[] lockModeArray = new LockMode[names.length];
    for ( int i = 0; i < names.length; i++ ) {
      LockMode lm = ( LockMode ) nameLockModes.get( names[i] );
      if ( lm == null ) lm = LockMode.NONE;
      lockModeArray[i] = lm;
    }
    return lockModeArray;
  }
View Full Code Here

    this.dialect = dialect;
  }

  public ForUpdateFragment(Dialect dialect, Map lockModes, Map keyColumnNames) throws QueryException {
    this( dialect );
    LockMode upgradeType = null;
    Iterator iter = lockModes.entrySet().iterator();
    while ( iter.hasNext() ) {
      final Map.Entry me = ( Map.Entry ) iter.next();
      final LockMode lockMode = ( LockMode ) me.getValue();
      if ( LockMode.READ.lessThan( lockMode ) ) {
        final String tableAlias = ( String ) me.getKey();
        if ( dialect.forUpdateOfColumns() ) {
          String[] keyColumns = ( String[] ) keyColumnNames.get( tableAlias ); //use the id column alias
          if ( keyColumns == null ) {
View Full Code Here

    final Map aliasedLockModes = new HashMap();
    final Map keyColumnNames = dialect.forUpdateOfColumns() ? new HashMap() : null;
    final String[] drivingSqlAliases = getAliases();
    for ( int i = 0; i < drivingSqlAliases.length; i++ ) {
      final LockMode lockMode = ( LockMode ) lockModes.get( drivingSqlAliases[i] );
      if ( lockMode != null ) {
        final Lockable drivingPersister = ( Lockable ) getEntityPersisters()[i];
        final String rootSqlAlias = drivingPersister.getRootTableAlias( drivingSqlAliases[i] );
        aliasedLockModes.put( rootSqlAlias, lockMode );
        if ( keyColumnNames != null ) {
View Full Code Here

      return null;
    }
    final int size = entityAliases.length;
    LockMode[] lockModesArray = new LockMode[size];
    for ( int i=0; i<size; i++ ) {
      LockMode lockMode = (LockMode) lockModes.get( entityAliases[i] );
      lockModesArray[i] = lockMode==null ? LockMode.NONE : lockMode;
    }
    return lockModesArray;
  }
View Full Code Here

    this.dialect = dialect;
  }

  public ForUpdateFragment(Dialect dialect, Map lockModes, Map keyColumnNames) throws QueryException {
    this( dialect );
    LockMode upgradeType = null;
    Iterator iter = lockModes.entrySet().iterator();
    while ( iter.hasNext() ) {
      final Map.Entry me = ( Map.Entry ) iter.next();
      final LockMode lockMode = ( LockMode ) me.getValue();
      if ( LockMode.READ.lessThan( lockMode ) ) {
        final String tableAlias = ( String ) me.getKey();
        if ( dialect.forUpdateOfColumns() ) {
          String[] keyColumns = ( String[] ) keyColumnNames.get( tableAlias ); //use the id column alias
          if ( keyColumns == null ) {
View Full Code Here

    Iterator itr = aliasedLockModes.entrySet().iterator();
    StringBuffer buffer = new StringBuffer( sql );
    int correction = 0;
    while ( itr.hasNext() ) {
      final Map.Entry entry = ( Map.Entry ) itr.next();
      final LockMode lockMode = ( LockMode ) entry.getValue();
      if ( lockMode.greaterThan( LockMode.READ ) ) {
        final String alias = ( String ) entry.getKey();
        int start = -1, end = -1;
        if ( sql.endsWith( " " + alias ) ) {
          start = ( sql.length() - alias.length() ) + correction;
          end = start + alias.length();
View Full Code Here

    //need to hydrate it.

    // grab its state from the ResultSet and keep it in the Session
    // (but don't yet initialize the object itself)
    // note that we acquire LockMode.READ even if it was not requested
    LockMode acquiredLockMode = lockMode == LockMode.NONE ? LockMode.READ : lockMode;
    loadFromResultSet(
        rs,
        i,
        object,
        instanceClass,
View Full Code Here

    String entityName = HbmBinder.getEntityName(returnElem, mappings);
    if(entityName==null) {
      throw new MappingException( "<return alias='" + alias + "'> must specify either a class or entity-name");
    }
    LockMode lockMode = getLockMode( returnElem.attributeValue( "lock-mode" ) );

    PersistentClass pc = mappings.getClass( entityName );
    java.util.Map propertyResults = bindPropertyResults(alias, returnElem, pc, mappings );

    return new NativeSQLQueryRootReturn(
View Full Code Here

  }

  private static NativeSQLQueryJoinReturn bindReturnJoin(Element returnElem, Mappings mappings) {
    String alias = returnElem.attributeValue( "alias" );
    String roleAttribute = returnElem.attributeValue( "property" );
    LockMode lockMode = getLockMode( returnElem.attributeValue( "lock-mode" ) );
    int dot = roleAttribute.lastIndexOf( '.' );
    if ( dot == -1 ) {
      throw new MappingException(
          "Role attribute for sql query return [alias=" + alias +
          "] not formatted correctly {owningAlias.propertyName}"
View Full Code Here

TOP

Related Classes of org.hibernate.LockMode

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.