Package org.hibernate.engine

Examples of org.hibernate.engine.TypedValue


  public Query setParameter(String name, Object val, Type type) {
    if ( !parameterMetadata.getNamedParameterNames().contains( name ) ) {
      throw new IllegalArgumentException("Parameter " + name + " does not exist as a named parameter in [" + getQueryString() + "]");
    }
    else {
       namedParameters.put( name, new TypedValue( type, val, session.getEntityMode() ) );
       return this;
    }
  }
View Full Code Here


  public Query setParameterList(String name, Collection vals, Type type) throws HibernateException {
    if ( !parameterMetadata.getNamedParameterNames().contains( name ) ) {
      throw new IllegalArgumentException("Parameter " + name + " does not exist as a named parameter in [" + getQueryString() + "]");
    }
    namedParameterLists.put( name, new TypedValue( type, vals, session.getEntityMode() ) );
    return this;
  }
View Full Code Here

  private String expandParameterList(String query, String name, TypedValue typedList, Map namedParamsCopy) {
    Collection vals = (Collection) typedList.getValue();
    Type type = typedList.getType();
    if ( vals.size() == 1 ) {
      // short-circuit for performance...
      namedParamsCopy.put( name, new TypedValue( type, vals.iterator().next(), session.getEntityMode() ) );
      return query;
    }

    StringBuffer list = new StringBuffer( 16 );
    Iterator iter = vals.iterator();
    int i = 0;
    boolean isJpaPositionalParam = parameterMetadata.getNamedParameterDescriptor( name ).isJpaStyle();
    while ( iter.hasNext() ) {
      String alias = ( isJpaPositionalParam ? 'x' + name : name ) + i++ + '_';
      namedParamsCopy.put( alias, new TypedValue( type, iter.next(), session.getEntityMode() ) );
      list.append( ParserHelper.HQL_VARIABLE_PREFIX ).append( alias );
      if ( iter.hasNext() ) {
        list.append( ", " );
      }
    }
View Full Code Here

      Iterator iter = namedParams.entrySet().iterator();
      int result = 0;
      while ( iter.hasNext() ) {
        Map.Entry e = (Map.Entry) iter.next();
        String name = (String) e.getKey();
        TypedValue typedval = (TypedValue) e.getValue();
        int[] locs = getNamedParameterLocs( name );
        for (int i = 0; i < locs.length; i++) {
          if ( log.isDebugEnabled() ) {
            log.debug( "bindNamedParameters() "
                + typedval.getValue() + " -> " + name + " ["
                + (locs[i] + start ) + "]" );
          }
          typedval.getType().nullSafeSet( ps, typedval.getValue(),
              locs[i] + start, session );
        }
        result += locs.length;
      }
      return result;
View Full Code Here

    else {
      namedParameters = CollectionHelper.mapOfSize( queryParameters.getNamedParameters().size() );
      Iterator itr = queryParameters.getNamedParameters().entrySet().iterator();
      while ( itr.hasNext() ) {
        final Map.Entry namedParameterEntry = ( Map.Entry ) itr.next();
        final TypedValue original = ( TypedValue ) namedParameterEntry.getValue();
        namedParameters.put(
            namedParameterEntry.getKey(),
            new TypedValue(
                original.getType(),
                original.getType().disassemble( original.getValue(), session, null ),
                session.getEntityMode()
            )
        );
      }
    }
View Full Code Here

      for ( int j=0; j<values.length; j++ ) {
        for ( int i=0; i<types.length; i++ ) {
          Object subval = values[j]==null ?
            null :
            actype.getPropertyValues( values[j], EntityMode.POJO )[i];
          list.add( new TypedValue( types[i], subval, EntityMode.POJO ) );
        }
      }
    }
    else {
      for ( int j=0; j<values.length; j++ ) {
        list.add( new TypedValue( type, values[j], EntityMode.POJO ) );
      }
    }
    return (TypedValue[]) list.toArray( new TypedValue[ list.size() ] );
  }
View Full Code Here

   
    Type[] ppTypes = params.getPositionalParameterTypes();
    Object[] ppValues = params.getPositionalParameterValues();
    TypedValue[] tv = new TypedValue[ppTypes.length];
    for ( int i=0; i<ppTypes.length; i++ ) {
      tv[i] = new TypedValue( ppTypes[i], ppValues[i], EntityMode.POJO );
    }
    return tv;
  }
View Full Code Here

        String string = (String) value;
        if (isIgnoreCaseEnabled) string = string.toLowerCase();
        if (isLikeEnabled) string = matchMode.toMatchString(string);
        value = string;
      }
      list.add( new TypedValue(type, value, null) );
    }
  }
View Full Code Here

      Iterator iter = namedParams.entrySet().iterator();
      int result = 0;
      while ( iter.hasNext() ) {
        Map.Entry e = (Map.Entry) iter.next();
        String name = (String) e.getKey();
        TypedValue typedval = (TypedValue) e.getValue();
        int[] locs = getNamedParameterLocs( name );
        for (int i = 0; i < locs.length; i++) {
          if ( log.isDebugEnabled() ) {
            log.debug( "bindNamedParameters() "
                + typedval.getValue() + " -> " + name + " ["
                + (locs[i] + start ) + "]" );
          }
          typedval.getType().nullSafeSet( ps, typedval.getValue(),
              locs[i] + start, session );
        }
        result += locs.length;
      }
      return result;
View Full Code Here

    Type[] ppTypes = params.getPositionalParameterTypes();
    Object[] ppValues = params.getPositionalParameterValues();
    TypedValue[] tv = new TypedValue[ppTypes.length];
    for ( int i=0; i<ppTypes.length; i++ ) {
      tv[i] = new TypedValue( ppTypes[i], ppValues[i], EntityMode.POJO );
    }
    return tv;
  }
View Full Code Here

TOP

Related Classes of org.hibernate.engine.TypedValue

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.