コード例 #1
0
 public void StoreAgentLoginData(UserLogAgentData AgentData)
 {
     try
     {
         UpdateAgentTable(AgentData);
     }
     catch (Exception ex)
     {
         m_log.ErrorFormat("[UserLogModule]: MySQL Exception: {0}", ex);
     }
 }
コード例 #2
0
        private void UpdateAgentTable(UserLogAgentData agentData)
        {
            lock (this)
            {
                using (MySqlConnection connection = new MySqlConnection(m_connectionString))
                {
                    connection.Open();

                    using (MySqlCommand cmd = connection.CreateCommand())
                    {
                        cmd.CommandText = "REPLACE INTO userlog_agent (region_id, agent_id, agent_name, " +
                                          "agent_pos, agent_ip, agent_country, agent_viewer,agent_grid, agent_time) " +
                                          "VALUES (" +
                                          "?region_id, ?agent_id, ?agent_name, ?agent_pos, ?agent_ip, ?agent_country, " +
                                          "?agent_viewer, ?agent_grid, ?agent_time)";

                        cmd.Parameters.AddWithValue("region_id", agentData.RegionID.ToString());
                        cmd.Parameters.AddWithValue("region_name", agentData.RegionName);
                        cmd.Parameters.AddWithValue("agent_id", agentData.ID.ToString());
                        cmd.Parameters.AddWithValue("agent_name", agentData.Name);
                        cmd.Parameters.AddWithValue("agent_pos", agentData.Position);
                        cmd.Parameters.AddWithValue("agent_ip", agentData.IP);
                        cmd.Parameters.AddWithValue("agent_country", agentData.CountryCode);
                        cmd.Parameters.AddWithValue("country_name", agentData.CountryName);
                        cmd.Parameters.AddWithValue("agent_viewer", agentData.Viewer);
                        cmd.Parameters.AddWithValue("agent_grid", agentData.Grid);
                        cmd.Parameters.AddWithValue("agent_time", Util.UnixTimeSinceEpoch().ToString());
                        cmd.ExecuteNonQuery();

                        cmd.CommandText = "REPLACE INTO userlog_country (country_code, country_name) " +
                                          "VALUES (" +
                                          "?agent_country, ?country_name)";

                        cmd.ExecuteNonQuery();

                        cmd.CommandText = "REPLACE INTO userlog_region (region_id, region_name) " +
                                          "VALUES (" +
                                          "?region_id, ?region_name)";

                        cmd.ExecuteNonQuery();

                        cmd.CommandText = "REPLACE INTO userlog_viewer (viewer) " +
                                          "VALUES (" +
                                          "?agent_viewer)";

                        cmd.ExecuteNonQuery();
                        cmd.Parameters.Clear();
                    }
                }
            }
        }
コード例 #3
0
        public void StoreAgentLoginData(UserLogAgentData AgentData)
        {
            Hashtable ReqHash = new Hashtable();

            ReqHash["region_id"]          = AgentData.RegionID.ToString();
            ReqHash["region_name"]        = AgentData.RegionName;
            ReqHash["agent_position"]     = AgentData.Position;
            ReqHash["agent_id"]           = AgentData.ID.ToString();
            ReqHash["agent_name"]         = AgentData.Name;
            ReqHash["agent_ip"]           = AgentData.IP;
            ReqHash["agent_country_code"] = AgentData.CountryCode;
            ReqHash["agent_country_name"] = AgentData.CountryName;
            ReqHash["agent_viewer"]       = AgentData.Viewer;
            ReqHash["agent_grid"]         = AgentData.Grid;

            XMLRPCRequest(ReqHash, "userlog_update");
        }
コード例 #4
0
        public void StoreAgentLoginData(UserLogAgentData AgentData)
        {
            Hashtable ReqHash = new Hashtable();

            ReqHash["region_id"] = AgentData.RegionID.ToString();
            ReqHash["region_name"] = AgentData.RegionName;
            ReqHash["agent_position"] = AgentData.Position;
            ReqHash["agent_id"] = AgentData.ID.ToString();
            ReqHash["agent_name"] = AgentData.Name;
            ReqHash["agent_ip"] = AgentData.IP;
            ReqHash["agent_country_code"] = AgentData.CountryCode;
            ReqHash["agent_country_name"] = AgentData.CountryName;
            ReqHash["agent_viewer"] = AgentData.Viewer;
            ReqHash["agent_grid"] = AgentData.Grid;

            XMLRPCRequest(ReqHash, "userlog_update");
        }
コード例 #5
0
 public void StoreAgentLoginData(UserLogAgentData AgentData)
 {
     m_log.WarnFormat("[UserLogModule]: Sqlite Data-Storage not supported.");
 }
コード例 #6
0
        private void UpdateAgentTable(UserLogAgentData agentData)
        {
            lock (this)
            {
                using (SqliteConnection connection = new SqliteConnection(m_connectionString))
                {
                    connection.Open();

                    using (SqliteCommand cmd = new SqliteCommand(
                        "REPLACE INTO userlog_agent (region_id, agent_id, agent_name, " +
                        "agent_pos, agent_ip, agent_country, agent_viewer,agent_grid, agent_time) " +
                        "VALUES (" +
                        ":region_id, :agent_id, :agent_name, :agent_pos, :agent_ip, :agent_country, " +
                        ":agent_viewer, :agent_grid, :agent_time)", connection))
                    {
                        cmd.Parameters.Add(":region_id", agentData.RegionID.ToString());
                        cmd.Parameters.Add(":region_name", agentData.RegionName);
                        cmd.Parameters.Add(":agent_id", agentData.ID.ToString());
                        cmd.Parameters.Add(":agent_name", agentData.Name);
                        cmd.Parameters.Add(":agent_pos", agentData.Position);
                        cmd.Parameters.Add(":agent_ip", agentData.IP);
                        cmd.Parameters.Add(":agent_country", agentData.CountryCode);
                        cmd.Parameters.Add(":country_name", agentData.CountryName);
                        cmd.Parameters.Add(":agent_viewer", agentData.Viewer);
                        cmd.Parameters.Add(":agent_grid", agentData.Grid);
                        cmd.Parameters.Add(":agent_time", Util.UnixTimeSinceEpoch().ToString());

                        cmd.ExecuteNonQuery();

                        cmd.CommandText = "REPLACE INTO userlog_country (country_code, country_name) " +
                            "VALUES (" +
                            ":agent_country, :country_name)";

                        cmd.ExecuteNonQuery();

                        cmd.CommandText = "REPLACE INTO userlog_region (region_id, region_name) " +
                            "VALUES (" +
                            ":region_id, :region_name)";

                        cmd.ExecuteNonQuery();

                        cmd.CommandText = "REPLACE INTO userlog_viewer (viewer) " +
                             "VALUES (" +
                             ":agent_viewer)";

                        cmd.ExecuteNonQuery();
                        cmd.Parameters.Clear();
                    }
                }
            }
        }
コード例 #7
0
 public void StoreAgentLoginData(UserLogAgentData AgentData)
 {
     try
     {
         UpdateAgentTable(AgentData);
     }
     catch (Exception ex)
     {
         m_log.ErrorFormat("[UserLogModule]: SQLite Exception: {0}", ex);
     }
 }
コード例 #8
0
 public void StoreAgentLoginData(UserLogAgentData AgentData)
 {
     m_log.WarnFormat("[UserLogModule]: Mssql Data-Storage not supported.");
 }