aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Server/Handlers
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Server/Handlers')
-rw-r--r--OpenSim/Server/Handlers/Simulation/AgentHandlers.cs21
1 files changed, 15 insertions, 6 deletions
diff --git a/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs b/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs
index 0e6710d..7ab7dea 100644
--- a/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs
+++ b/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs
@@ -262,7 +262,6 @@ namespace OpenSim.Server.Handlers.Simulation
262 resp["version"] = OSD.FromString(legacyVersion); 262 resp["version"] = OSD.FromString(legacyVersion);
263 resp["negotiated_inbound_version"] = OSD.FromReal(inboundVersion); 263 resp["negotiated_inbound_version"] = OSD.FromReal(inboundVersion);
264 resp["negotiated_outbound_version"] = OSD.FromReal(outboundVersion); 264 resp["negotiated_outbound_version"] = OSD.FromReal(outboundVersion);
265 resp["variable_wearables_count_supported"] = OSD.FromBoolean(true);
266 265
267 OSDArray featuresWanted = new OSDArray(); 266 OSDArray featuresWanted = new OSDArray();
268 foreach (UUID feature in features) 267 foreach (UUID feature in features)
@@ -461,6 +460,7 @@ namespace OpenSim.Server.Handlers.Simulation
461 // This is the meaning of POST agent 460 // This is the meaning of POST agent
462 //m_regionClient.AdjustUserInformation(aCircuit); 461 //m_regionClient.AdjustUserInformation(aCircuit);
463 //bool result = m_SimulationService.CreateAgent(destination, aCircuit, teleportFlags, out reason); 462 //bool result = m_SimulationService.CreateAgent(destination, aCircuit, teleportFlags, out reason);
463
464 bool result = CreateAgent(source, gatekeeper, destination, aCircuit, data.flags, data.fromLogin, out reason); 464 bool result = CreateAgent(source, gatekeeper, destination, aCircuit, data.flags, data.fromLogin, out reason);
465 465
466 resp["reason"] = OSD.FromString(reason); 466 resp["reason"] = OSD.FromString(reason);
@@ -539,12 +539,15 @@ namespace OpenSim.Server.Handlers.Simulation
539 AgentCircuitData aCircuit, uint teleportFlags, bool fromLogin, out string reason) 539 AgentCircuitData aCircuit, uint teleportFlags, bool fromLogin, out string reason)
540 { 540 {
541 reason = String.Empty; 541 reason = String.Empty;
542 // The data and protocols are already defined so this is just a dummy to satisfy the interface
543 // TODO: make this end-to-end
544 EntityTransferContext ctx = new EntityTransferContext();
542 if ((teleportFlags & (uint)TeleportFlags.ViaLogin) == 0) 545 if ((teleportFlags & (uint)TeleportFlags.ViaLogin) == 0)
543 { 546 {
544 Util.FireAndForget(x => 547 Util.FireAndForget(x =>
545 { 548 {
546 string r; 549 string r;
547 m_SimulationService.CreateAgent(source, destination, aCircuit, teleportFlags, out r); 550 m_SimulationService.CreateAgent(source, destination, aCircuit, teleportFlags, ctx, out r);
548 m_log.DebugFormat("[AGENT HANDLER]: ASYNC CreateAgent {0}", r); 551 m_log.DebugFormat("[AGENT HANDLER]: ASYNC CreateAgent {0}", r);
549 }); 552 });
550 553
@@ -553,7 +556,7 @@ namespace OpenSim.Server.Handlers.Simulation
553 else 556 else
554 { 557 {
555 558
556 bool ret = m_SimulationService.CreateAgent(source, destination, aCircuit, teleportFlags, out reason); 559 bool ret = m_SimulationService.CreateAgent(source, destination, aCircuit, teleportFlags, ctx, out reason);
557 m_log.DebugFormat("[AGENT HANDLER]: SYNC CreateAgent {0} {1}", ret.ToString(), reason); 560 m_log.DebugFormat("[AGENT HANDLER]: SYNC CreateAgent {0} {1}", ret.ToString(), reason);
558 return ret; 561 return ret;
559 } 562 }
@@ -657,6 +660,9 @@ namespace OpenSim.Server.Handlers.Simulation
657 660
658 protected void DoAgentPut(Hashtable request, Hashtable responsedata) 661 protected void DoAgentPut(Hashtable request, Hashtable responsedata)
659 { 662 {
663 // TODO: Encode the ENtityTransferContext
664 EntityTransferContext ctx = new EntityTransferContext();
665
660 OSDMap args = Utils.GetOSDMap((string)request["body"]); 666 OSDMap args = Utils.GetOSDMap((string)request["body"]);
661 if (args == null) 667 if (args == null)
662 { 668 {
@@ -699,7 +705,7 @@ namespace OpenSim.Server.Handlers.Simulation
699 AgentData agent = new AgentData(); 705 AgentData agent = new AgentData();
700 try 706 try
701 { 707 {
702 agent.Unpack(args, m_SimulationService.GetScene(destination.RegionID)); 708 agent.Unpack(args, m_SimulationService.GetScene(destination.RegionID), ctx);
703 } 709 }
704 catch (Exception ex) 710 catch (Exception ex)
705 { 711 {
@@ -718,7 +724,7 @@ namespace OpenSim.Server.Handlers.Simulation
718 AgentPosition agent = new AgentPosition(); 724 AgentPosition agent = new AgentPosition();
719 try 725 try
720 { 726 {
721 agent.Unpack(args, m_SimulationService.GetScene(destination.RegionID)); 727 agent.Unpack(args, m_SimulationService.GetScene(destination.RegionID), ctx);
722 } 728 }
723 catch (Exception ex) 729 catch (Exception ex)
724 { 730 {
@@ -739,7 +745,10 @@ namespace OpenSim.Server.Handlers.Simulation
739 // subclasses can override this 745 // subclasses can override this
740 protected virtual bool UpdateAgent(GridRegion destination, AgentData agent) 746 protected virtual bool UpdateAgent(GridRegion destination, AgentData agent)
741 { 747 {
742 return m_SimulationService.UpdateAgent(destination, agent); 748 // The data and protocols are already defined so this is just a dummy to satisfy the interface
749 // TODO: make this end-to-end
750 EntityTransferContext ctx = new EntityTransferContext();
751 return m_SimulationService.UpdateAgent(destination, agent, ctx);
743 } 752 }
744 } 753 }
745 754