RoomCreator   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 16
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 16
rs 10
wmc 3

2 Methods

Rating   Name   Duplication   Size   Complexity  
A find_or_create_room() 0 3 1
A create_room() 0 8 2
1
module Lita
2
  module Adapters
3
    class Glip < Adapter
4
      class RoomCreator
5
        class << self
6
          def find_or_create_room(room_id, glip_sdk)
7
            Lita::Room.find_by_id(room_id) || create_room(room_id, glip_sdk)
8
          end
9
10
          def create_room(room_id, glip_sdk)
11
            res = glip_sdk.groups.get groupId: room_id
12
            if res.status == 200
13
              glip_room = res.body
14
              return Lita::Room.create_or_update room_id, name: glip_room['name']
15
            end
16
            Lita::Room.create_or_update room_id
17
          end
18
        end
19
      end
20
    end
21
  end
22
end
23