aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Client/Linden/LLProxyLoginModule.cs
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--OpenSim/Client/Linden/LLProxyLoginModule.cs50
1 files changed, 39 insertions, 11 deletions
diff --git a/OpenSim/Client/Linden/LLProxyLoginModule.cs b/OpenSim/Client/Linden/LLProxyLoginModule.cs
index fd8c4dd..b7b9adb 100644
--- a/OpenSim/Client/Linden/LLProxyLoginModule.cs
+++ b/OpenSim/Client/Linden/LLProxyLoginModule.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 *
@@ -48,7 +48,7 @@ namespace OpenSim.Client.Linden
48 /// <summary> 48 /// <summary>
49 /// Handles login user (expect user) and logoff user messages from the remote LL login server 49 /// Handles login user (expect user) and logoff user messages from the remote LL login server
50 /// </summary> 50 /// </summary>
51 public class LLProxyLoginModule : IRegionModule 51 public class LLProxyLoginModule : ISharedRegionModule
52 { 52 {
53 private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); 53 private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
54 54
@@ -74,18 +74,21 @@ namespace OpenSim.Client.Linden
74 74
75 #region IRegionModule Members 75 #region IRegionModule Members
76 76
77 public void Initialise(Scene scene, IConfigSource source) 77 public void Initialise(IConfigSource source)
78 {
79 IConfig startupConfig = source.Configs["Startup"];
80 if (startupConfig != null)
81 {
82 m_enabled = startupConfig.GetBoolean("gridmode", false);
83 }
84 }
85
86 public void AddRegion(Scene scene)
78 { 87 {
79 if (m_firstScene == null) 88 if (m_firstScene == null)
80 { 89 {
81 m_firstScene = scene; 90 m_firstScene = scene;
82 91
83 IConfig startupConfig = source.Configs["Startup"];
84 if (startupConfig != null)
85 {
86 m_enabled = startupConfig.GetBoolean("gridmode", false);
87 }
88
89 if (m_enabled) 92 if (m_enabled)
90 { 93 {
91 AddHttpHandlers(); 94 AddHttpHandlers();
@@ -96,6 +99,15 @@ namespace OpenSim.Client.Linden
96 { 99 {
97 AddScene(scene); 100 AddScene(scene);
98 } 101 }
102
103 }
104
105 public void RemoveRegion(Scene scene)
106 {
107 if (m_enabled)
108 {
109 RemoveScene(scene);
110 }
99 } 111 }
100 112
101 public void PostInitialise() 113 public void PostInitialise()
@@ -108,6 +120,11 @@ namespace OpenSim.Client.Linden
108 120
109 } 121 }
110 122
123 public void RegionLoaded(Scene scene)
124 {
125
126 }
127
111 public string Name 128 public string Name
112 { 129 {
113 get { return "LLProxyLoginModule"; } 130 get { return "LLProxyLoginModule"; }
@@ -140,6 +157,17 @@ namespace OpenSim.Client.Linden
140 } 157 }
141 } 158 }
142 } 159 }
160
161 protected void RemoveScene(Scene scene)
162 {
163 lock (m_scenes)
164 {
165 if (m_scenes.Contains(scene))
166 {
167 m_scenes.Remove(scene);
168 }
169 }
170 }
143 /// <summary> 171 /// <summary>
144 /// Received from the user server when a user starts logging in. This call allows 172 /// Received from the user server when a user starts logging in. This call allows
145 /// the region to prepare for direct communication from the client. Sends back an empty 173 /// the region to prepare for direct communication from the client. Sends back an empty
@@ -200,7 +228,7 @@ namespace OpenSim.Client.Linden
200 { 228 {
201 bool success = false; 229 bool success = false;
202 string denyMess = ""; 230 string denyMess = "";
203 231
204 Scene scene; 232 Scene scene;
205 if (TryGetRegion(regionHandle, out scene)) 233 if (TryGetRegion(regionHandle, out scene))
206 { 234 {
@@ -226,7 +254,7 @@ namespace OpenSim.Client.Linden
226 agentData.firstname, agentData.lastname); 254 agentData.firstname, agentData.lastname);
227 } 255 }
228 } 256 }
229 257
230 } 258 }
231 else 259 else
232 { 260 {