public void Startup(ConfigurationLoader loader) { m_Commands = loader.CommandRegistry; m_WebIF = loader.GetAdminWebIF(); m_WebIF.ModuleNames.Add("console"); m_WebIF.JsonMethods.Add("console.command", ConsoleCommand); }
public void ConsoleCommand(HttpRequest req, Map jsondata) { string cmd; if (!jsondata.TryGetValue("command", out cmd)) { req.ErrorResponse(HttpStatusCode.BadRequest, "Bad Request"); return; } using (HttpResponse res = req.BeginResponse("text/plain")) { using (Stream o = res.GetOutputStream()) { using (StreamWriter w = o.UTF8StreamWriter()) { IAdminWebIF webif = m_WebIF; if (webif != null) { var tty = new ConsoleAdminTty(w) { SelectedScene = webif.GetSelectedRegion(req, jsondata) }; m_Commands.ExecuteCommandString(cmd, tty); webif.SetSelectedRegion(req, jsondata, tty.SelectedScene); } } } } }
public static Map ToJsonMap(this EstateInfo estate, IAdminWebIF webif) => new Map { { "ID", (int)estate.ID }, { "ParentEstateID", (int)estate.ParentEstateID }, { "Name", estate.Name }, { "Flags", ((uint)estate.Flags).ToString() }, { "Owner", webif.ResolveName(estate.Owner).ToMap() }, { "PricePerMeter", estate.PricePerMeter }, { "BillableFactor", estate.BillableFactor }, { "SunPosition", estate.SunPosition }, { "AbuseEmail", estate.AbuseEmail }, { "UseGlobalTime", estate.UseGlobalTime } };
public void Startup(ConfigurationLoader loader) { List <IAdminWebIF> webifs = loader.GetServicesByValue <IAdminWebIF>(); if (webifs.Count > 0) { m_AdminWebIF = webifs[0]; m_AdminWebIF.JsonMethods.Add("npcs.show", HandleShowNpcs); m_AdminWebIF.JsonMethods.Add("npc.remove", HandleRemoveNpc); m_AdminWebIF.JsonMethods.Add("npc.get", HandleGetNpc); m_AdminWebIF.AutoGrantRights["npcs.manage"].Add("npcs.view"); m_AdminWebIF.ModuleNames.Add("npcs"); } /* non persistent inventory is needed for baking logic */ m_NonpersistentInventoryService = loader.GetService <InventoryServiceInterface>(m_NonpersistentInventoryServiceName); m_NonpersistentAgentServices.Add(m_NonpersistentInventoryService); m_NonpersistentAgentServices.Add(new NpcNonPersistentPresenceService()); /* persistence is optional */ if (!string.IsNullOrEmpty(m_NpcPresenceServiceName) || !string.IsNullOrEmpty(m_PersistentInventoryServiceName)) { m_NpcPresenceService = loader.GetService <NpcPresenceServiceInterface>(m_NpcPresenceServiceName); m_PersistentAgentServices.Add(m_NpcPresenceService); m_PersistentInventoryService = loader.GetService <InventoryServiceInterface>(m_PersistentInventoryServiceName); m_PersistentAgentServices.Add(m_PersistentInventoryService); /* profile is optional */ if (!string.IsNullOrEmpty(m_PersistentProfileServiceName)) { m_PersistentProfileService = loader.GetService <ProfileServiceInterface>(m_PersistentProfileServiceName); m_PersistentAgentServices.Add(m_PersistentProfileService); } } /* profile is optional */ if (!string.IsNullOrEmpty(m_NonpersistentProfileServiceName)) { m_NonpersistentProfileService = loader.GetService <ProfileServiceInterface>(m_NonpersistentProfileServiceName); m_NonpersistentAgentServices.Add(m_NonpersistentProfileService); } loader.Scenes.OnRegionAdd += OnSceneAdded; loader.Scenes.OnRegionRemove += OnSceneRemoved; loader.CommandRegistry.AddShowCommand("npcs", ShowNpcsCommand); loader.CommandRegistry.AddRemoveCommand("npc", RemoveNpcCommand); loader.CommandRegistry.AddCreateCommand("npc", CreateNpcCommand); loader.CommandRegistry.AddRemoveAllCommand("npcs", RemoveAllNpcsCommand); }
public void Startup(ConfigurationLoader loader) { m_WebIF = loader.GetAdminWebIF(); m_RegionDefaultFlagsService = loader.GetService <RegionDefaultFlagsServiceInterface>(m_RegionDefaultFlagsServiceName); m_GridService = loader.GetService <GridServiceInterface>(m_GridServiceName); m_WebIF.ModuleNames.Add("mapserver"); m_WebIF.AutoGrantRights["mapserver.unregister"].Add("mapserver.view"); m_WebIF.AutoGrantRights["mapserver.manage"].Add("mapserver.view"); m_WebIF.JsonMethods.Add("mapserver.search", HandleMapServerSearch); m_WebIF.JsonMethods.Add("mapserver.getdefaultregions", HandleMapServerGetDefaultRegions); m_WebIF.JsonMethods.Add("mapserver.getdefaulthgregions", HandleMapServerGetDefaultHGRegions); m_WebIF.JsonMethods.Add("mapserver.getfallbackregions", HandleMapServerGetFallbackRegions); m_WebIF.JsonMethods.Add("mapserver.unregister", HandleMapServerUnregisterRegion); m_WebIF.JsonMethods.Add("mapserver.defaultregionflags.list", HandleMapServerGetDefaultRegionFlags); m_WebIF.JsonMethods.Add("mapserver.defaultregionflags.change", HandleMapServerChangeDefaultRegionFlags); }
public void Startup(ConfigurationLoader loader) { m_WebIF = loader.GetAdminWebIF(); m_WebIF.ModuleNames.Add("packageadmin"); m_WebIF.JsonMethods.Add("packages.list.installed", PackagesInstalledList); m_WebIF.JsonMethods.Add("packages.list.available", PackagesAvailableList); m_WebIF.JsonMethods.Add("package.install", PackageInstall); m_WebIF.JsonMethods.Add("package.uninstall", PackageUninstall); m_WebIF.JsonMethods.Add("packages.updates.available", PackageUpdatesAvailable); m_WebIF.JsonMethods.Add("packages.update.feed", PackagesUpdateFeed); m_WebIF.JsonMethods.Add("package.get.installed", PackageGetInstalledDetails); m_WebIF.JsonMethods.Add("package.get.available", PackageGetAvailableDetails); m_WebIF.JsonMethods.Add("package.get", PackageGetDetails); m_WebIF.JsonMethods.Add("packages.update.system", PackageUpdateSystem); m_WebIF.AutoGrantRights["packages.install"].Add("packages.view"); m_WebIF.AutoGrantRights["packages.uninstall"].Add("packages.view"); }
public void Startup(ConfigurationLoader loader) { m_Scenes = loader.Scenes; m_EstateService = loader.GetService <EstateServiceInterface>(m_EstateServiceName); m_RegionStorageService = loader.GetService <GridServiceInterface>(m_RegionStorageName); IAdminWebIF webif = loader.GetAdminWebIF(); m_WebIF = webif; webif.ModuleNames.Add("estates"); webif.JsonMethods.Add("estates.list", HandleList); webif.JsonMethods.Add("estate.get", HandleGet); webif.JsonMethods.Add("estate.update", HandleUpdate); webif.JsonMethods.Add("estate.delete", HandleDelete); webif.JsonMethods.Add("estate.create", HandleCreate); webif.JsonMethods.Add("estate.notice", HandleNotice); webif.AutoGrantRights["estates.manage"].Add("estates.view"); webif.AutoGrantRights["estate.notice"].Add("estates.view"); }
public void Startup(ConfigurationLoader loader) { m_AccountDeleteServices = loader.GetServicesByValue <IUserAccountDeleteServiceInterface>(); m_UserAccountService = loader.GetService <UserAccountServiceInterface>(m_UserAccountServiceName); m_AuthInfoService = loader.GetService <AuthInfoServiceInterface>(m_AuthInfoServiceName); var webif = loader.GetAdminWebIF(); m_WebIF = webif; webif.ModuleNames.Add("useraccounts"); webif.AutoGrantRights["useraccounts.manage"].Add("useraccounts.view"); webif.AutoGrantRights["useraccounts.delete"].Add("useraccounts.view"); webif.AutoGrantRights["useraccounts.create"].Add("useraccounts.view"); webif.JsonMethods.Add("useraccounts.search", HandleUserAccountSearch); webif.JsonMethods.Add("useraccount.get", HandleUserAccountGet); webif.JsonMethods.Add("useraccount.change", HandleUserAccountChange); webif.JsonMethods.Add("useraccount.delete", HandleUserAccountDelete); webif.JsonMethods.Add("useraccount.changepassword", HandleUserAccountChangePassword); webif.JsonMethods.Add("useraccount.create", HandleUserAccountCreate); }
public static Map ToJsonMap(this RegionInfo region, IAdminWebIF webif) { var m = new Map { { "ID", region.ID }, { "Location", region.Location.GridLocation }, { "Size", region.Size.GridLocation }, { "Name", region.Name }, { "ServerIP", region.ServerIP }, { "ServerHttpPort", (int)region.ServerHttpPort }, { "ServerURI", region.ServerURI }, { "ServerPort", (int)region.ServerPort }, { "RegionMapTexture", region.ParcelMapTexture.ToString() }, { "ProductName", region.ProductName } }; switch (region.Access) { case RegionAccess.PG: m.Add("Access", "pg"); break; case RegionAccess.Mature: m.Add("Access", "mature"); break; case RegionAccess.Adult: m.Add("Access", "adult"); break; default: m.Add("Access", "unknown"); break; } m.Add("Owner", webif.ResolveName(region.Owner).ToMap()); m.Add("Flags", ((uint)region.Flags).ToString()); return(m); }
public void Shutdown() { m_WebIF = null; }