aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Client/Linden/LLStandaloneLoginModule.cs
diff options
context:
space:
mode:
authorArthur Valadares2009-05-21 20:28:59 +0000
committerArthur Valadares2009-05-21 20:28:59 +0000
commita85f496f4d097a4441ae9e6df8e282c4b327e75a (patch)
tree794b7cec23fab7803c7f3b4f496868ef96d01f53 /OpenSim/Client/Linden/LLStandaloneLoginModule.cs
parentnormalize quats before applying llSetRot() (diff)
downloadopensim-SC_OLD-a85f496f4d097a4441ae9e6df8e282c4b327e75a.zip
opensim-SC_OLD-a85f496f4d097a4441ae9e6df8e282c4b327e75a.tar.gz
opensim-SC_OLD-a85f496f4d097a4441ae9e6df8e282c4b327e75a.tar.bz2
opensim-SC_OLD-a85f496f4d097a4441ae9e6df8e282c4b327e75a.tar.xz
* Upgraded LLStandaloneLoginModule, LLProxyLoginModule and LLClientStackModule to new
region modules. This was needed because the stand alone and grid modules weren't deleting old scenes, which caused an issue when deleting and recreating a region with same name on same x,y coordinates. Tested it on standalone and issue is fixed. Requires prebuild to be run again. Fixes Mantis #3699
Diffstat (limited to '')
-rw-r--r--OpenSim/Client/Linden/LLStandaloneLoginModule.cs72
1 files changed, 52 insertions, 20 deletions
diff --git a/OpenSim/Client/Linden/LLStandaloneLoginModule.cs b/OpenSim/Client/Linden/LLStandaloneLoginModule.cs
index dbc401b..6474feb 100644
--- a/OpenSim/Client/Linden/LLStandaloneLoginModule.cs
+++ b/OpenSim/Client/Linden/LLStandaloneLoginModule.cs
@@ -1,4 +1,4 @@
1/* 1/*
2 * Copyright (c) Contributors, http://opensimulator.org/ 2 * Copyright (c) Contributors, http://opensimulator.org/
3 * See CONTRIBUTORS.TXT for a full list of copyright holders. 3 * See CONTRIBUTORS.TXT for a full list of copyright holders.
4 * 4 *
@@ -44,7 +44,7 @@ using OpenSim.Region.Framework.Interfaces;
44 44
45namespace OpenSim.Client.Linden 45namespace OpenSim.Client.Linden
46{ 46{
47 public class LLStandaloneLoginModule : IRegionModule, ILoginServiceToRegionsConnector 47 public class LLStandaloneLoginModule : ISharedRegionModule, ILoginServiceToRegionsConnector
48 { 48 {
49 //private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); 49 //private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
50 50
@@ -53,6 +53,8 @@ namespace OpenSim.Client.Linden
53 53
54 protected bool m_enabled = false; // Module is only enabled if running in standalone mode 54 protected bool m_enabled = false; // Module is only enabled if running in standalone mode
55 55
56 protected bool authenticate;
57 protected string welcomeMessage;
56 58
57 public bool RegionLoginsEnabled 59 public bool RegionLoginsEnabled
58 { 60 {
@@ -68,38 +70,44 @@ namespace OpenSim.Client.Linden
68 } 70 }
69 } 71 }
70 } 72 }
71 73
72 protected LLStandaloneLoginService m_loginService; 74 protected LLStandaloneLoginService m_loginService;
73 75
74 #region IRegionModule Members 76 #region IRegionModule Members
75 77
76 public void Initialise(Scene scene, IConfigSource source) 78 public void Initialise(IConfigSource source)
77 { 79 {
78 if (m_firstScene == null) 80 IConfig startupConfig = source.Configs["Startup"];
81 if (startupConfig != null)
79 { 82 {
80 m_firstScene = scene; 83 m_enabled = !startupConfig.GetBoolean("gridmode", false);
84 }
81 85
82 IConfig startupConfig = source.Configs["Startup"]; 86 if (m_enabled)
83 if (startupConfig != null) 87 {
88 authenticate = true;
89 welcomeMessage = "Welcome to OpenSim";
90 IConfig standaloneConfig = source.Configs["StandAlone"];
91 if (standaloneConfig != null)
84 { 92 {
85 m_enabled = !startupConfig.GetBoolean("gridmode", false); 93 authenticate = standaloneConfig.GetBoolean("accounts_authenticate", true);
94 welcomeMessage = standaloneConfig.GetString("welcome_message");
86 } 95 }
96 }
97 }
98
99 public void AddRegion(Scene scene)
100 {
101 if (m_firstScene == null)
102 {
103 m_firstScene = scene;
87 104
88 if (m_enabled) 105 if (m_enabled)
89 { 106 {
90 bool authenticate = true;
91 string welcomeMessage = "Welcome to OpenSim";
92 IConfig standaloneConfig = source.Configs["StandAlone"];
93 if (standaloneConfig != null)
94 {
95 authenticate = standaloneConfig.GetBoolean("accounts_authenticate", true);
96 welcomeMessage = standaloneConfig.GetString("welcome_message");
97 }
98
99 //TODO: fix casting. 107 //TODO: fix casting.
100 LibraryRootFolder rootFolder 108 LibraryRootFolder rootFolder
101 = m_firstScene.CommsManager.UserProfileCacheService.LibraryRoot as LibraryRootFolder; 109 = m_firstScene.CommsManager.UserProfileCacheService.LibraryRoot as LibraryRootFolder;
102 110
103 IHttpServer httpServer = m_firstScene.CommsManager.HttpServer; 111 IHttpServer httpServer = m_firstScene.CommsManager.HttpServer;
104 112
105 //TODO: fix the casting of the user service, maybe by registering the userManagerBase with scenes, or refactoring so we just need a IUserService reference 113 //TODO: fix the casting of the user service, maybe by registering the userManagerBase with scenes, or refactoring so we just need a IUserService reference
@@ -121,6 +129,14 @@ namespace OpenSim.Client.Linden
121 } 129 }
122 } 130 }
123 131
132 public void RemoveRegion(Scene scene)
133 {
134 if (m_enabled)
135 {
136 RemoveScene(scene);
137 }
138 }
139
124 public void PostInitialise() 140 public void PostInitialise()
125 { 141 {
126 142
@@ -131,6 +147,11 @@ namespace OpenSim.Client.Linden
131 147
132 } 148 }
133 149
150 public void RegionLoaded(Scene scene)
151 {
152
153 }
154
134 public string Name 155 public string Name
135 { 156 {
136 get { return "LLStandaloneLoginModule"; } 157 get { return "LLStandaloneLoginModule"; }
@@ -154,6 +175,17 @@ namespace OpenSim.Client.Linden
154 } 175 }
155 } 176 }
156 177
178 protected void RemoveScene(Scene scene)
179 {
180 lock (m_scenes)
181 {
182 if (m_scenes.Contains(scene))
183 {
184 m_scenes.Remove(scene);
185 }
186 }
187 }
188
157 public bool NewUserConnection(ulong regionHandle, AgentCircuitData agent, out string reason) 189 public bool NewUserConnection(ulong regionHandle, AgentCircuitData agent, out string reason)
158 { 190 {
159 Scene scene; 191 Scene scene;