From 304c5d4a8b8a1137bac18f7f6443ea85cec86184 Mon Sep 17 00:00:00 2001
From: Justin Clark-Casey (justincc)
Date: Fri, 3 May 2013 18:48:50 +0100
Subject: On startup, start scenes after we're set up all local scenes, rather
than starting scenes before others have been created.
This aims to avoid a race condition where scenes could look to inform neighbours that they were up before those neighbours had been created.
http://opensimulator.org/mantis/view.php?id=6618
---
OpenSim/Framework/IScene.cs | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
(limited to 'OpenSim/Framework/IScene.cs')
diff --git a/OpenSim/Framework/IScene.cs b/OpenSim/Framework/IScene.cs
index 87ec99e..8164f41 100644
--- a/OpenSim/Framework/IScene.cs
+++ b/OpenSim/Framework/IScene.cs
@@ -136,5 +136,10 @@ namespace OpenSim.Framework
ISceneObject DeserializeObject(string representation);
bool CheckClient(UUID agentID, System.Net.IPEndPoint ep);
+
+ ///
+ /// Start the scene and associated scripts within it.
+ ///
+ void Start();
}
-}
+}
\ No newline at end of file
--
cgit v1.1
From b16bc7b01ca0691758e66f85238d657f02271082 Mon Sep 17 00:00:00 2001
From: Justin Clark-Casey (justincc)
Date: Fri, 27 Sep 2013 19:14:21 +0100
Subject: refactor: rename Scene.IncomingCloseAgent() to CloseAgent() in order
to make it clear that all non-clientstack callers should be using this rather
than RemoveClient() in order to step through the ScenePresence state machine
properly.
Adds IScene.CloseAgent() to replace RemoveClient()
---
OpenSim/Framework/IScene.cs | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
(limited to 'OpenSim/Framework/IScene.cs')
diff --git a/OpenSim/Framework/IScene.cs b/OpenSim/Framework/IScene.cs
index 8164f41..c3df37b 100644
--- a/OpenSim/Framework/IScene.cs
+++ b/OpenSim/Framework/IScene.cs
@@ -86,7 +86,7 @@ namespace OpenSim.Framework
event restart OnRestart;
///
- /// Add a new client and create a presence for it. All clients except initial login clients will starts off as a child agent
+ /// Add a new agent. All agents except initial login clients will starts off as a child agent
/// - the later agent crossing will promote it to a root agent.
///
///
@@ -96,14 +96,16 @@ namespace OpenSim.Framework
ISceneAgent AddNewClient(IClientAPI client, PresenceType type);
///
- /// Remove the given client from the scene.
+ /// Tell a single agent to disconnect from the region.
///
///
- /// Close the neighbour child agents associated with this client.
- void RemoveClient(UUID agentID, bool closeChildAgents);
+ ///
+ /// Force the agent to close even if it might be in the middle of some other operation. You do not want to
+ /// force unless you are absolutely sure that the agent is dead and a normal close is not working.
+ ///
+ bool CloseAgent(UUID agentID, bool force);
void Restart();
- //RegionInfo OtherRegionUp(RegionInfo thisRegion);
string GetSimulatorVersion();
--
cgit v1.1
From 2cd95fac736cc99b1a2ad661e4a03810225ffaca Mon Sep 17 00:00:00 2001
From: Justin Clark-Casey (justincc)
Date: Fri, 27 Sep 2013 22:27:39 +0100
Subject: refactor: Rename Scene.AddNewClient() to AddNewAgent() to make it
obvious in the code that this is symmetric with CloseAgent()
---
OpenSim/Framework/IScene.cs | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
(limited to 'OpenSim/Framework/IScene.cs')
diff --git a/OpenSim/Framework/IScene.cs b/OpenSim/Framework/IScene.cs
index c3df37b..e1b6d1e 100644
--- a/OpenSim/Framework/IScene.cs
+++ b/OpenSim/Framework/IScene.cs
@@ -86,14 +86,14 @@ namespace OpenSim.Framework
event restart OnRestart;
///
- /// Add a new agent. All agents except initial login clients will starts off as a child agent
+ /// Add a new agent with an attached client. All agents except initial login clients will starts off as a child agent
/// - the later agent crossing will promote it to a root agent.
///
///
/// The type of agent to add.
///
/// The scene agent if the new client was added or if an agent that already existed.
- ISceneAgent AddNewClient(IClientAPI client, PresenceType type);
+ ISceneAgent AddNewAgent(IClientAPI client, PresenceType type);
///
/// Tell a single agent to disconnect from the region.
--
cgit v1.1