Exemple #1
0
        private void PlayerDropped([FromSource] Player player, string reason)
        {
            IRedisClient <string> client = pool.GetClient();

            string[] handles = client.SMembers($"entities_{player.Handle}");

            client.Pipeline(c =>
            {
                foreach (string handle in handles)
                {
                    client.SRem("entities", $"{player.Handle}_{handle}");
                    client.Del($"meta_{player.Handle}_{handle}");
                }
            });

            client.Del($"entities_{player.Handle}");
        }
Exemple #2
0
        /// <summary>
        /// Unregister is an event sent from a client to let the server cleanup a tracked entity.
        /// </summary>
        /// <param name="player">the player</param>
        /// <param name="handle">the entity's handle</param>
        private void Unregister([FromSource] Player player, int handle)
        {
            IRedisClient <string> client = pool.GetClient();

            client.Del($"meta_{player.Handle}_{handle}");
            client.SRem($"entities_{player.Handle}", handle.ToString());
            client.SRem($"entities", $"{player.Handle}_{handle}");
        }
        public Form1()
        {
            string json = ReadAllText("station.conf");

            Program.myConf = JsonConvert.DeserializeObject <Conf>(json);

            if (Program.myConf != null)
            {
                csredis = new RedisClient(Program.myConf.serverMsg);

                if (csredis == null)
                {
                    toolStripStatusLabel3.Text = "Cache No Connected";
                }
            }


            string partesTemp = ReadAllText("lista.temp");


            if (partesTemp != "{}\r\n")
            {
                partes = JsonConvert.DeserializeObject <List <string> >(partesTemp);
            }
            else
            {
                WriteAllText("", "lista.temp");
            }


            if (partes != null)
            {
                foreach (string p in partes)
                {
                    if (csredis != null)
                    {
                        csredis.Del(p);
                    }
                }

                WriteAllText("", "lista.temp");
                partes.Clear();
            }
            else
            {
                partes = new List <string>();
            }


            if (Program.myConf != null)
            {
                consumerFanOut = new ConsumerFanOut(Program.myConf.serverMsg, "stations", "s" + Program.myConf.nostattion);

                consumerFanOut.onMessageReceived += handleMessage;
                consumerFanOut.StartConsuming();
            }

            InitializeComponent();

            DBConnect.server   = Program.myConf.serverMySQL;
            DBConnect.uid      = Program.myConf.userMySQL;
            DBConnect.password = Program.myConf.passMySQL;
            DBConnect.database = Program.myConf.db;


            dBConnect = DBConnect.getInstance();

            String sSQL = "SELECT * FROM " + Program.myConf.db + "." + Program.myConf.table + ";";

            ll = dBConnect.SelectParte("SELECT * FROM " + Program.myConf.db + "." + Program.myConf.table + ";");

            MaximizeBox = false;
            MinimizeBox = false;


            try
            {
                producer = new Producer();
            }
            catch (Exception e)
            {
                toolStripStatusLabel1.Text = "Msg No Connected";
                producer = null;
            }


            Program.myConf.mapSAP1.Clear();

            foreach (Parte p in ll)
            {
                Program.myConf.mapSAP1.Add(p.nSAP, p);
            }

            mapSAP1 = Program.myConf.mapSAP1;

            this.myDelegate = new AddDataDelegate(setText);


            ThreadStart delegado    = new ThreadStart(CorrerProceso);
            Thread      hiloSession = new Thread(delegado);
        }