diff options
author | Melanie | 2009-10-04 05:49:16 +0100 |
---|---|---|
committer | Melanie | 2009-10-04 05:49:16 +0100 |
commit | 6878b26b0d3d9ba26b1afe097e193fb1bafbc9b6 (patch) | |
tree | 7e786c0ce436f42a60806629f3249658eab4884a /OpenSim/Framework/Servers | |
parent | Slightly better message with status code for WebException. (diff) | |
parent | Closing another stream. (diff) | |
download | opensim-SC_OLD-6878b26b0d3d9ba26b1afe097e193fb1bafbc9b6.zip opensim-SC_OLD-6878b26b0d3d9ba26b1afe097e193fb1bafbc9b6.tar.gz opensim-SC_OLD-6878b26b0d3d9ba26b1afe097e193fb1bafbc9b6.tar.bz2 opensim-SC_OLD-6878b26b0d3d9ba26b1afe097e193fb1bafbc9b6.tar.xz |
Merge branch 'diva-textures-osgrid'
Diffstat (limited to 'OpenSim/Framework/Servers')
-rw-r--r-- | OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs | 2 | ||||
-rw-r--r-- | OpenSim/Framework/Servers/HttpServer/SynchronousRestObjectRequester.cs | 23 |
2 files changed, 20 insertions, 5 deletions
diff --git a/OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs b/OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs index 6c63c6c..942fed9 100644 --- a/OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs +++ b/OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs | |||
@@ -979,7 +979,7 @@ namespace OpenSim.Framework.Servers.HttpServer | |||
979 | } | 979 | } |
980 | 980 | ||
981 | // response.ContentType = "application/llsd+json"; | 981 | // response.ContentType = "application/llsd+json"; |
982 | // return Encoding.UTF8.GetBytes(OSDParser.SerializeJsonString(llsdResponse)); | 982 | // return Util.UTF8.GetBytes(OSDParser.SerializeJsonString(llsdResponse)); |
983 | response.ContentType = "application/llsd+xml"; | 983 | response.ContentType = "application/llsd+xml"; |
984 | return OSDParser.SerializeLLSDXmlBytes(llsdResponse); | 984 | return OSDParser.SerializeLLSDXmlBytes(llsdResponse); |
985 | } | 985 | } |
diff --git a/OpenSim/Framework/Servers/HttpServer/SynchronousRestObjectRequester.cs b/OpenSim/Framework/Servers/HttpServer/SynchronousRestObjectRequester.cs index ec9bd4f..eab463c 100644 --- a/OpenSim/Framework/Servers/HttpServer/SynchronousRestObjectRequester.cs +++ b/OpenSim/Framework/Servers/HttpServer/SynchronousRestObjectRequester.cs | |||
@@ -58,6 +58,7 @@ namespace OpenSim.Framework.Servers.HttpServer | |||
58 | public static TResponse MakeRequest<TRequest, TResponse>(string verb, string requestUrl, TRequest obj) | 58 | public static TResponse MakeRequest<TRequest, TResponse>(string verb, string requestUrl, TRequest obj) |
59 | { | 59 | { |
60 | Type type = typeof (TRequest); | 60 | Type type = typeof (TRequest); |
61 | TResponse deserial = default(TResponse); | ||
61 | 62 | ||
62 | WebRequest request = WebRequest.Create(requestUrl); | 63 | WebRequest request = WebRequest.Create(requestUrl); |
63 | request.Method = verb; | 64 | request.Method = verb; |
@@ -81,19 +82,33 @@ namespace OpenSim.Framework.Servers.HttpServer | |||
81 | int length = (int) buffer.Length; | 82 | int length = (int) buffer.Length; |
82 | request.ContentLength = length; | 83 | request.ContentLength = length; |
83 | 84 | ||
84 | Stream requestStream = request.GetRequestStream(); | 85 | Stream requestStream = null; |
85 | requestStream.Write(buffer.ToArray(), 0, length); | 86 | try |
87 | { | ||
88 | requestStream = request.GetRequestStream(); | ||
89 | requestStream.Write(buffer.ToArray(), 0, length); | ||
90 | } | ||
91 | catch (Exception) | ||
92 | { | ||
93 | return deserial; | ||
94 | } | ||
95 | finally | ||
96 | { | ||
97 | if (requestStream != null) | ||
98 | requestStream.Close(); | ||
99 | } | ||
86 | } | 100 | } |
87 | 101 | ||
88 | TResponse deserial = default(TResponse); | ||
89 | try | 102 | try |
90 | { | 103 | { |
91 | using (WebResponse resp = request.GetResponse()) | 104 | using (WebResponse resp = request.GetResponse()) |
92 | { | 105 | { |
93 | if (resp.ContentLength > 0) | 106 | if (resp.ContentLength > 0) |
94 | { | 107 | { |
108 | Stream respStream = resp.GetResponseStream(); | ||
95 | XmlSerializer deserializer = new XmlSerializer(typeof(TResponse)); | 109 | XmlSerializer deserializer = new XmlSerializer(typeof(TResponse)); |
96 | deserial = (TResponse)deserializer.Deserialize(resp.GetResponseStream()); | 110 | deserial = (TResponse)deserializer.Deserialize(respStream); |
111 | respStream.Close(); | ||
97 | } | 112 | } |
98 | } | 113 | } |
99 | } | 114 | } |