protected SQLCriterion(String sql, Object[] values, Type[] types) { this.sql = sql; this.typedValues = new TypedValue[values.length]; for ( int i=0; i<typedValues.length; i++ ) { typedValues[i] = new TypedValue( types[i], values[i] ); } }
@Override public TypedValue[] getTypedValues(Criteria criteria, CriteriaQuery criteriaQuery) throws HibernateException { return new TypedValue[] { new TypedValue( StandardBasicTypes.INTEGER, srid ) }; }
@Override public TypedValue[] getTypedValues(Criteria criteria, CriteriaQuery criteriaQuery) throws HibernateException { return new TypedValue[] { new TypedValue( StandardBasicTypes.INTEGER, size ) }; }
protected SQLCriterion(String sql, Object value, Type type) { this.sql = sql; this.typedValues = new TypedValue[] { new TypedValue( type, value ) }; }
FilterKey(String name, Map<String,?> params, Map<String,Type> types) { filterName = name; for ( Map.Entry<String, ?> paramEntry : params.entrySet() ) { final Type type = types.get( paramEntry.getKey() ); filterParameters.put( paramEntry.getKey(), new TypedValue( type, paramEntry.getValue() ) ); } }
protected void addPropertyTypedValue(Object value, Type type, List<TypedValue> list) { if ( value != null ) { if ( value instanceof String ) { String string = (String) value; if ( isIgnoreCaseEnabled ) { string = string.toLowerCase(Locale.ROOT); } if ( isLikeEnabled ) { string = matchMode.toMatchString( string ); } value = string; } list.add( new TypedValue( type, value ) ); } }
@Override public TypedValue[] getTypedValues(Criteria criteria, CriteriaQuery criteriaQuery) throws HibernateException { final SpatialDialect spatialDialect = ExpressionUtil.getSpatialDialect( criteriaQuery, SpatialFunction.dwithin ); TypedValue typedDistanceValue = new TypedValue( StandardBasicTypes.DOUBLE, distance ); if ( spatialDialect instanceof OracleSpatial10gDialect ) { typedDistanceValue = new TypedValue( StandardBasicTypes.STRING, "distance=" + distance ); } return new TypedValue[] { criteriaQuery.getTypedValue( criteria, propertyName, geometry ), typedDistanceValue }; } }
@Override public TypedValue[] getTypedValues(Criteria criteria, CriteriaQuery criteriaQuery) throws HibernateException { final TypedValue[] subQueryTypedValues = super.getTypedValues( criteria, criteriaQuery ); final TypedValue[] result = new TypedValue[subQueryTypedValues.length+1]; System.arraycopy( subQueryTypedValues, 0, result, 1, subQueryTypedValues.length ); result[0] = new TypedValue( getTypes()[0], value ); return result; }
throw new QueryException( "Unsupported discriminator type " + type ); return new TypedValue( type, value ); return new TypedValue( getTypeUsingProjection( subcriteria, propertyName ), value );
@Override public TypedValue getTypedIdentifierValue(Criteria criteria, Object value) { final Loadable loadable = ( Loadable ) getPropertyMapping( getEntityName( criteria ) ); return new TypedValue( loadable.getIdentifierType(), value ); }
/** * @deprecated (since 5.2) expect a different approach to org.hibernate.engine.spi.QueryParameters in 6.0 */ @Deprecated public Map<String, TypedValue> collectNamedParameterBindings() { final Map<String, TypedValue> collectedBindings = new HashMap<>(); for ( Map.Entry<QueryParameter, QueryParameterBinding> entry : parameterBindingMap.entrySet() ) { final String key; if ( entry.getKey().getPosition() != null ) { key = Integer.toString( entry.getKey().getPosition() ); } else { key = entry.getKey().getName(); } Type bindType = entry.getValue().getBindType(); if ( bindType == null ) { log.debugf( "Binding for parameter [%s] did not define type", key ); bindType = SerializableType.INSTANCE; } collectedBindings.put( key, new TypedValue( bindType, entry.getValue().getBindValue() ) ); } return collectedBindings; }
@Override public TypedValue[] getTypedValues(Criteria criteria, CriteriaQuery criteriaQuery) { final ArrayList<TypedValue> list = new ArrayList<TypedValue>(); final Type type = criteriaQuery.getTypeUsingProjection( criteria, propertyName ); if ( type.isComponentType() ) { final CompositeType compositeType = (CompositeType) type; final Type[] subTypes = compositeType.getSubtypes(); for ( Object value : values ) { for ( int i = 0; i < subTypes.length; i++ ) { final Object subValue = value == null ? null : compositeType.getPropertyValues( value, EntityMode.POJO )[i]; list.add( new TypedValue( subTypes[i], subValue ) ); } } } else { for ( Object value : values ) { list.add( criteriaQuery.getTypedValue( criteria, propertyName, value ) ); } } return list.toArray( new TypedValue[ list.size() ] ); }
@Override public TypedValue[] getTypedValues(Criteria criteria, CriteriaQuery criteriaQuery) throws HibernateException { //the following two lines were added to ensure that this.params is not null, which //can happen with two-deep nested subqueries final SessionFactoryImplementor factory = criteriaQuery.getFactory(); createAndSetInnerQuery( criteriaQuery, factory ); final Type[] ppTypes = params.getPositionalParameterTypes(); final Object[] ppValues = params.getPositionalParameterValues(); final TypedValue[] tv = new TypedValue[ppTypes.length]; for ( int i=0; i<ppTypes.length; i++ ) { tv[i] = new TypedValue( ppTypes[i], ppValues[i] ); } return tv; }
session ); currentIds.add( useIdDirect ? currentId : new TypedValue( idType, currentId ) ); if ( !currentSaving.contains( old ) ) { final Serializable oldId = ForeignKeys.getEntityIdentifierIfNotUnsaved( entityName, old, session ); if ( !currentIds.contains( useIdDirect ? oldId : new TypedValue( idType, oldId ) ) ) { res.add( old );
static Object makeHibernate45Caller ( Object tpl, Object getters ) throws NoSuchMethodException, InstantiationException, IllegalAccessException, InvocationTargetException, NoSuchFieldException, Exception, ClassNotFoundException { PojoComponentTuplizer tup = Reflections.createWithoutConstructor(PojoComponentTuplizer.class); Reflections.getField(AbstractComponentTuplizer.class, "getters").set(tup, getters); ComponentType t = Reflections.createWithConstructor(ComponentType.class, AbstractType.class, new Class[0], new Object[0]); Reflections.setFieldValue(t, "componentTuplizer", tup); Reflections.setFieldValue(t, "propertySpan", 1); Reflections.setFieldValue(t, "propertyTypes", new Type[] { t }); TypedValue v1 = new TypedValue(t, null); Reflections.setFieldValue(v1, "value", tpl); Reflections.setFieldValue(v1, "type", t); TypedValue v2 = new TypedValue(t, null); Reflections.setFieldValue(v2, "value", tpl); Reflections.setFieldValue(v2, "type", t); return Gadgets.makeMap(v1, v2); }
namedParameters.put( namedParameterEntry.getKey(), new TypedValue( namedParameterEntry.getValue().getType(), namedParameterEntry.getValue().getType().disassemble(
parameters.getNamedParameters().put( CollectionFilterKeyParameterSpecification.PARAM_KEY, new TypedValue( entry.getLoadedPersister().getKeyType(), entry.getLoadedKey()
public FilterKey(String name, Map<String,?> params, Map<String,Type> types) { filterName = name; for ( Map.Entry<String, ?> paramEntry : params.entrySet() ) { Type type = types.get( paramEntry.getKey() ); filterParameters.put( paramEntry.getKey(), new TypedValue( type, paramEntry.getValue() ) ); } }
public FilterKey(String name, Map<String,?> params, Map<String,Type> types) { filterName = name; for ( Map.Entry<String, ?> paramEntry : params.entrySet() ) { Type type = types.get( paramEntry.getKey() ); filterParameters.put( paramEntry.getKey(), new TypedValue( type, paramEntry.getValue() ) ); } }
public TypedValue[] getTypedValues(Criteria criteria, CriteriaQuery criteriaQuery) throws HibernateException { TypedValue[] superTv = super.getTypedValues(criteria, criteriaQuery); TypedValue[] result = new TypedValue[superTv.length+1]; System.arraycopy(superTv, 0, result, 1, superTv.length); result[0] = new TypedValue( getTypes()[0], value, EntityMode.POJO ); return result; }