diff options
Diffstat (limited to 'OpenSim/Server/Handlers/Simulation')
-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 8b6fb4f..b51290d 100644 --- a/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs +++ b/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs | |||
@@ -111,6 +111,11 @@ namespace OpenSim.Server.Handlers.Simulation | |||
111 | DoAgentDelete(request, responsedata, agentID, action, regionID); | 111 | DoAgentDelete(request, responsedata, agentID, action, regionID); |
112 | return responsedata; | 112 | return responsedata; |
113 | } | 113 | } |
114 | else if (method.Equals("DELETECHILD")) | ||
115 | { | ||
116 | DoChildAgentDelete(request, responsedata, agentID, action, regionID); | ||
117 | return responsedata; | ||
118 | } | ||
114 | else if (method.Equals("QUERYACCESS")) | 119 | else if (method.Equals("QUERYACCESS")) |
115 | { | 120 | { |
116 | DoQueryAccess(request, responsedata, agentID, regionID); | 121 | DoQueryAccess(request, responsedata, agentID, regionID); |
@@ -409,6 +414,24 @@ namespace OpenSim.Server.Handlers.Simulation | |||
409 | } | 414 | } |
410 | } | 415 | } |
411 | 416 | ||
417 | protected void DoChildAgentDelete(Hashtable request, Hashtable responsedata, UUID id, string action, UUID regionID) | ||
418 | { | ||
419 | m_log.Debug(" >>> DoChildAgentDelete action:" + action + "; RegionID:" + regionID); | ||
420 | |||
421 | GridRegion destination = new GridRegion(); | ||
422 | destination.RegionID = regionID; | ||
423 | |||
424 | if (action.Equals("release")) | ||
425 | ReleaseAgent(regionID, id); | ||
426 | else | ||
427 | m_SimulationService.CloseChildAgent(destination, id); | ||
428 | |||
429 | responsedata["int_response_code"] = HttpStatusCode.OK; | ||
430 | responsedata["str_response_string"] = "OpenSim agent " + id.ToString(); | ||
431 | |||
432 | m_log.Debug("[AGENT HANDLER]: Child Agent Released/Deleted."); | ||
433 | } | ||
434 | |||
412 | protected void DoAgentDelete(Hashtable request, Hashtable responsedata, UUID id, string action, UUID regionID) | 435 | protected void DoAgentDelete(Hashtable request, Hashtable responsedata, UUID id, string action, UUID regionID) |
413 | { | 436 | { |
414 | m_log.Debug(" >>> DoDelete action:" + action + "; RegionID:" + regionID); | 437 | m_log.Debug(" >>> DoDelete action:" + action + "; RegionID:" + regionID); |