class Grouik::Output::Message

Describe a message (sent on a IO as STDOUT/STDERR)

Attributes

content[RW]
stream[RW]
type[RW]

Public Class Methods

new() { |self| ... } click to toggle source
# File src/lib/grouik/output/message.rb, line 15
def initialize
  yield self if block_given?
end

Public Instance Methods

content=(content) click to toggle source

@param content [String]

# File src/lib/grouik/output/message.rb, line 20
def content=(content)
  @content = content.to_s.empty? ? nil : content.to_s
end
send() click to toggle source

@raise [RuntimeError] @return [self]

# File src/lib/grouik/output/message.rb, line 36
def send
  attrs = [:stream, :content, :type]
  attrs.each do |attr|
    raise 'attributes %s must be set' % attrs if public_send(attr).nil?
  end

  messager_class.new(stream, content.to_s).output(type)
  self
end
stream=(stream) click to toggle source

@param stream [IO]

# File src/lib/grouik/output/message.rb, line 25
def stream=(stream)
  @stream = stream.clone
end

Protected Instance Methods

messager_class() click to toggle source

@return [Grouik::Output::Messager]

# File src/lib/grouik/output/message.rb, line 49
def messager_class
  require '%s/messager' % __dir__

  Grouik::Output::Messager
end