mirror of
https://github.com/opensim/opensim.git
synced 2026-08-11 03:45:35 +08:00
Merge branch 'master' into careminster
Conflicts: OpenSim/Region/Framework/Scenes/Scene.cs OpenSim/Services/LLLoginService/LLLoginResponse.cs OpenSim/Services/LLLoginService/LLLoginService.cs OpenSim/Tests/Common/Mock/TestClient.cs
This commit is contained in:
@@ -82,7 +82,7 @@ namespace OpenSim.Tests.Common
|
||||
Scene neighbourScene;
|
||||
SceneManager.Instance.TryGetScene(x, y, out neighbourScene);
|
||||
|
||||
TestClient neighbourTc = new TestClient(newAgent, neighbourScene, SceneManager.Instance);
|
||||
TestClient neighbourTc = new TestClient(newAgent, neighbourScene);
|
||||
neighbourTcs.Add(neighbourTc);
|
||||
neighbourScene.AddNewClient(neighbourTc, PresenceType.User);
|
||||
};
|
||||
|
||||
@@ -447,9 +447,6 @@ namespace OpenSim.Tests.Common
|
||||
/// Add a root agent where the details of the agent connection (apart from the id) are unimportant for the test
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// This can be used for tests where there is only one region or where there are multiple non-neighbour regions
|
||||
/// and teleport doesn't take place.
|
||||
///
|
||||
/// XXX: Use the version of this method that takes the UserAccount structure wherever possible - this will
|
||||
/// make the agent circuit data (e.g. first, lastname) consistent with the user account data.
|
||||
/// </remarks>
|
||||
@@ -461,22 +458,6 @@ namespace OpenSim.Tests.Common
|
||||
return AddScenePresence(scene, GenerateAgentData(agentId));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Add a root agent where the details of the agent connection (apart from the id) are unimportant for the test
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// XXX: Use the version of this method that takes the UserAccount structure wherever possible - this will
|
||||
/// make the agent circuit data (e.g. first, lastname) consistent with the user account data.
|
||||
/// </remarks>
|
||||
/// <param name="scene"></param>
|
||||
/// <param name="agentId"></param>
|
||||
/// <param name="sceneManager"></param>
|
||||
/// <returns></returns>
|
||||
public static ScenePresence AddScenePresence(Scene scene, UUID agentId, SceneManager sceneManager)
|
||||
{
|
||||
return AddScenePresence(scene, GenerateAgentData(agentId), sceneManager);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Add a root agent.
|
||||
/// </summary>
|
||||
@@ -508,7 +489,7 @@ namespace OpenSim.Tests.Common
|
||||
/// <returns></returns>
|
||||
public static ScenePresence AddScenePresence(Scene scene, AgentCircuitData agentData)
|
||||
{
|
||||
return AddScenePresence(scene, agentData, null);
|
||||
return AddScenePresence(scene, new TestClient(agentData, scene), agentData);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -528,34 +509,9 @@ namespace OpenSim.Tests.Common
|
||||
/// </remarks>
|
||||
/// <param name="scene"></param>
|
||||
/// <param name="agentData"></param>
|
||||
/// <param name="sceneManager"></param>
|
||||
/// <returns></returns>
|
||||
public static ScenePresence AddScenePresence(Scene scene, AgentCircuitData agentData, SceneManager sceneManager)
|
||||
{
|
||||
return AddScenePresence(scene, new TestClient(agentData, scene, sceneManager), agentData, sceneManager);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Add a root agent.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// This function
|
||||
///
|
||||
/// 1) Tells the scene that an agent is coming. Normally, the login service (local if standalone, from the
|
||||
/// userserver if grid) would give initial login data back to the client and separately tell the scene that the
|
||||
/// agent was coming.
|
||||
///
|
||||
/// 2) Connects the agent with the scene
|
||||
///
|
||||
/// This function performs actions equivalent with notifying the scene that an agent is
|
||||
/// coming and then actually connecting the agent to the scene. The one step missed out is the very first
|
||||
/// </remarks>
|
||||
/// <param name="scene"></param>
|
||||
/// <param name="agentData"></param>
|
||||
/// <param name="sceneManager"></param>
|
||||
/// <returns></returns>
|
||||
public static ScenePresence AddScenePresence(
|
||||
Scene scene, IClientAPI client, AgentCircuitData agentData, SceneManager sceneManager)
|
||||
Scene scene, IClientAPI client, AgentCircuitData agentData)
|
||||
{
|
||||
// We emulate the proper login sequence here by doing things in four stages
|
||||
|
||||
@@ -578,10 +534,6 @@ namespace OpenSim.Tests.Common
|
||||
/// Introduce an agent into the scene by adding a new client.
|
||||
/// </summary>
|
||||
/// <returns>The scene presence added</returns>
|
||||
/// <param name='sceneManager'>
|
||||
/// Scene manager. Can be null if there is only one region in the test or multiple regions that are not
|
||||
/// neighbours and where no teleporting takes place.
|
||||
/// </param>
|
||||
/// <param name='scene'></param>
|
||||
/// <param name='testClient'></param>
|
||||
/// <param name='agentData'></param>
|
||||
@@ -607,7 +559,7 @@ namespace OpenSim.Tests.Common
|
||||
acd.child = true;
|
||||
|
||||
// XXX: ViaLogin may not be correct for child agents
|
||||
TestClient client = new TestClient(acd, scene, null);
|
||||
TestClient client = new TestClient(acd, scene);
|
||||
return IntroduceClientToScene(scene, client, acd, TeleportFlags.ViaLogin);
|
||||
}
|
||||
|
||||
|
||||
@@ -47,9 +47,9 @@ namespace OpenSim.Tests.Common.Mock
|
||||
EventWaitHandle wh = new EventWaitHandle (false, EventResetMode.AutoReset, "Crossing");
|
||||
|
||||
private Scene m_scene;
|
||||
private SceneManager m_sceneManager;
|
||||
|
||||
// Properties so that we can get at received data for test purposes
|
||||
public List<uint> ReceivedKills { get; private set; }
|
||||
public List<UUID> ReceivedOfflineNotifications { get; private set; }
|
||||
public List<UUID> ReceivedOnlineNotifications { get; private set; }
|
||||
public List<UUID> ReceivedFriendshipTerminations { get; private set; }
|
||||
@@ -434,36 +434,24 @@ namespace OpenSim.Tests.Common.Mock
|
||||
get { return new IPEndPoint(IPAddress.Loopback, (ushort)m_circuitCode); }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Constructor
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Can be used for a test where there is only one region or where there are multiple regions that are not
|
||||
/// neighbours and where no teleporting takes place. In other situations, the constructor that takes in a
|
||||
/// scene manager should be used.
|
||||
/// </remarks>
|
||||
/// <param name="agentData"></param>
|
||||
/// <param name="scene"></param>
|
||||
public TestClient(AgentCircuitData agentData, Scene scene) : this(agentData, scene, null) {}
|
||||
|
||||
/// <summary>
|
||||
/// Constructor
|
||||
/// </summary>
|
||||
/// <param name="agentData"></param>
|
||||
/// <param name="scene"></param>
|
||||
/// <param name="sceneManager"></param>
|
||||
public TestClient(AgentCircuitData agentData, Scene scene, SceneManager sceneManager)
|
||||
public TestClient(AgentCircuitData agentData, Scene scene)
|
||||
{
|
||||
m_agentId = agentData.AgentID;
|
||||
m_firstName = agentData.firstname;
|
||||
m_lastName = agentData.lastname;
|
||||
m_circuitCode = agentData.circuitcode;
|
||||
m_scene = scene;
|
||||
m_sceneManager = sceneManager;
|
||||
SessionId = agentData.SessionID;
|
||||
SecureSessionId = agentData.SecureSessionID;
|
||||
CapsSeedUrl = agentData.CapsPath;
|
||||
|
||||
ReceivedKills = new List<uint>();
|
||||
ReceivedOfflineNotifications = new List<UUID>();
|
||||
ReceivedOnlineNotifications = new List<UUID>();
|
||||
ReceivedFriendshipTerminations = new List<UUID>();
|
||||
@@ -532,11 +520,11 @@ namespace OpenSim.Tests.Common.Mock
|
||||
|
||||
public virtual void SendAgentDataUpdate(UUID agentid, UUID activegroupid, string firstname, string lastname, ulong grouppowers, string groupname, string grouptitle)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public virtual void SendKillObject(ulong regionHandle, List<uint> localID)
|
||||
public virtual void SendKillObject(List<uint> localID)
|
||||
{
|
||||
ReceivedKills.AddRange(localID);
|
||||
}
|
||||
|
||||
public virtual void SetChildAgentThrottle(byte[] throttle)
|
||||
@@ -545,15 +533,13 @@ namespace OpenSim.Tests.Common.Mock
|
||||
|
||||
public void SetAgentThrottleSilent(int throttle, int setting)
|
||||
{
|
||||
|
||||
|
||||
}
|
||||
|
||||
public byte[] GetThrottlesPacked(float multiplier)
|
||||
{
|
||||
return new byte[0];
|
||||
}
|
||||
|
||||
|
||||
public virtual void SendAnimations(UUID[] animations, int[] seqs, UUID sourceAgentId, UUID[] objectIDs)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -118,8 +118,8 @@ namespace OpenSim.Tests.Common.Mock
|
||||
|
||||
folder.parentFolderID = new UUID(newParent);
|
||||
|
||||
XInventoryFolder[] newParentFolders
|
||||
= GetFolders(new string[] { "folderID" }, new string[] { folder.parentFolderID.ToString() });
|
||||
// XInventoryFolder[] newParentFolders
|
||||
// = GetFolders(new string[] { "folderID" }, new string[] { folder.parentFolderID.ToString() });
|
||||
|
||||
// Console.WriteLine(
|
||||
// "Moved folder {0} {1}, to {2} {3}",
|
||||
|
||||
Reference in New Issue
Block a user