From a0ac1f06e62bdfcf08264c8e89fb4e42a2d1f5d6 Mon Sep 17 00:00:00 2001 From: lbsa71 Date: Fri, 13 Jul 2007 07:19:00 +0000 Subject: * Moved SendNameReply to ClientView * Removed unused LoginService * Minor renames on BinaryStreamHandler --- OpenSim/Framework/Servers/BinaryStreamHandler.cs | 19 ++++++++++++------- OpenSim/Framework/Servers/RestMethod.cs | 1 - 2 files changed, 12 insertions(+), 8 deletions(-) (limited to 'OpenSim/Framework/Servers') diff --git a/OpenSim/Framework/Servers/BinaryStreamHandler.cs b/OpenSim/Framework/Servers/BinaryStreamHandler.cs index 302dbff..7d4e4ce 100644 --- a/OpenSim/Framework/Servers/BinaryStreamHandler.cs +++ b/OpenSim/Framework/Servers/BinaryStreamHandler.cs @@ -5,27 +5,28 @@ using System.IO; namespace OpenSim.Framework.Servers { + public delegate string BinaryMethod(byte[] data, string path, string param); public class BinaryStreamHandler : BaseStreamHandler { - BinaryMethod m_restMethod; + BinaryMethod m_method; override public byte[] Handle(string path, Stream request) { byte[] data = ReadFully(request); string param = GetParam(path); - string responseString = m_restMethod(data, path, param); - + string responseString = m_method(data, path, param); + return Encoding.UTF8.GetBytes(responseString); } - public BinaryStreamHandler(string httpMethod, string path, BinaryMethod restMethod) + public BinaryStreamHandler(string httpMethod, string path, BinaryMethod binaryMethod) : base(httpMethod, path) { - m_restMethod = restMethod; + m_method = binaryMethod; } - public byte[] ReadFully(Stream stream) + private byte[] ReadFully(Stream stream) { byte[] buffer = new byte[32768]; using (MemoryStream ms = new MemoryStream()) @@ -33,11 +34,15 @@ namespace OpenSim.Framework.Servers while (true) { int read = stream.Read(buffer, 0, buffer.Length); + if (read <= 0) + { return ms.ToArray(); + } + ms.Write(buffer, 0, read); } - } + } } } diff --git a/OpenSim/Framework/Servers/RestMethod.cs b/OpenSim/Framework/Servers/RestMethod.cs index 2a92fc1..c6cb230 100644 --- a/OpenSim/Framework/Servers/RestMethod.cs +++ b/OpenSim/Framework/Servers/RestMethod.cs @@ -28,5 +28,4 @@ namespace OpenSim.Framework.Servers { public delegate string RestMethod( string request, string path, string param ); - public delegate string BinaryMethod(byte[] data, string path, string param); } -- cgit v1.1