Example #1
0
    /// <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;
        });
    }
Example #2
0
 /// <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);
     });
 }
Example #3
0
 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;
 }
Example #4
0
 private void OnError(IChannelPipeline obj)
 {
     if (this.ErrorCallBack == null)
     {
         return;
     }
     //当前不是主线程,,得添加到loom中
     Loom.QueueOnMainThread(() =>
     {
         ErrorCallBack.Invoke(obj);
     });
 }
Example #5
0
    /// <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;
        });
    }
Example #6
0
 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;
     }
 }
Example #7
0
    /// <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;
        });
    }
Example #8
0
    /// <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();
        });
    }
Example #9
0
 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;
     }
 }
Example #10
0
    /// <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;
                    });
                }
            });
        });
    }
Example #11
0
        /// <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);
            }
        }
Example #12
0
        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?
        }
Example #13
0
    /// <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;
        });
    }
Example #14
0
 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();
 }
Example #15
0
        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();
        }
Example #16
0
        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);
        }
Example #17
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;
            });
        });
    }
Example #18
0
 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();
     }
 }
Example #20
0
 /// <summary>
 /// 错误回调事件
 /// </summary>
 /// 创建者:万浩
 /// 创建日期:2017/12/05 15:17
 /// 修改者:
 /// 修改时间:
 /// ----------------------------------------------------------------------------------------
 protected void OnErrorCallBack(Exception exception)
 {
     ErrorCallBack?.Invoke(exception, null);
 }
Example #21
0
 public Grammar(string data)
 {
     Data = data;
     errorCallBack = new ErrorCallBack(GenerateLists);
     Modification.enableCallBack = new Modification.EnableCallBack(Modification.Enable);
 }
Example #22
0
 public Command(string command, SuccessCallBack successCallBack = null, ErrorCallBack errorCallBack = null)
 {
     _command = command;
     _successCallBack = successCallBack;
     _errorCallBack = errorCallBack;
 }
Example #23
0
    /// <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);
 }
Example #25
0
 public static void CallbackItterate(ItteratorAction action, int numberOfTimes, Action completeCallBack, ErrorCallBack errorCallBack)
 {
     CallbackItterateAction(action, 0, numberOfTimes, completeCallBack, errorCallBack);
 }