/// <summary> /// メッセージを送信する /// </summary> /// <param name="obj">メッセージの送信相手</param> /// <param name="message">メッセージ内容</param> /// <param name="callback">コールバック関数</param> public void SendMessage(NCMBUser obj, string message, ErrorCallBack callback) { if (!GetIsLogIn) { callback(new NCMBException(NCMBUTErrorMessage.NOT_LOGIN_ERROR)); return; } if (message == "") { callback(new NCMBException(NCMBUTErrorMessage.EMPTY_MESSAGE)); return; } NCMBObject messageObj = GetClassObject(NCMBUTMessagesDefaultSettings.MESSAGE_CLASS); messageObj.Add(NCMBUTMessagesDefaultSettings.MessagesDefaultFields.message.ToString(), message); messageObj.Add(NCMBUTMessagesDefaultSettings.MessagesDefaultFields.from.ToString(), NCMBUser.CurrentUser); messageObj.Add(NCMBUTMessagesDefaultSettings.MessagesDefaultFields.to.ToString(), obj); messageObj.SaveAsync((NCMBException error) => { ClearValues(); callback(error); return; }); }
/// <summary> /// NCMBObjectの保存を行う /// </summary> /// <param name="targetObj">保存を行うNCMBObject</param> /// <param name="callback">コールバック関数</param> private void saveRecord(NCMBObject obj, ErrorCallBack callback) { obj.SaveAsync((NCMBException error) => { ClearValues(); callback(error); }); }
public AttackController(AttackParams Params, NetworkInterface Adapter, ErrorCallBack Errorhandler) { this.Params = Params; this.Adapter = Adapter; HttpGenerator = new Thread(new ParameterizedThreadStart(processHttpFlood)); UdpGenerator = new Thread(new ParameterizedThreadStart(processUdpFlood)); this.ErrorHandler = Errorhandler; Attacking = false; }
private void OnError(IChannelPipeline obj) { if (this.ErrorCallBack == null) { return; } //当前不是主线程,,得添加到loom中 Loom.QueueOnMainThread(() => { ErrorCallBack.Invoke(obj); }); }
/// <summary> /// ログアウトする /// </summary> /// <param name="callback">コールバック関数</param> public void LogOut(ErrorCallBack callback) { if (!GetIsLogIn) { callback(new NCMBException(NCMBUTErrorMessage.NOT_LOGIN_ERROR)); return; } NCMBUser.LogOutAsync((NCMBException error) => { callback(error); return; }); }
public void TFliteClassifyInit() { if (defaultClassifier == null) { if (!File.Exists(LableFilePaht) || !File.Exists(ModelFilePath)) { ErrorCallBack?.Invoke($"{(!File.Exists(ModelFilePath) ? "模型" : "标签")}文件未找到,打开分类引擎失败", new ArgumentException()); return; } defaultClassifier = new TensorflowClassifier(File.OpenRead(LableFilePaht)); defaultClassifier.SetTFLiteModelPath(ModelFilePath); defaultClassifier.ClassificationCompleted -= DefaultClassifier_ClassificationCompleted; defaultClassifier.ClassificationCompleted += DefaultClassifier_ClassificationCompleted; } }
/// <summary> /// メッセージを削除する /// </summary> /// <param name="obj">削除対象のメッセージ</param> /// <param name="callback">コールバック関数</param> public void RemoveMessage(NCMBObject obj, ErrorCallBack callback) { base.CheckMatchClass(obj.ClassName, new string[] { NCMBUTMessagesDefaultSettings.MESSAGE_CLASS }); if (!GetIsLogIn) { callback(new NCMBException(NCMBUTErrorMessage.NOT_LOGIN_ERROR)); return; } obj[NCMBUTFriendsDefaultSettings.FriendsDefaultFields.isEnable.ToString()] = false; obj.SaveAsync((NCMBException error) => { callback(error); return; }); }
/// <summary> /// 会員登録を行う /// </summary> /// <param name="userName">ユーザ名</param> /// <param name="passwd">パスワード</param> /// <param name="callback">コールバック関数</param> public void SignUp(string userName, string password, ErrorCallBack callback) { if (userName == "" || password == "") { callback(new NCMBException(NCMBUTErrorMessage.EMPTY_ID_PASS)); return; } if (IsUserNameValidation) { if (!checkUserName(userName)) { callback(new NCMBException(NCMBUTErrorMessage.USER_NAME_CONDITIONS)); return; } } if (IsUsePasswordValidation) { if (!checkPassword(password)) { callback(new NCMBException(NCMBUTErrorMessage.PASSWORD_CONDITIONS)); return; } } NCMBUser user = GetUserObject(); user.UserName = userName; user.Password = password; user.SignUpAsync((NCMBException error) => { ClearValues(); if (error != null) { callback(error); return; } callback(error); savePlayer(); }); }
public NetworkController(AttackParams Params, NetworkInterface Adapter, CallBackFunct MessageCallBack, StatisticCallBack StatRespond, ErrorCallBack LostCOnnectionHandler, int alt_port, IPEndPoint MasterPoint) //master mode only { UpdateData = MessageCallBack; this.ProccessStatisticRespond = StatRespond; this.ExErrorHandler = LostCOnnectionHandler; //Daemons = new DaemonList(); Daemons = new DaemonPool(); state = ControllerState.Tuning; try { InitInterface(Adapter, alt_port, MasterPoint); InitParams(Params); } catch (Exception) { state = ControllerState.Error; } }
/// <summary> /// 送信したフレンドリクエストをキャンセルする /// </summary> /// <param name="obj">キャンセルするフレンド申請</param> /// <param name="callback">コールバック</param> public void CancelRequest(NCMBObject obj, ErrorCallBack callback) { base.CheckMatchClass(obj.ClassName, new string[] { NCMBUTFriendsDefaultSettings.FRIEND_CLASS }); if (!GetIsLogIn) { callback(new NCMBException(NCMBUTErrorMessage.NOT_LOGIN_ERROR)); return; } obj[NCMBUTFriendsDefaultSettings.FriendsDefaultFields.isEnable.ToString()] = false; obj[NCMBUTFriendsDefaultSettings.FriendsDefaultFields.isPending.ToString()] = false; obj.SaveAsync((NCMBException error) => { callback(error); if (error != null) { return; } NCMBQuery <NCMBObject> findQuery = new NCMBQuery <NCMBObject>(NCMBUTFriendsDefaultSettings.FRIEND_CLASS); findQuery.WhereEqualTo(NCMBUTFriendsDefaultSettings.FriendsDefaultFields.from.ToString(), (NCMBObject)obj["to"]); findQuery.WhereEqualTo(NCMBUTFriendsDefaultSettings.FriendsDefaultFields.to.ToString(), NCMBUser.CurrentUser); findQuery.WhereEqualTo(NCMBUTFriendsDefaultSettings.FriendsDefaultFields.isEnable.ToString(), true); findQuery.FindAsync((List <NCMBObject> objList, NCMBException findError) => { callback(findError); if (findError != null) { return; } if (objList.Count == 1) { objList[0][NCMBUTFriendsDefaultSettings.FriendsDefaultFields.isEnable.ToString()] = false; objList[0][NCMBUTFriendsDefaultSettings.FriendsDefaultFields.isPending.ToString()] = false; objList[0].SaveAsync((NCMBException saveError) => { callback(saveError); return; }); } }); }); }
/// <summary> /// 다운로드 큐의 생성자 입니다. /// </summary> /// <param name="notify_size">다운로드가 시작되기전 파일의 크기를 알릴때 호출됩니다.</param> /// <param name="notify_status">다운로드 중인 파일의 </param> /// <param name="retry"></param> public EmiliaQueue(DownloadSizeCallBack notify_size, DownloadStatusCallBack notify_status, RetryCallBack retry, ErrorCallBack err) { capacity = Settings.Instance.Model.Thread; ServicePointManager.DefaultConnectionLimit = Settings.Instance.Net.ServicePointConnectionLimit; timeout_infinite = Settings.Instance.Net.TimeoutInfinite; timeout_ms = Settings.Instance.Net.TimeoutMillisecond; buffer_size = Settings.Instance.Net.DownloadBufferSize; download_callback = notify_size; status_callback = notify_status; retry_callback = retry; err_callback = err; proxy = null; for (int i = 0; i < capacity; i++) { interrupt.Add(new ManualResetEvent(false)); threads.Add(new Thread(new ParameterizedThreadStart(remote_download_thread_handler))); threads.Last().Start(i); } }
public NetworkController(AttackParams Params, NetworkInterface Adapter, CallBackFunct MessageCallBack, StatisticCallBack StatRespond, ChangeModeCallBack ModeChange, ErrorCallBack LostCOnnectionHandler, int alt_port, IPEndPoint MasterPoint) //master mode only { UpdateData = MessageCallBack; this.ProccessStatisticRespond = StatRespond; this.ExErrorHandler = LostCOnnectionHandler; this.ChangeMode = ModeChange; //no need, delete Daemons = new DaemonList(); state = ControllerState.Tuning; try { InitInterface(Adapter, alt_port, MasterPoint); InitParams(Params); } catch (Exception err) { state = ControllerState.Error; } // what if these sockets are occupied? }
/// <summary> /// ログインする /// </summary> /// <param name="userName">ユーザ名</param> /// <param name="password">パスワード</param> /// <param name="callback">コールバック関数</param> public void LogIn(string userName, string password, ErrorCallBack callback) { if (GetIsLogIn) { callback(new NCMBException(NCMBUTErrorMessage.ALREADY_LOGIN)); return; } if (userName == "" || password == "") { callback(new NCMBException(NCMBUTErrorMessage.EMPTY_ID_PASS)); return; } NCMBUser.LogInAsync(userName, password, (NCMBException error) => { callback(error); return; }); }
public void Classify(byte[] nv21Stream) { if (!isClassifyDone) { return; } isClassifyDone = false; //new System.Threading.Thread(async () => //{ try { defaultClassifier?.Classify(nv21Stream); } catch (Exception e) { isClassifyDone = true; ErrorCallBack?.Invoke("分类流程出现异常", e); } //}).Start(); }
public void StartReceive(string ip, int port, ReceiveCallBack onReceive, ErrorCallBack onError = null) { Debugger.Log("UDPClient::StartReceive"); //AddressFamily addressFamily; //string connectIP; //NetworkHelper.GetIPType(ip, out connectIP, out addressFamily); _targetIp = new IPEndPoint(IPAddress.Parse(ip), port); _udpClient = new UdpClient(AddressFamily.InterNetwork); if (_SelfIp != null) { _udpClient.Client.Bind(_SelfIp); } _udpClient.Client.SendBufferSize = 1024 * 128; _udpClient.Client.ReceiveBufferSize = 1024 * 128; _receiveCallBack = onReceive; _errorCallBack = onError; _isReceive = true; _recvThread = new Thread(Receive); _recvThread.Start(); }
public static int addRowsWithDataGrid( DataGridView dataGrid, DataGridRowValidator validate, RowProcessor rowProc, ErrorCallBack callback) { DataGridViewRow lastRow = dataGrid.Rows[dataGrid.Rows.Count - 1]; string missingCol; foreach (DataGridViewRow r in dataGrid.Rows) { if (validate(r, out missingCol)) { rowProc(r.Cells); } else if (r != lastRow && dataGrid.AllowUserToAddRows) { callback(missingCol); return -1; } } return dataGrid.Rows.Count - (dataGrid.AllowUserToAddRows ? 1 : 0); }
/// <summary> /// フレンド申請を行う /// </summary> /// <param name="obj">フレンド申請を行う相手</param> /// <param name="callback">コールバック関数</param> public void SendFriendRequest(NCMBObject obj, ErrorCallBack callback) { base.CheckMatchClass(obj.ClassName, new string[] { NCMBUTPlayersDefaultSettings.PLAYERS_CLASS }); if (!GetIsLogIn) { callback(new NCMBException(NCMBUTErrorMessage.NOT_LOGIN_ERROR)); return; } // 自分から相手へのフレンド申請を登録する NCMBObject fromObj = GetPlaneClassObject(NCMBUTFriendsDefaultSettings.FRIEND_CLASS); fromObj.Add(NCMBUTFriendsDefaultSettings.FriendsDefaultFields.from.ToString(), NCMBUser.CurrentUser); fromObj.Add(NCMBUTFriendsDefaultSettings.FriendsDefaultFields.to.ToString(), (NCMBObject)obj["player"]); fromObj.Add(NCMBUTFriendsDefaultSettings.FriendsDefaultFields.isAccept.ToString(), false); fromObj.Add(NCMBUTFriendsDefaultSettings.FriendsDefaultFields.isPending.ToString(), true); fromObj.SaveAsync((NCMBException fromError) => { callback(fromError); if (fromError != null) { return; } // 相手から自分へのフレンドを登録する NCMBObject toObj = GetPlaneClassObject(NCMBUTFriendsDefaultSettings.FRIEND_CLASS); toObj.Add(NCMBUTFriendsDefaultSettings.FriendsDefaultFields.from.ToString(), (NCMBObject)obj["player"]); toObj.Add(NCMBUTFriendsDefaultSettings.FriendsDefaultFields.to.ToString(), NCMBUser.CurrentUser); toObj.Add(NCMBUTFriendsDefaultSettings.FriendsDefaultFields.isAccept.ToString(), false); toObj.Add(NCMBUTFriendsDefaultSettings.FriendsDefaultFields.isPending.ToString(), false); toObj.SaveAsync((NCMBException toError) => { callback(toError); return; }); }); }
private static void CallbackItterateAction(ItteratorAction action, int index, int numberOfTimes, Action completeCallBack, ErrorCallBack errorCallBack) { if (index < numberOfTimes) { try { action(index, delegate() { index++; CallbackItterateAction(action, index, numberOfTimes, completeCallBack, errorCallBack); }, delegate(Exception ex){ // Error callback errorCallBack(ex); }); } catch (Exception ex) { errorCallBack(ex); } } else completeCallBack(); }
private static void CallbackItterateAction(ItteratorAction action, int index, int numberOfTimes, Action completeCallBack, ErrorCallBack errorCallBack) { if (index < numberOfTimes) { try { action(index, delegate() { index++; CallbackItterateAction(action, index, numberOfTimes, completeCallBack, errorCallBack); }, delegate(Exception ex){ // Error callback errorCallBack(ex); }); } catch (Exception ex) { errorCallBack(ex); } } else { completeCallBack(); } }
/// <summary> /// 错误回调事件 /// </summary> /// 创建者:万浩 /// 创建日期:2017/12/05 15:17 /// 修改者: /// 修改时间: /// ---------------------------------------------------------------------------------------- protected void OnErrorCallBack(Exception exception) { ErrorCallBack?.Invoke(exception, null); }
public Grammar(string data) { Data = data; errorCallBack = new ErrorCallBack(GenerateLists); Modification.enableCallBack = new Modification.EnableCallBack(Modification.Enable); }
public Command(string command, SuccessCallBack successCallBack = null, ErrorCallBack errorCallBack = null) { _command = command; _successCallBack = successCallBack; _errorCallBack = errorCallBack; }
/// <summary> /// スコア送信を行う /// </summary> /// <param name="score">スコア</param> /// <param name="callback">コールバック関数</param> public void SendScore(int score, ErrorCallBack callback) { // 会員登録を行っていた場合、同会員のレコードを検索する if (GetIsLogIn) { NCMBQuery <NCMBObject> query = GetQuery(NCMBUTRankingsDefaultSettings.RANKING_CLASS); query.WhereEqualTo(NCMBUTRankingsDefaultSettings.RankingsDefaultFields.player.ToString(), NCMBUser.CurrentUser); query.WhereEqualTo(NCMBUTRankingsDefaultSettings.RankingsDefaultFields.stage.ToString(), Stage); query.FindAsync((List <NCMBObject> objList, NCMBException error) => { if (error != null) { callback(error); return; } if (objList.Count == 0) { // 対象会員のレコードがないため新規レコードを作成する NCMBObject scoreObj = GetClassObject(NCMBUTRankingsDefaultSettings.RANKING_CLASS); scoreObj.Add(NCMBUTRankingsDefaultSettings.RankingsDefaultFields.player.ToString(), NCMBUser.CurrentUser); scoreObj.Add(NCMBUTRankingsDefaultSettings.RankingsDefaultFields.score.ToString(), score); scoreObj.Add(NCMBUTRankingsDefaultSettings.RankingsDefaultFields.stage.ToString(), Stage); saveRecord(scoreObj, callback); } else { // 強制上書きフラグがFalseの時かつ、スコアを更新するか確認する if (!ForceUpdate) { switch (Sort) { case NCMBUTSortType.Ascending: if (int.Parse(objList[0][NCMBUTRankingsDefaultSettings.RankingsDefaultFields.score.ToString()].ToString()) < score) { callback(null); return; } break; case NCMBUTSortType.Descending: if (int.Parse(objList[0][NCMBUTRankingsDefaultSettings.RankingsDefaultFields.score.ToString()].ToString()) > score) { callback(null); return; } break; } } objList[0][NCMBUTRankingsDefaultSettings.RankingsDefaultFields.score.ToString()] = score; saveRecord(objList[0], callback); } }); } else { // 会員登録していないため常に新規でレコードを作成する NCMBObject createObj = GetClassObject(NCMBUTRankingsDefaultSettings.RANKING_CLASS); createObj.Add(NCMBUTRankingsDefaultSettings.RankingsDefaultFields.score.ToString(), score); createObj.Add(NCMBUTRankingsDefaultSettings.RankingsDefaultFields.stage.ToString(), Stage); saveRecord(createObj, callback); } }
public static void CallbackItterate(ItteratorAction action, int numberOfTimes, Action completeCallBack, ErrorCallBack errorCallBack) { CallbackItterateAction(action, 0, numberOfTimes, completeCallBack, errorCallBack); }