diff options
Diffstat (limited to 'OpenSim/Server/Handlers/Simulation/AgentHandlers.cs')
-rw-r--r-- | OpenSim/Server/Handlers/Simulation/AgentHandlers.cs | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs b/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs index 372a59c..616aef3 100644 --- a/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs +++ b/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs | |||
@@ -110,6 +110,11 @@ namespace OpenSim.Server.Handlers.Simulation | |||
110 | DoAgentDelete(request, responsedata, agentID, action, regionID); | 110 | DoAgentDelete(request, responsedata, agentID, action, regionID); |
111 | return responsedata; | 111 | return responsedata; |
112 | } | 112 | } |
113 | else if (method.Equals("DELETECHILD")) | ||
114 | { | ||
115 | DoChildAgentDelete(request, responsedata, agentID, action, regionID); | ||
116 | return responsedata; | ||
117 | } | ||
113 | else if (method.Equals("QUERYACCESS")) | 118 | else if (method.Equals("QUERYACCESS")) |
114 | { | 119 | { |
115 | DoQueryAccess(request, responsedata, agentID, regionID); | 120 | DoQueryAccess(request, responsedata, agentID, regionID); |
@@ -406,6 +411,24 @@ namespace OpenSim.Server.Handlers.Simulation | |||
406 | } | 411 | } |
407 | } | 412 | } |
408 | 413 | ||
414 | protected void DoChildAgentDelete(Hashtable request, Hashtable responsedata, UUID id, string action, UUID regionID) | ||
415 | { | ||
416 | m_log.Debug(" >>> DoChildAgentDelete action:" + action + "; RegionID:" + regionID); | ||
417 | |||
418 | GridRegion destination = new GridRegion(); | ||
419 | destination.RegionID = regionID; | ||
420 | |||
421 | if (action.Equals("release")) | ||
422 | ReleaseAgent(regionID, id); | ||
423 | else | ||
424 | m_SimulationService.CloseChildAgent(destination, id); | ||
425 | |||
426 | responsedata["int_response_code"] = HttpStatusCode.OK; | ||
427 | responsedata["str_response_string"] = "OpenSim agent " + id.ToString(); | ||
428 | |||
429 | m_log.Debug("[AGENT HANDLER]: Child Agent Released/Deleted."); | ||
430 | } | ||
431 | |||
409 | protected void DoAgentDelete(Hashtable request, Hashtable responsedata, UUID id, string action, UUID regionID) | 432 | protected void DoAgentDelete(Hashtable request, Hashtable responsedata, UUID id, string action, UUID regionID) |
410 | { | 433 | { |
411 | m_log.Debug(" >>> DoDelete action:" + action + "; RegionID:" + regionID); | 434 | m_log.Debug(" >>> DoDelete action:" + action + "; RegionID:" + regionID); |