Sha256: 24a3ddb65eda5ad20f561cd1271755d5356d56a8cc2150ae3c786b70d357f6da

Contents?: true

Size: 500 Bytes

Versions: 1

Compression:

Stored size: 500 Bytes

Contents

# frozen_string_literal: true

module Logux
  class Stream
    extend Forwardable

    attr_reader :stream

    def_delegators :stream, :close

    def initialize(stream)
      @stream = stream
    end

    def write(payload)
      processed_payload = process(payload)
      Logux.logger.debug("Write to Logux response: #{processed_payload}")
      stream << processed_payload
    end

    private

    def process(payload)
      payload.is_a?(::String) ? payload : payload.to_json
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
logux-rack-0.1.0 lib/logux/stream.rb