@@ -245,23 +245,27 @@ class DefaultGenericExecuteSpec implements GenericExecuteSpec {
245
245
}
246
246
247
247
@ SuppressWarnings ("deprecation" )
248
+ private Parameter resolveParameter (Object value ) {
249
+ if (value instanceof Parameter param ) {
250
+ return param ;
251
+ }
252
+ else if (value instanceof org .springframework .r2dbc .core .Parameter param ) {
253
+ Object paramValue = param .getValue ();
254
+ return (paramValue != null ? Parameters .in (paramValue ) : Parameters .in (param .getType ()));
255
+ }
256
+ else {
257
+ return Parameters .in (value );
258
+ }
259
+ }
260
+
248
261
@ Override
249
262
public DefaultGenericExecuteSpec bind (int index , Object value ) {
250
263
assertNotPreparedOperation ();
251
264
Assert .notNull (value , () -> String .format (
252
265
"Value at index %d must not be null. Use bindNull(…) instead." , index ));
253
266
254
267
Map <Integer , Parameter > byIndex = new LinkedHashMap <>(this .byIndex );
255
- if (value instanceof Parameter param ) {
256
- byIndex .put (index , param );
257
- }
258
- else if (value instanceof org .springframework .r2dbc .core .Parameter param ) {
259
- Object pv = param .getValue ();
260
- byIndex .put (index , (pv != null ? Parameters .in (pv ) : Parameters .in (param .getType ())));
261
- }
262
- else {
263
- byIndex .put (index , Parameters .in (value ));
264
- }
268
+ byIndex .put (index , resolveParameter (value ));
265
269
266
270
return new DefaultGenericExecuteSpec (byIndex , this .byName , this .sqlSupplier , this .filterFunction );
267
271
}
@@ -276,7 +280,6 @@ public DefaultGenericExecuteSpec bindNull(int index, Class<?> type) {
276
280
return new DefaultGenericExecuteSpec (byIndex , this .byName , this .sqlSupplier , this .filterFunction );
277
281
}
278
282
279
- @ SuppressWarnings ("deprecation" )
280
283
@ Override
281
284
public DefaultGenericExecuteSpec bind (String name , Object value ) {
282
285
assertNotPreparedOperation ();
@@ -286,15 +289,7 @@ public DefaultGenericExecuteSpec bind(String name, Object value) {
286
289
"Value for parameter %s must not be null. Use bindNull(…) instead." , name ));
287
290
288
291
Map <String , Parameter > byName = new LinkedHashMap <>(this .byName );
289
- if (value instanceof Parameter p ) {
290
- byName .put (name , p );
291
- }
292
- else if (value instanceof org .springframework .r2dbc .core .Parameter p ) {
293
- byName .put (name , p .hasValue () ? Parameters .in (p .getValue ()) : Parameters .in (p .getType ()));
294
- }
295
- else {
296
- byName .put (name , Parameters .in (value ));
297
- }
292
+ byName .put (name , resolveParameter (value ));
298
293
299
294
return new DefaultGenericExecuteSpec (this .byIndex , byName , this .sqlSupplier , this .filterFunction );
300
295
}
0 commit comments