Esempio n. 1
0
        public GameUpdate GetGameUpdate()
        {
            var config = MinecraftCronConfiguration.GetConfiguration();

            var newId = Regex.Replace(this.Version, "[^0-9]", "");

            int.TryParse(newId, out var parsedId);

            var variables = new Dictionary <string, object>
            {
                { "Update", this }
            };

            var gameUpdate = new GameUpdate
            {
                Name            = config.SpigotSettings.NameTemplate.ReplaceWithVariables(variables),
                GroupName       = config.SpigotSettings.Group,
                WindowsFileName = $"{GetDownloadUrl(Version)} minecraft_server.jar",
                LinuxFileName   = $"{GetDownloadUrl(Version)} minecraft_server.jar",
                ExtractPath     = "/",
                Reinstallable   = true,
                DefaultInstall  = false,
                GameId          = config.GameId,
                Comments        = config.SpigotSettings.Description.ReplaceWithVariables(variables),
                UserAccess      = true,
                SubAdminAccess  = true,
                ResellerAccess  = true,
                ViewOrder       = config.SpigotSettings.UseVersionAsViewOrder ? parsedId : 0
            };

            gameUpdate.GenerateKey();
            return(gameUpdate);
        }
        public GameUpdate CreateGameUpdate()
        {
            var config = MinecraftCronConfiguration.GetConfiguration();

            var newId = Regex.Replace(this.Id, "[^0-9]", "");

            int.TryParse(newId, out var parsedId);

            var variables = new Dictionary <string, object>
            {
                { "Update", this },
                { "Update.Version", this.Id }
            };

            Console.WriteLine("Name = " + config.VanillaSettings.NameTemplate.ReplaceWithVariables(variables));
            var gameUpdate = new GameUpdate
            {
                Name            = config.VanillaSettings.NameTemplate.ReplaceWithVariables(variables),
                GroupName       = this.Type == "release" ? config.VanillaSettings.Group : config.VanillaSettings.SnapshotGroup,
                WindowsFileName = $"{this.Downloads.Server.Url} minecraft_server.jar",
                LinuxFileName   = $"{this.Downloads.Server.Url} minecraft_server.jar",
                ExtractPath     = "/",
                Reinstallable   = true,
                DefaultInstall  = false,
                GameId          = config.GameId,
                Comments        = config.VanillaSettings.Description.ReplaceWithVariables(variables),
                UserAccess      = true,
                SubAdminAccess  = true,
                ResellerAccess  = true,
                ViewOrder       = config.VanillaSettings.UseVersionAsViewOrder ? parsedId : 0
            };

            gameUpdate.GenerateKey();
            return(gameUpdate);
        }
        public static void RegisterCrons()
        {
            LogManager.Write("Initializing Cron Registry", LogType.Console);
            var config = MinecraftCronConfiguration.GetConfiguration();

            CronRegistry.NonReentrantAsDefault();
            CronRegistry.Schedule <MinecraftVanillaUpdatesCron>().AndThen <MinecraftPaperUpdatesCron>()
            .AndThen <MinecraftSpigotUpdatesCron>().AndThen <MinecraftBukkitUpdatesCron>().ToRunNow().AndEvery(config.Seconds)
            .Seconds();

            JobManager.Initialize(CronRegistry);

            foreach (var schedule in JobManager.AllSchedules)
            {
                LogManager.Write($"{schedule.Name} has been scheduled to run at {schedule.NextRun:F}",
                                 LogType.Console);
            }
        }
Esempio n. 4
0
 public ActionResult Minecraft(MinecraftCronConfiguration model)
 {
     MinecraftCronConfiguration.SetConfiguration(model);
     return(View(model));
 }
Esempio n. 5
0
        public ActionResult Minecraft()
        {
            var model = MinecraftCronConfiguration.GetConfiguration();

            return(View(model));
        }