public override CommandResponse ProcessCommand(object sender, IntegrationEventArgs args) { var thisService = (Service)sender; var serviceEvent = (ServiceEvent)args.Arguments[0]; if (thisService == null) { return(new CommandResponse("d3b2aa93-7e2b-4e0d-8080-67d14b2fa8a9", ReturnStatus.SafeError)); } switch (serviceEvent) { case ServiceEvent.BeforeDelete: case ServiceEvent.BeforeReinstall: MySqlController.DeleteDatabase(thisService); break; case ServiceEvent.BeforeMove: MySqlController.BackupDatabaseOnMove(thisService, (TCAdmin.GameHosting.SDK.Automation.GameHostingMoveInfo)((System.Collections.Generic.Dictionary <string, object>)args.Arguments[1])["ThisGameHostingMoveInfo"]); break; case ServiceEvent.AfterMove: MySqlController.RestoreDatabaseOnMove(thisService, (TCAdmin.GameHosting.SDK.Automation.GameHostingMoveInfo)((System.Collections.Generic.Dictionary <string, object>)args.Arguments[1])["ThisGameHostingMoveInfo"]); break; } return(new CommandResponse("d3b2aa93-7e2b-4e0d-8080-67d14b2fa8a9", ReturnStatus.Ok)); }
public override CommandResponse ProcessCommand(object sender, IntegrationEventArgs args) { var thisService = (Service)sender; var serviceEvent = (ServiceEvent)args.Arguments[0]; if (thisService == null) { return(new CommandResponse("d3b2aa93-7e2b-4e0d-8080-67d14b2fa8a9", ReturnStatus.SafeError)); } switch (serviceEvent) { case ServiceEvent.BeforeDelete: case ServiceEvent.BeforeReinstall: MySqlController.DeleteDatabase(thisService); break; case ServiceEvent.BeforeMove: MySqlController.BackupDatabaseOnMove(thisService); break; case ServiceEvent.AfterMove: MySqlController.RestoreDatabaseOnMove(thisService); break; } return(new CommandResponse("d3b2aa93-7e2b-4e0d-8080-67d14b2fa8a9", ReturnStatus.Ok)); }
public override CommandResponse ProcessCommand(object sender, IntegrationEventArgs args) { if (args.Command != "AfterMove") { return(new CommandResponse(Globals.ModuleId, ReturnStatus.Ok)); } var service = (Service)sender; var subdomainSet = service.Variables.HasValueAndSet("SD-FullSubDomain"); if (!subdomainSet) { return(new CommandResponse(Globals.ModuleId, "Subdomain was not set.", ReturnStatus.SafeError)); } if (args.Command == ServiceEvent.AfterMove.ToString()) { return(AfterMove(service)); } if (args.Command == ServiceEvent.AfterDelete.ToString()) { return(AfterDelete(service)); } return(new CommandResponse(Globals.ModuleId, "Unknown Service Event", ReturnStatus.SafeError)); }
/// <summary> /// Integrates deserialized tasks into the runtime environment of the current application /// </summary> /// <param name="sender">the event-sender</param> /// <param name="e">the integration arguments containing the package that needs to be integrated</param> private void IntegratePendingTasks(object sender, IntegrationEventArgs e) { IntegrateTask((TTask)e.Task); }