aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Framework
diff options
context:
space:
mode:
authorDr Scofield2008-07-25 09:56:35 +0000
committerDr Scofield2008-07-25 09:56:35 +0000
commit7025a8040e06250d73c295aa641969d7189474d8 (patch)
tree87515da33453c530bd18b57c81809d25f59afeac /OpenSim/Framework
parentAdd casts from integer to float. Fix issue 1822. (diff)
downloadopensim-SC-7025a8040e06250d73c295aa641969d7189474d8.zip
opensim-SC-7025a8040e06250d73c295aa641969d7189474d8.tar.gz
opensim-SC-7025a8040e06250d73c295aa641969d7189474d8.tar.bz2
opensim-SC-7025a8040e06250d73c295aa641969d7189474d8.tar.xz
From: awebb
Further improvements to the REST handlers.
Diffstat (limited to 'OpenSim/Framework')
-rw-r--r--OpenSim/Framework/Servers/BaseHttpServer.cs27
1 files changed, 16 insertions, 11 deletions
diff --git a/OpenSim/Framework/Servers/BaseHttpServer.cs b/OpenSim/Framework/Servers/BaseHttpServer.cs
index 170a653..4dc5994 100644
--- a/OpenSim/Framework/Servers/BaseHttpServer.cs
+++ b/OpenSim/Framework/Servers/BaseHttpServer.cs
@@ -171,18 +171,20 @@ namespace OpenSim.Framework.Servers
171 OSHttpRequest request = new OSHttpRequest(context.Request); 171 OSHttpRequest request = new OSHttpRequest(context.Request);
172 OSHttpResponse response = new OSHttpResponse(context.Response); 172 OSHttpResponse response = new OSHttpResponse(context.Response);
173 173
174 // user agent based requests? not sure where this actually gets used from 174 // This is the REST agent interface. We require an agent to properly identify
175 if (request.UserAgent != null) 175 // itself. If the REST handler recognizes the prefix it will attempt to
176 { 176 // satisfy the request. If it is not recognizable, and no damage has occurred
177 IHttpAgentHandler agentHandler; 177 // the request can be passed through to the other handlers. This is a low
178 // probability event; if a request is matched it is normally expected to be
179 // handled
180
181 IHttpAgentHandler agentHandler;
178 182
179 if (TryGetAgentHandler(request, response, out agentHandler)) 183 if (TryGetAgentHandler(request, response, out agentHandler))
184 {
185 if (HandleAgentRequest(agentHandler, request, response))
180 { 186 {
181 if (HandleAgentRequest(agentHandler, request, response)) 187 return;
182 {
183 m_log.DebugFormat("[HTTP-AGENT] Handler located for {0}", request.UserAgent);
184 return;
185 }
186 } 188 }
187 } 189 }
188 190
@@ -508,7 +510,7 @@ namespace OpenSim.Framework.Servers
508 catch (Exception e) 510 catch (Exception e)
509 { 511 {
510 // If the handler did in fact close the stream, then this will blow 512 // If the handler did in fact close the stream, then this will blow
511 // chunks, so that that doesn;t disturb anybody we throw away any 513 // chunks. So that that doesn't disturb anybody we throw away any
512 // and all exceptions raised. We've done our best to release the 514 // and all exceptions raised. We've done our best to release the
513 // client. 515 // client.
514 try 516 try
@@ -524,7 +526,10 @@ namespace OpenSim.Framework.Servers
524 } 526 }
525 } 527 }
526 528
529 // Indicate that the request has been "handled"
530
527 return true; 531 return true;
532
528 } 533 }
529 534
530 public void HandleHTTPRequest(OSHttpRequest request, OSHttpResponse response) 535 public void HandleHTTPRequest(OSHttpRequest request, OSHttpResponse response)