class SlackTsuribari::Hook

Constants

Config
PrePayload

Attributes

config[R]
payload[R]

Public Class Methods

config(uri = nil) { |config| ... } click to toggle source
# File lib/slack_tsuribari/hook.rb, line 32
def config(uri = nil)
  config = Config.new(pre_payload: PrePayload.new, raise_error: true)

  if block_given?
    yield(config)
  else
    config.uri = uri
  end
  new(config)
end
new(config) click to toggle source
# File lib/slack_tsuribari/hook.rb, line 48
def initialize(config)
  @config = config
end

Public Instance Methods

attach(payload) click to toggle source
# File lib/slack_tsuribari/hook.rb, line 71
def attach(payload)
  return @payload if !@payload.nil? && payload.nil? # when not detached and new payload is nil
  raise NoPayloadError if payload.nil? && config.pre_payload.nil?

  @payload = config.pre_payload.to_h.merge(payload.nil? ? {} : payload)
end
detach() click to toggle source
# File lib/slack_tsuribari/hook.rb, line 78
def detach
  @payload = nil
end
payload_to_json() click to toggle source
# File lib/slack_tsuribari/hook.rb, line 67
def payload_to_json
  payload.to_json
end
setting() click to toggle source
# File lib/slack_tsuribari/hook.rb, line 56
def setting
  {
    proxy_addr: config.proxy_addr,
    proxy_port: config.proxy_port,
    proxy_user: config.proxy_user,
    proxy_pass: config.proxy_pass,
    no_proxy: config.no_proxy,
    raise_error: config.raise_error
  }
end
uri() click to toggle source
# File lib/slack_tsuribari/hook.rb, line 52
def uri
  config.uri
end