ReflectiveUserFunction( UserFunctionSignature signature, MethodHandle constructor, Method udfMethod, TypeMappers.TypeChecker typeChecker, ValueMapper<Object> mapper, List<FieldInjections.FieldSetter> fieldSetters ) { super( mapper, fieldSetters ); this.constructor = constructor; this.udfMethod = udfMethod; this.signature = signature; this.typeChecker = typeChecker; indexesToMap = computeIndexesToMap( signature.inputSignature() ); }
ReflectiveUserAggregationFunction( UserFunctionSignature signature, MethodHandle constructor, MethodHandle creator, Method updateMethod, MethodHandle resultMethod, TypeMappers.TypeChecker typeChecker, List<FieldInjections.FieldSetter> fieldSetters ) { super( null, fieldSetters ); this.constructor = constructor; this.creator = creator; this.updateMethod = updateMethod; this.resultMethod = resultMethod; this.signature = signature; this.typeChecker = typeChecker; this.indexesToMap = computeIndexesToMap( signature.inputSignature() ); }
@Test public void inputSignatureShouldNotBeModifiable() { // Expect exception.expect( UnsupportedOperationException.class ); // When signature.inputSignature().add( FieldSignature.inputField( "in2", Neo4jTypes.NTAny ) ); }
Object rs = udfMethod.invoke( cls, mapToObjects( "Function", signature.name(), signature.inputSignature(), input ) );
List<FieldSignature> inputSignature = signature.inputSignature(); int expectedNumberOfInputs = inputSignature.size();
ReflectiveUserFunction( UserFunctionSignature signature, MethodHandle constructor, Method udfMethod, TypeMappers.TypeChecker typeChecker, ValueMapper<Object> mapper, List<FieldInjections.FieldSetter> fieldSetters ) { super( mapper, fieldSetters ); this.constructor = constructor; this.udfMethod = udfMethod; this.signature = signature; this.typeChecker = typeChecker; indexesToMap = computeIndexesToMap( signature.inputSignature() ); }
ReflectiveUserAggregationFunction( UserFunctionSignature signature, MethodHandle constructor, MethodHandle creator, Method updateMethod, MethodHandle resultMethod, TypeMappers.TypeChecker typeChecker, List<FieldInjections.FieldSetter> fieldSetters ) { super( null, fieldSetters ); this.constructor = constructor; this.creator = creator; this.updateMethod = updateMethod; this.resultMethod = resultMethod; this.signature = signature; this.typeChecker = typeChecker; this.indexesToMap = computeIndexesToMap( signature.inputSignature() ); }
Object rs = udfMethod.invoke( cls, mapToObjects( "Function", signature.name(), signature.inputSignature(), input ) );
List<FieldSignature> inputSignature = signature.inputSignature(); int expectedNumberOfInputs = inputSignature.size();