From 1f4e14b2e973ee7de337fd4866d9a5ceff5cb6d1 Mon Sep 17 00:00:00 2001 From: Lucas Faria Mendes Date: Mon, 30 Mar 2026 10:38:18 -0300 Subject: chore: location --- Codemerx/Gestor.Application/Helpers/PipeClient.cs | 52 +++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 Codemerx/Gestor.Application/Helpers/PipeClient.cs (limited to 'Codemerx/Gestor.Application/Helpers/PipeClient.cs') diff --git a/Codemerx/Gestor.Application/Helpers/PipeClient.cs b/Codemerx/Gestor.Application/Helpers/PipeClient.cs new file mode 100644 index 0000000..5e8d841 --- /dev/null +++ b/Codemerx/Gestor.Application/Helpers/PipeClient.cs @@ -0,0 +1,52 @@ +using System; +using System.IO; +using System.IO.Pipes; +using System.Runtime.CompilerServices; + +namespace Gestor.Application.Helpers +{ + public class PipeClient + { + private string _pipeName; + + private NamedPipeClientStream Pipe + { + get; + set; + } + + public PipeClient(string pipeName) + { + this._pipeName = pipeName; + } + + public bool Send(dynamic message) + { + bool flag; + try + { + this.Pipe = new NamedPipeClientStream(".", this._pipeName, PipeDirection.Out, PipeOptions.Asynchronous); + this.Pipe.Connect(1000); + if (this.Pipe.IsConnected) + { + using (StreamWriter streamWriter = new StreamWriter(this.Pipe)) + { + streamWriter.AutoFlush = true; + streamWriter.WriteLine(JsonConvert.SerializeObject(message)); + this.Pipe.WaitForPipeDrain(); + } + return true; + } + else + { + flag = false; + } + } + catch (TimeoutException timeoutException) + { + flag = false; + } + return flag; + } + } +} \ No newline at end of file -- cgit v1.2.3