Module: Arena::Connectable

Included in:
Block, Channel
Defined in:
lib/arena/connectable.rb

Instance Method Summary collapse

Instance Method Details

#connected_atObject



43
44
45
# File 'lib/arena/connectable.rb', line 43

def connected_at
  @connected_at ||= Time.parse(@attrs['connected_at']) if connected?
end

#connected_byObject



51
52
53
54
55
56
57
58
59
# File 'lib/arena/connectable.rb', line 51

def connected_by
  return unless connected?

  @connected_by ||= Arena::User.new({
                                      'id' => @attrs['connected_by_user_id'],
                                      'username' => @attrs['connected_by_username'],
                                      'full_name' => @attrs['connected_by_username']
                                    })
end

#connected_by_different_user?Boolean

Returns:

  • (Boolean)


47
48
49
# File 'lib/arena/connectable.rb', line 47

def connected_by_different_user?
  user.id != connected_by.id
end

#connectionsObject



35
36
37
38
39
40
41
# File 'lib/arena/connectable.rb', line 35

def connections
  return if @attrs['connections'].nil?

  @connections ||= @attrs['connections'].collect do |channel|
    Arena::Channel.new(channel)
  end
end

#is_block?Boolean

Returns:

  • (Boolean)


31
32
33
# File 'lib/arena/connectable.rb', line 31

def is_block?
  _base_class == 'Block'
end

#userObject



7
8
9
# File 'lib/arena/connectable.rb', line 7

def user
  @user ||= Arena::User.new(@attrs['user']) unless @attrs['user'].nil?
end