private static void CompleteTask <T>(TaskCompletionSource <T> tcs, FfiResult result, Func <T> argFunc) { if (result.ErrorCode != 0) { Task.Run(() => { tcs.SetException(result.ToException()); }); } else { var arg = argFunc(); Task.Run(() => { tcs.SetResult(arg); }); } }
public static void CompleteTask(IntPtr userData, FfiResult result) { CompleteTask(userData, result, () => true); }
public static void CompleteTask <T>(IntPtr userData, FfiResult result, Func <T> argFunc) { var tcs = FromHandlePtr <TaskCompletionSource <T> >(userData); CompleteTask(tcs, result, argFunc); }
private static void OnLoginCb(IntPtr self, FfiResult result, IntPtr authPtr) { self.HandlePtrToType <LoginCb>()(IntPtr.Zero, result, authPtr); }
private static void OnEncodeAuthRspCb(IntPtr self, FfiResult result, string encodedRsp) { self.HandlePtrToType <EncodeAuthRspCb>()(IntPtr.Zero, result, encodedRsp); }
private static void OnAuthAccountInfoCb(IntPtr self, FfiResult result, IntPtr accountInfoPtr) { self.HandlePtrToType <AuthAccountInfoCb>()(IntPtr.Zero, result, accountInfoPtr); }
private static void OAuthSetAdditionalSearchPathCb(IntPtr self, FfiResult result) { self.HandlePtrToType <AuthSetAdditionalSearchPathCb>()(IntPtr.Zero, result); }
private static void OnCreateAccountCb(IntPtr self, FfiResult result, IntPtr authPtr) { self.HandlePtrToType <CreateAccountCb>()(IntPtr.Zero, result, authPtr); }
private static void OnAuthRegisteredAppsCb(IntPtr self, FfiResult result, IntPtr registeredAppFfiPtr, IntPtr len) { self.HandlePtrToType <AuthRegisteredAppsCb>()(IntPtr.Zero, result, registeredAppFfiPtr, len); }
private static void OnAuthLogPathCb(IntPtr self, FfiResult result, string path) { self.HandlePtrToType <AuthLogPathCb>()(IntPtr.Zero, result, path); }
private static void OnInitLoggingCb(IntPtr self, FfiResult result) { self.HandlePtrToType <InitLoggingCb>()(IntPtr.Zero, result); }
private static void OnAuthExeFileStemCb(IntPtr self, FfiResult result, string exeFileStem) { self.HandlePtrToType <AuthExeFileStemCb>()(IntPtr.Zero, result, exeFileStem); }
private static void OnAppReqOnErrorCb(IntPtr self, FfiResult result, string encodedString) { var cb = (AppReqOnErrorCb)self.HandlePtrToType <List <object> >()[4]; cb(IntPtr.Zero, result, encodedString); }