class SearchKit::Messages::Messaging::Message

Most of the logic for the Messaging module exists in this (not so) private class. This lets more complex handling of message logic enter into the module gracefully, for example silence or logging level.

Attributes

cli[R]
message[R]

Public Class Methods

new(message) click to toggle source
# File lib/search_kit/messages/messaging.rb, line 35
def initialize(message)
  @message = message
  @cli     = HighLine.new
end

Public Instance Methods

info() click to toggle source
# File lib/search_kit/messages/messaging.rb, line 45
def info
  Kernel.puts(Prefixed(message.ansi(:cyan))) if SearchKit.config.verbose
  SearchKit.logger.info message
end
password_prompt() click to toggle source
# File lib/search_kit/messages/messaging.rb, line 54
def password_prompt
  cli.ask(Prefixed(message.ansi(:cyan))) do |prompt|
    prompt.echo = '*'
  end
end
prompt() click to toggle source
# File lib/search_kit/messages/messaging.rb, line 50
def prompt
  cli.ask(Prefixed(message.ansi(:cyan)))
end
warn() click to toggle source
# File lib/search_kit/messages/messaging.rb, line 40
def warn
  Kernel.warn(Prefixed(message.ansi(:red))) if SearchKit.config.verbose
  SearchKit.logger.warn message
end

Private Instance Methods

Prefixed(*messages) click to toggle source
# File lib/search_kit/messages/messaging.rb, line 62
def Prefixed(*messages)
  Prefixed.new.join(*messages)
end