diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/Scene.cs | 25 | ||||
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneBase.cs | 7 |
2 files changed, 21 insertions, 11 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs index 91367db..7eafef7 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.cs | |||
@@ -2482,7 +2482,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
2482 | /// <param name="client"></param> | 2482 | /// <param name="client"></param> |
2483 | public override void AddNewClient(IClientAPI client) | 2483 | public override void AddNewClient(IClientAPI client) |
2484 | { | 2484 | { |
2485 | ClientManager.Add(client); | 2485 | m_clientManager.Add(client); |
2486 | 2486 | ||
2487 | CheckHeartbeat(); | 2487 | CheckHeartbeat(); |
2488 | SubscribeToClientEvents(client); | 2488 | SubscribeToClientEvents(client); |
@@ -3121,7 +3121,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
3121 | 3121 | ||
3122 | // Remove the avatar from the scene | 3122 | // Remove the avatar from the scene |
3123 | m_sceneGraph.RemoveScenePresence(agentID); | 3123 | m_sceneGraph.RemoveScenePresence(agentID); |
3124 | ClientManager.Remove(agentID); | 3124 | m_clientManager.Remove(agentID); |
3125 | 3125 | ||
3126 | try | 3126 | try |
3127 | { | 3127 | { |
@@ -4256,10 +4256,25 @@ namespace OpenSim.Region.Framework.Scenes | |||
4256 | 4256 | ||
4257 | public void ForEachClient(Action<IClientAPI> action) | 4257 | public void ForEachClient(Action<IClientAPI> action) |
4258 | { | 4258 | { |
4259 | if (m_useAsyncWhenPossible) | 4259 | ForEachClient(action, m_useAsyncWhenPossible); |
4260 | ClientManager.ForEach(action); | 4260 | } |
4261 | |||
4262 | public void ForEachClient(Action<IClientAPI> action, bool doAsynchronous) | ||
4263 | { | ||
4264 | if (doAsynchronous) | ||
4265 | m_clientManager.ForEach(action); | ||
4261 | else | 4266 | else |
4262 | ClientManager.ForEachSync(action); | 4267 | m_clientManager.ForEachSync(action); |
4268 | } | ||
4269 | |||
4270 | public bool TryGetClient(UUID avatarID, out IClientAPI client) | ||
4271 | { | ||
4272 | return m_clientManager.TryGetValue(avatarID, out client); | ||
4273 | } | ||
4274 | |||
4275 | public bool TryGetClient(System.Net.IPEndPoint remoteEndPoint, out IClientAPI client) | ||
4276 | { | ||
4277 | return m_clientManager.TryGetValue(remoteEndPoint, out client); | ||
4263 | } | 4278 | } |
4264 | 4279 | ||
4265 | public void ForEachSOG(Action<SceneObjectGroup> action) | 4280 | public void ForEachSOG(Action<SceneObjectGroup> action) |
diff --git a/OpenSim/Region/Framework/Scenes/SceneBase.cs b/OpenSim/Region/Framework/Scenes/SceneBase.cs index cf5c3c8..82731d1 100644 --- a/OpenSim/Region/Framework/Scenes/SceneBase.cs +++ b/OpenSim/Region/Framework/Scenes/SceneBase.cs | |||
@@ -102,12 +102,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
102 | 102 | ||
103 | private readonly Mutex _primAllocateMutex = new Mutex(false); | 103 | private readonly Mutex _primAllocateMutex = new Mutex(false); |
104 | 104 | ||
105 | private readonly ClientManager m_clientManager = new ClientManager(); | 105 | protected readonly ClientManager m_clientManager = new ClientManager(); |
106 | |||
107 | public ClientManager ClientManager | ||
108 | { | ||
109 | get { return m_clientManager; } | ||
110 | } | ||
111 | 106 | ||
112 | public float TimeDilation | 107 | public float TimeDilation |
113 | { | 108 | { |