public override bool TryInvokeMember(InvokeMemberBinder binder, object[] args, out object result)
 {
     var adapterWithFunctions = GetAdapter() as IAdapterWithFunctions;
     if (adapterWithFunctions != null && adapterWithFunctions.IsValidFunction(binder.Name))
     {
         var command = new ExecuteFunctionCommand(GetDatabase(), adapterWithFunctions, binder.Name,
                                                  binder.ArgumentsToDictionary(args));
         return command.Execute(out result);
     }
     return base.TryInvokeMember(binder, args, out result);
 }
Beispiel #2
0
 internal bool TryInvokeFunction(String functionName, Func<IDictionary<String,Object>> getFunctionArguments, out object result)
 {
     var adapterWithFunctions = GetAdapter() as IAdapterWithFunctions;
     if (adapterWithFunctions != null && adapterWithFunctions.IsValidFunction(functionName))
     {
         var command = new ExecuteFunctionCommand(GetDatabase(), adapterWithFunctions, functionName, getFunctionArguments());
         return ExecuteFunction(out result, command);
     }
     result = null;
     return false;
 }
Beispiel #3
0
 protected abstract bool ExecuteFunction(out object result, ExecuteFunctionCommand command);
 protected internal override bool ExecuteFunction(out object result, ExecuteFunctionCommand command)
 {
     return _wrappedStrategy.ExecuteFunction(out result, command);
 }
Beispiel #5
0
 protected internal override bool ExecuteFunction(out object result, ExecuteFunctionCommand command)
 {
     return command.Execute(out result);
 }
Beispiel #6
0
 protected internal override bool ExecuteFunction(out object result, Commands.ExecuteFunctionCommand command)
 {
     return(command.Execute(out result));
 }