LogTile.TileQueue.addHook C# (CSharp) Method

addHook() public method

public addHook ( ) : void
return void
        public void addHook()
        {
            NetHooks.GetData += ParseData;
        }

Usage Example

Beispiel #1
0
        public void StartLogTile()
        {
            queue = new TileQueue(this);
            log = new Logger(queue);
            helper = new TileHelper();
            com = new Commands(log);

            if (TShock.Config.StorageType.ToLower() == "sqlite")
            {
                string sql = Path.Combine(TShock.SavePath, "logtile.sqlite");
                DB = new SqliteConnection(string.Format("uri=file://{0},Version=3", sql));
            }
            else if (TShock.Config.StorageType.ToLower() == "mysql")
            {
                try
                {
                    var hostport = TShock.Config.MySqlHost.Split(':');
                    DB = new MySqlConnection();
                    DB.ConnectionString =
                        String.Format("Server={0}; Port={1}; Database={2}; Uid={3}; Pwd={4};",
                                      hostport[0],
                                      hostport.Length > 1 ? hostport[1] : "3306",
                                      TShock.Config.MySqlDbName,
                                      TShock.Config.MySqlUsername,
                                      TShock.Config.MySqlPassword
                            );
                }
                catch (MySqlException ex)
                {
                    Log.Error(ex.ToString());
                    throw new Exception("MySql not setup correctly");
                }
            }
            else
            {
                throw new Exception("Invalid storage type");
            }
            var table = new SqlTable("LogTile",
                                     new SqlColumn("id", MySqlDbType.Int32) {Primary = true, AutoIncrement = true},
                                     new SqlColumn("X", MySqlDbType.Int32),
                                     new SqlColumn("Y", MySqlDbType.Int32),
                                     new SqlColumn("IP", MySqlDbType.Int32),
                                     new SqlColumn("Name", MySqlDbType.Text),
                                     new SqlColumn("Action", MySqlDbType.Int32),
                                     new SqlColumn("TileType", MySqlDbType.Int32),
                                     new SqlColumn("Date", MySqlDbType.Int32)
                );
            var creator = new SqlTableCreator(DB,
                                              DB.GetSqlType() == SqlType.Sqlite
                                              	? (IQueryBuilder) new SqliteQueryCreator()
                                              	: new MysqlQueryCreator());
            creator.EnsureExists(table);

            logThread = new Thread(log.SaveTimer);
            CommandQueueThread = new Thread( CommandQueue.ProcessQueue);

            logThread.Start();
            CommandQueueThread.Start();

            queue.addHook();
            com.addHook();

            fileWriter = new Thread(ConfigFileManager);
            fileWriter.Start();
        }
All Usage Examples Of LogTile.TileQueue::addHook