public static void Initialize()
        {
            DirectoryGenerator.InitializeStreams(typeof(AllianceListMessage), typeof(AllianceVersatileInfoListMessage),
                                                 typeof(GuildListMessage), typeof(GuildVersatileInfoListMessage));

            DirectoryGenerator.Generate();
        }
        private static void Generate()
        {
            lock (DirectoryGenerator._lock)
            {
                DirectoryGenerator.Generate <AllianceListMessage>(DirectoryGenerator.GenerateAllianceList);
                DirectoryGenerator.Generate <AllianceVersatileInfoListMessage>(DirectoryGenerator.GenerateAllianceVersatileList);

                DirectoryGenerator.Generate <GuildListMessage>(DirectoryGenerator.GenerateGuildList);
                DirectoryGenerator.Generate <GuildVersatileInfoListMessage>(DirectoryGenerator.GenerateGuildVersatileList);
            }

            Task.Factory.StartNewDelayed(DirectoryGenerator.NextDirectoryActualization, DirectoryGenerator.Generate);
        }