class Obsctl::IPC::ClientSession

Overview

Thread-safe message wrapper around one connected Unix socket.

Defined in:

obsctl/ipc/client_session.cr

Constructors

Instance Method Summary

Constructor Detail

def self.new(socket : UNIXSocket, codec : Codec = Codec.new) #

Creates a session over an accepted or connected Unix socket.


[View source]

Instance Method Detail

def close : Nil #

Closes the underlying socket if it is still open.


[View source]
def read_message : Message | Nil #

Reads and decodes one message, returning nil when the peer closes.


[View source]
def socket : UNIXSocket #

[View source]
def write_message(message : Message) : Nil #

Encodes and writes one message without interleaving concurrent writers.


[View source]