Example #1
0
 public void Clean()
 {
     this.url = null;
     this.oGeoZoneDictionary = null;
     _oIDataGetter           = null;
     _instance = null;
 }
 public ThreadedListener(bool localhost)
     : base()
 {
     useLocalhost = localhost;
     dataGetter   = new DefaultDataGetter();
     StartParam(new ParameterizedThreadStart(ListenLoop));
 }
Example #3
0
        /// <summary>
        /// Подготовка перед получением данных
        /// </summary>
        protected override IDataGetter onPrepare(Filters f)
        {
            base.onPrepare(f);
            manual = false;
            treeView1.Nodes.Clear();
            _freeFarmsId.Clear();
            BldTreeData buildTree   = Engine.db().buildingsTree();
            List <int>  busyFarmsId = new List <int>();
            TreeNode    n           = this.makeNode(null, "Ферма", buildTree, busyFarmsId);

            MainForm.ProtectTest(busyFarmsId.Count);
            ///ищем предлагаемые имена
            _freeFarmsId = getNewFarmCandidates(busyFarmsId);
            int allowFarms = 0;

            if (allowFarms > 0 && _freeFarmsId.Count > allowFarms)
            {
                int last = _freeFarmsId[_freeFarmsId.Count - 1];
                _freeFarmsId = _freeFarmsId.GetRange(0, allowFarms - 1);
                _freeFarmsId.Add(last);
            }

            MainForm.ProtectTest(BuildingsPanel.GetFarmsCount(buildTree));
            manual = true;
            n.Expand();
            f[Filters.SHORT]       = Engine.opt().getOption(Options.OPT_ID.SHORT_NAMES);
            f[Filters.DBL_SURNAME] = Engine.opt().getOption(Options.OPT_ID.DBL_SURNAME);

            IDataGetter dg = Engine.db2().getBuildingsRows(f);

            _rsb.SetText(1, dg.getCount().ToString() + " ярусов");
            _rsb.SetText(2, dg.getCount2().ToString() + " МИНИферм");
            _runF = f;
            return(dg);
        }
Example #4
0
        protected override IDataGetter onPrepare(Filters f)
        {
            base.onPrepare(f);
            gentree = Engine.opt().getIntOption(Options.OPT_ID.GEN_TREE) - 1;
            Options op = Engine.opt();

            f[Filters.SHORT]          = op.getOption(Options.OPT_ID.SHORT_NAMES);
            f[Filters.SHOW_BLD_TIERS] = op.getOption(Options.OPT_ID.SHOW_TIER_TYPE);
            f[Filters.SHOW_BLD_DESCR] = op.getOption(Options.OPT_ID.SHOW_TIER_SEC);
            f[Filters.DBL_SURNAME]    = op.getOption(Options.OPT_ID.DBL_SURNAME);
            f[Filters.SHOW_OKROL_NUM] = op.getOption(Options.OPT_ID.SHOW_NUMBERS);
            f[Filters.MAKE_BRIDE]     = op.getOption(Options.OPT_ID.MAKE_BRIDE);
            //flt["suc"] = op.getOption(Options.OPT_ID.COUNT_SUCKERS);
            f[Filters.MAKE_CANDIDATE] = op.getOption(Options.OPT_ID.MAKE_CANDIDATE);
            _runF = f;

            IDataGetter dg = Engine.db2().getRabbits(f);

            _rsb.SetText(1, dg.getCount().ToString() + " записей");
            _rsb.SetText(2, dg.getCount2().ToString() + " кроликов");

            this.rsbTotalCount = 0;

            return(dg);
        }
Example #5
0
        // Process the client connection.
        private static void DoAcceptTcpClientCallback(IAsyncResult ar, IDataWriter writer, IDataGetter reader, CancellationToken ct)
        {
            if (ct.IsCancellationRequested)
                return;
            // Get the listener that handles the client request.
            var listener = (TcpListener)ar.AsyncState;

            // End the operation
            var client = listener.EndAcceptTcpClient(ar);

            client.ReceiveTimeout = TimingConstants.ClientCommunicationTimeout;
            client.SendTimeout = TimingConstants.ClientCommunicationTimeout;
            writer.Log(new LogItem("New client is coming!", ((IPEndPoint)client.Client.RemoteEndPoint).Address.ToString()));
            try
            {
                var currentClient = new ClientThread(client, writer, reader);
                //
                Task.Run(() => currentClient.Execute(ct), ct);
            }
            catch (Exception e)
            {
                writer.Log(new LogItem("Server got an exception when client arrived: " + e.Message, "no ip"));
            }

            // Signal the calling thread to continue.
            _tcpClientConnected.Set();
        }
Example #6
0
        private IDataGetter rabStatusBar1_prepareGet()
        {
            listView1.Items.Clear();
            listView1.Hide();
            listView1.ListViewItemSorter = null;
            Filters f = new Filters();

            if (tabControl1.SelectedIndex == 0)
            {
                f["sex"] = "1";
            }
            else
            {
                f["sex"] = "2";
            }

            if (comboBox2.SelectedIndex != 0)
            {
                f["state"] = comboBox2.SelectedIndex.ToString();
            }

            IDataGetter gt = Engine.db2().getNames(f);

            rabStatusBar1.SetText(1, gt.getCount().ToString() + " имен");
            return(gt);
        }
Example #7
0
        // Конструктор класса. Ему нужно передавать принятого клиента от TcpListener
        public ClientThread(TcpClient client, IDataWriter writer, IDataGetter dataGetter)
        {
            _dataWriter = writer;
            _dataGetter = dataGetter;

            _client = client;
            _clientStream = client.GetStream();

            _clientStream.ReadTimeout = 30*1000;

            IP = ((IPEndPoint) _client.Client.RemoteEndPoint).Address.ToString();

            var signature = new byte[4];
            _clientStream.Read(signature, 0, 4);

            switch (BitConverter.ToInt32(signature, 0))
            {
                case OldProtocolConst.Con_Begin:
                    var readBuffer = new byte[220];
                    _clientStream.Read(readBuffer, 0, 220);
                    char[] charToTrim = {(char)0};
                    var pcName = System.Text.Encoding.GetEncoding(1251).GetString(readBuffer, 0, 100).TrimEnd(charToTrim);

                    var ip = System.Text.Encoding.GetEncoding(1251).GetString(readBuffer, 100, 20).TrimEnd(charToTrim);
                    var userName = System.Text.Encoding.GetEncoding(1251).GetString(readBuffer, 120, 100).TrimEnd(charToTrim);
                    Log(String.Format("New client: {0} from  {1}  User name: {2} ", pcName, ip, userName));
                    //string s = new string(read_buffer, 0, 100);
                    break;
                case OldProtocolConst.Con_End:
                    break;
                default:
                    throw new SystemException("Unknown signature");
            }
        }
Example #8
0
        public Client(Socket socket, int dataSize)
        {
            ClientSocket = socket;
            controller   = new ServiceController <MessageData>(socket, dataSize);

            dataGetter = new DefaultDataGetter();
        }
Example #9
0
        public Client(Socket socket, int dataSize, IDataGetter dataGetter)
        {
            ClientSocket = socket;
            controller   = new ServiceController <MessageData>(socket, dataSize);

            this.dataGetter = dataGetter;
        }
 public BlogPostDataManager(IDataGetter dataGetter, IDataConvertor dataConvertor, IPostRepository postRepository,
                            IDataDisplayer dataDisplayer)
 {
     _dataGetter     = dataGetter;
     _dataConvertor  = dataConvertor;
     _postRepository = postRepository;
     _dataDisplayer  = dataDisplayer;
 }
Example #11
0
    public LastSessionsDataGetter(IDataGetter currentData, IDataGetter receivedData)
    {
        //currentData могут быть с дефолтными значениями (т.е. пустые)

        Id              = receivedData.Id;
        Stats           = new LastSessionsStatsGetter(currentData.Stats, receivedData.Stats);
        InGamePurchases = new LastSessionsInGamePurchasesGetter(currentData.InGamePurchases, receivedData.InGamePurchases);
    }
 public void Setup()
 {
     _dataGetter     = Substitute.For <IDataGetter>();
     _postRepository = Substitute.For <IPostRepository>();
     _dataConvertor  = Substitute.For <IDataConvertor>();
     _dataDisplayer  = Substitute.For <IDataDisplayer>();
     _dataGetter.GetData().Returns(_data);
     _dataConvertor.ConvertMarkdownToHtml(_data).Returns(_data);
 }
Example #13
0
 private void SetIDataGetter(string pType)
 {
     switch (pType)
     {
     case "EUDataCenterJSONDataGetter":
         this._oIDataGetter = new EUDataCenterJSONDataGetter(this);
         break;
     }
 }
Example #14
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="db">Контекст данных для сохранений резервных данных и запили лога</param>
 /// <param name="rootLogger">Логгер вышестоящего действия</param>
 /// <param name="count">Необходимое кол-во заявок</param>
 /// <param name="rootGetter">Объект для получения корневых данных  с res api hh.ru</param>
 public GetterHHData(ref CurrentDbContext db, LoggerCurrent rootLogger, int count, IDataGetter <HHRootData, LoggerCurrent> rootGetter = null)
 {
     RootGetter = rootGetter;
     Logger     = new LoggerCurrent(ref db, rootLogger);
     if (RootGetter == null)
     {
         RootGetter = new GetterHHRootData(ref db, Logger, count);
     }
 }
Example #15
0
        private IDataGetter rsb_prepareGet()
        {
            cs.PrepareForUpdate();
            Filters f = fp.getFilters();

            IDataGetter gt = Engine.db2().getDead(f);

            rsb.SetText(1, gt.getCount().ToString() + " записей");
            return(gt);
        }
Example #16
0
    public PlayerGameData(IDataGetter dataGetter)
    {
        if (dataGetter == null)
        {
            throw new ArgumentNullException(nameof(dataGetter));
        }

        Id              = dataGetter.Id;
        Stats           = new PlayerStatsData(dataGetter.Stats);
        InGamePurchases = new InGamePurchasesData(dataGetter.InGamePurchases);
    }
Example #17
0
    protected override void OnEnableWrapped()
    {
        PlayerDataModelController.InitializedInstance += (instance) =>
        {
            IDataGetter data = instance.DataInteraction.Getter;

            SetStatsText(data.Stats);
            SetInGamePurchasesText(data.InGamePurchases);

            SetRecordsText();
        };
    }
Example #18
0
 public Report(
     IDataGetter dataGetter,
     IDataValidator dataValidator,
     IDataFormatter dataFormatter,
     IReportDistributor reportDistributor
     )
 {
     _dataGetter        = dataGetter;
     _dataValidator     = dataValidator;
     _dataFormatter     = dataFormatter;
     _reportDistributor = reportDistributor;
 }
Example #19
0
 private void startDataThread(IDataGetter dg)
 {
     if (_dataThread != null)
     {
         this.stopDataThread();
     }
     _dataThread                  = new DataThread();
     _dataThread.OnItems         += new DTItemsHandler(_dataThread_onItems);
     _dataThread.OnFinish        += new RSBEventHandler(_dataThread_OnFinish);
     _dataThread.InitMaxProgress += new DTProgressHandler(initProgress);
     //_dataThread.Progress +=new DTProgressHandler(progress);
     _dataThread.Run(dg);
 }
Example #20
0
    public UsedDataGetter(IDataGetter currentSessionData, IDataGetter lastSessionsData)
    {
        if (currentSessionData == null)
        {
            throw new ArgumentNullException(nameof(currentSessionData));
        }
        if (lastSessionsData == null)
        {
            throw new ArgumentNullException(nameof(lastSessionsData));
        }

        Id = currentSessionData.Id;
        usedStatsGetter           = new UsedStatsGetter(currentSessionData.Stats, lastSessionsData.Stats);
        usedInGamePurchasesGetter = new UsedInGamePurchasesGetter(currentSessionData.InGamePurchases, lastSessionsData.InGamePurchases);
    }
        public static async Task <MessageData> GetMessageDataAsync(IDataGetter getter, int msgType, long handle)
        {
            try
            {
                //Console.Write("Enter a message to Send: ");
                var task = await Task <MessageData> .Factory.StartNew(() => getter.GetData(handle));

                //getter.SetData(null);
                return(task);
            }
            catch (Exception e)
            {
                throw;
            }
        }
Example #22
0
        protected override IDataGetter onPrepare(Filters f)
        {
            _colSort.PrepareForUpdate();
            if (f == null)
            {
                f = new Filters();
            }
            f.Add("type", Engine.opt().getOption(Options.OPT_ID.BUCHER_TYPE));

            IDataGetter dg = Engine.db2().getButcherDates(f);

            _rsb.SetText(1, dg.getCount().ToString() + " дат забоя");
            _rsb.SetText(2, dg.getCount2().ToString() + " забито");
            return(dg);
        }
Example #23
0
 private void btn_Click(object sender, EventArgs e)
 {
     ///если кнопка имеет вид "Обновить"
     if ((int)btRefreshStop.Tag == 0)
     {
         if (PrepareGet != null)
         {
             IDataGetter dg = PrepareGet();
             startDataThread(dg);
         }
     }
     else
     {
         stopDataThread();
         _dataThread_OnFinish();
     }
 }
Example #24
0
        //public event DTProgressHandler Progress;

        /// <summary>
        /// Запускает отдельный поток, который получает данные.
        /// </summary>
        /// <param name="getter"></param>
        public void Run(IDataGetter getter /*, RabStatusBar sb, RSBItemEventHandler onItem*/)
        {
            if (_thr != null && _thr.IsAlive)
            {
                Stop();
                Thread.Sleep(100);
            }
            _dataGetter = getter;
            if (_dataGetter == null)
            {
                this.onFinish();
                return;
            }

            //_rabStatusBar = sb;
            //_onItem = onItem;
            _stopRequired = false;
            _thr          = new Thread(threadProc);
            _thr.Start();
        }
Example #25
0
    public static string ToJson(IDataGetter data, out bool isSuccess, out Exception exception)
    {
        try
        {
            string json = JsonConvert.SerializeObject(data, serializerSettings);
            isSuccess = true;
            exception = null;

            return(json);
        }
        catch (Exception catchedException)
        {
            Debug.LogError($"Неуспешная попытка сериализации: {catchedException.Message}");

            isSuccess = false;
            exception = catchedException;

            return(null);
        }
    }
Example #26
0
 protected void _dataThread_onItems(IDataGetter dataGetter)
 {
     if (this.InvokeRequired)
     {
         DTItemsHandler d = new DTItemsHandler(_dataThread_onItems);
         this.Invoke(d, new object[] { dataGetter });
     }
     else
     {
         IData it;
         while ((it = dataGetter.GetNextItem()) != null)
         {
             if (this.ItemGet != null)
             {
                 this.ItemGet(it);
             }
             this.progress();
         }
     }
 }
Example #27
0
        protected override IDataGetter onPrepare(Filters f)
        {
            tvGens.MaxNodesCount = Engine.opt().getIntOption(Options.OPT_ID.GEN_TREE) - 1;
            f = new Filters();
            Options op = Engine.opt();

            f[Filters.SHORT]          = op.getOption(Options.OPT_ID.SHORT_NAMES);
            f[Filters.SHOW_BLD_TIERS] = op.getOption(Options.OPT_ID.SHOW_TIER_TYPE);
            f[Filters.SHOW_BLD_DESCR] = op.getOption(Options.OPT_ID.SHOW_TIER_SEC);
            f[Filters.DBL_SURNAME]    = op.getOption(Options.OPT_ID.DBL_SURNAME);
            f[Filters.SHOW_OKROL_NUM] = op.getOption(Options.OPT_ID.SHOW_NUMBERS);
            _runF = f;
            _colSort.PrepareForUpdate();

            IDataGetter dg = Engine.db2().GetYoungers(f);

            //отображение общей инфы в статус баре
            _rsb.SetText(1, dg.getCount().ToString() + " строк");
            _rsb.SetText(2, dg.getCount2().ToString() + " кроликов");
            _rsb.SetText(3, dg.getCount3().ToString() + " кормилиц");
            _rsb.SetText(4, String.Format("{0:f2} среднее количество подсосных", dg.getCount4()));
            return(dg);
        }
Example #28
0
    private void CreateSavedGame(IDataGetter data)
    {
        if (data == null)
        {
            throw new ArgumentNullException(nameof(data));
        }

        string json = DataConverter.ToJson(data, out bool isSerializationSuccess, out Exception _);

        if (!isSerializationSuccess)
        {
            return;
        }
        byte[] dataToSave = Encoding.UTF8.GetBytes(json);

        if (currentGameMetadata == null)
        {
            OpenSavedGame((gameRequestStatus, gameMetadata) =>
            {
                if (gameRequestStatus == SavedGameRequestStatus.Success)
                {
                    // Получаем метаданные открытого файла
                    currentGameMetadata = gameMetadata;

                    SaveData(dataToSave);
                }
                else
                {
                    return;
                }
            });

            return;
        }

        SaveData(dataToSave);
    }
Example #29
0
        public static void DoAcceptConnections(int port, IDataWriter writer, IDataGetter reader, CancellationToken ct)
        {
            writer.Log(new LogItem("Server is starting now", "no ip"));
            var listener = new TcpListener(IPAddress.Any, port);
            _tcpClientConnected =  new ManualResetEvent(false);

            try
            {
                listener.Start();
                writer.Log(new LogItem("Server is started and begin to listen", "All IP"));

                var connected = true;

                while (!ct.IsCancellationRequested)
                {
                    if (connected)
                    {
                        _tcpClientConnected.Reset();
                        listener.BeginAcceptTcpClient(
                            ar => DoAcceptTcpClientCallback(ar, writer, reader, ct),
                            listener);
                    }

                    connected = _tcpClientConnected.WaitOne(TimingConstants.DefaultWaitTime);
                }

            }
            catch (SocketException e)
            {
                writer.Log(new LogItem("Server got an socket error: " + e.Message, "no ip"));
            }
            finally
            {
                listener.Stop();
                writer.Log(new LogItem("Server is terminated", "no ip"));
            }
        }
Example #30
0
    private IDataGetter CombineDataFromStorages(IDataGetter currentData, IDataGetter receivedData)
    {
        // currentData по определению не может быть null
        if (currentData == null)
        {
            throw new ArgumentNullException(nameof(currentData));
        }
        // receivedData может быть null
        if (receivedData == null)
        {
            return(currentData);
        }

        if (currentData.Equals(receivedData))
        {
            return(currentData);
        }
        else
        {
            IDataGetter returnedDataGetter;

            if (currentData.Id != receivedData.Id)
            {
                // TODO: Вывод диалогового окна
                throw new NotImplementedException();
            }
            else
            {
                // TODO: скомбинировать значения полей по правилам.
                returnedDataGetter = new LastSessionsDataGetter(currentData, receivedData);
            }

            readerWriter.WriteAllData(new PlayerGameData(returnedDataGetter));
            return(returnedDataGetter);
        }
    }
Example #31
0
 public Controller(IDataGetter dg)
 {
     dataGetter = dg;
     Refresh();
 }
 public MyController(IDataGetter dataGetter)
 {
     _dataGetter = dataGetter;
 }
Example #33
0
 public void SetData(object data, IDataGetter getter)
 {
     DataGetter = getter;
     DataGetter.SetData(data);
 }