class FlowdockBuildNotifier::FlowdockMessageSenderFactory

Attributes

client[R]
config[R]

Public Class Methods

new(config: Configuration.load, client: Flowdock::Client.new(api_token: config.flowdock_user_token)) click to toggle source
# File lib/flowdock_build_notifier/flowdock_message_sender_factory.rb, line 10
def initialize(config: Configuration.load, client: Flowdock::Client.new(api_token: config.flowdock_user_token))
  @config = config
  @client = client
end

Public Instance Methods

create_sender(email) click to toggle source
# File lib/flowdock_build_notifier/flowdock_message_sender_factory.rb, line 15
def create_sender(email)
  user = user_by_email(email)
  return UnknownUserSender.new(email: email, config: config) unless user
  PrivateMessageSender.new(user_id: user['id'], client: client)
end
user_by_email(email) click to toggle source
# File lib/flowdock_build_notifier/flowdock_message_sender_factory.rb, line 25
def user_by_email(email)
  @user ||= users.detect do |user|
    user['email'] == config.email_map[email] || user['email'] == email
  end
end
users() click to toggle source
# File lib/flowdock_build_notifier/flowdock_message_sender_factory.rb, line 21
def users
  @users ||= client.get('/users')
end