Add project

Basic formatting applied. Unnecessary comments have been removed. Suspicious code is covered by TODO.
This commit is contained in:
2025-08-12 11:21:10 +09:00
parent bbcbe841a7
commit 33ab055b43
546 changed files with 176950 additions and 0 deletions

View File

@ -0,0 +1,49 @@
using System;
using System.IO;
using System.Text;
namespace Hcs.ClientApi
{
/// <summary>
/// Реализация захвата содержимого отправляемых и принимаемых SOAP сообщений,
/// которая хранит данные в памяти
/// </summary>
public class HcsMemoryMessageCapture : IHcsMessageCapture
{
private MemoryStream messageCaptureStream;
private StreamWriter messageCaptureWriter;
private Encoding encoding => Encoding.UTF8;
public HcsMemoryMessageCapture()
{
messageCaptureStream = new MemoryStream();
messageCaptureWriter = new StreamWriter(messageCaptureStream, encoding);
}
void IHcsMessageCapture.CaptureMessage(bool sentOrReceived, string messageBody)
{
if (messageCaptureStream.Position > 0) messageCaptureWriter.WriteLine("");
messageCaptureWriter.Write("<!--");
messageCaptureWriter.Write(sentOrReceived ? "SENT " : "RECV ");
messageCaptureWriter.Write(DateTime.Now.ToString());
messageCaptureWriter.WriteLine("-->");
messageCaptureWriter.Write(messageBody);
messageCaptureWriter.Flush();
}
public byte[] GetData()
{
var buf = messageCaptureStream.GetBuffer();
int size = (int)messageCaptureStream.Length;
var data = new byte[size];
Buffer.BlockCopy(buf, 0, data, 0, size);
return data;
}
public override string ToString()
{
return encoding.GetString(GetData());
}
}
}