aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Server
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Server')
-rw-r--r--OpenSim/Server/Handlers/Simulation/AgentHandlers.cs23
1 files changed, 23 insertions, 0 deletions
diff --git a/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs b/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs
index 1d1f9ef..ded335d5 100644
--- a/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs
+++ b/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs
@@ -100,6 +100,11 @@ namespace OpenSim.Server.Handlers.Simulation
100 DoAgentDelete(request, responsedata, agentID, action, regionID); 100 DoAgentDelete(request, responsedata, agentID, action, regionID);
101 return responsedata; 101 return responsedata;
102 } 102 }
103 else if (method.Equals("DELETECHILD"))
104 {
105 DoChildAgentDelete(request, responsedata, agentID, action, regionID);
106 return responsedata;
107 }
103 else if (method.Equals("QUERYACCESS")) 108 else if (method.Equals("QUERYACCESS"))
104 { 109 {
105 DoQueryAccess(request, responsedata, agentID, regionID); 110 DoQueryAccess(request, responsedata, agentID, regionID);
@@ -205,6 +210,24 @@ namespace OpenSim.Server.Handlers.Simulation
205 } 210 }
206 } 211 }
207 212
213 protected void DoChildAgentDelete(Hashtable request, Hashtable responsedata, UUID id, string action, UUID regionID)
214 {
215 m_log.Debug(" >>> DoChildAgentDelete action:" + action + "; RegionID:" + regionID);
216
217 GridRegion destination = new GridRegion();
218 destination.RegionID = regionID;
219
220 if (action.Equals("release"))
221 ReleaseAgent(regionID, id);
222 else
223 m_SimulationService.CloseChildAgent(destination, id);
224
225 responsedata["int_response_code"] = HttpStatusCode.OK;
226 responsedata["str_response_string"] = "OpenSim agent " + id.ToString();
227
228 m_log.Debug("[AGENT HANDLER]: Child Agent Released/Deleted.");
229 }
230
208 protected void DoAgentDelete(Hashtable request, Hashtable responsedata, UUID id, string action, UUID regionID) 231 protected void DoAgentDelete(Hashtable request, Hashtable responsedata, UUID id, string action, UUID regionID)
209 { 232 {
210 m_log.Debug(" >>> DoDelete action:" + action + "; RegionID:" + regionID); 233 m_log.Debug(" >>> DoDelete action:" + action + "; RegionID:" + regionID);