示例#1
0
        public Either <RfcErrorInfo, IFunctionHandle> CreateFunction(IFunctionDescriptionHandle descriptionHandle)
        {
            Logger.IfSome(l => l.LogTrace("creating function by function description handle", descriptionHandle));
            IFunctionHandle handle = Api.CreateFunction(descriptionHandle as FunctionDescriptionHandle, out var errorInfo);

            return(ResultOrError(handle, errorInfo));
        }
示例#2
0
 internal Function(IFunctionHandle handle, IRfcRuntime rfcRuntime) : base(handle, rfcRuntime)
 {
     Handle      = handle;
     _rfcRuntime = rfcRuntime;
 }
示例#3
0
        public Either <RfcErrorInfo, Unit> Invoke(IConnectionHandle connectionHandle, IFunctionHandle functionHandle)
        {
            Logger.IfSome(l => l.LogTrace("Invoking function", new { connectionHandle, functionHandle }));
            var rc = Api.Invoke(connectionHandle as ConnectionHandle, functionHandle as FunctionHandle, out var errorInfo);

            return(ResultOrError(Unit.Default, rc, errorInfo));
        }
示例#4
0
        public Either <RfcErrorInfo, IFunctionDescriptionHandle> GetFunctionDescription(IFunctionHandle functionHandle)
        {
            Logger.IfSome(l => l.LogTrace("reading function description by function handle", functionHandle));
            IFunctionDescriptionHandle handle = Api.GetFunctionDescription(functionHandle as FunctionHandle, out var errorInfo);

            return(ResultOrError(handle, errorInfo));
        }