Class: Twterm::Repository::FriendshipRepository
Instance Method Summary
collapse
-
#already_looked_up?(user_id) ⇒ Boolean
-
#block(from, to) ⇒ Object
-
#blocking?(from, to) ⇒ Boolean
-
#cancel_follow_request(from, to) ⇒ Object
-
#delete(status, from, to) ⇒ Object
-
#follow(from, to) ⇒ Object
-
#following?(from, to) ⇒ Boolean
-
#following_not_requested(from, to) ⇒ Object
-
#following_requested(from, to) ⇒ Object
-
#following_requested?(from, to) ⇒ Boolean
-
#initialize ⇒ FriendshipRepository
constructor
A new instance of FriendshipRepository.
-
#looked_up!(user_id) ⇒ Object
-
#mute(from, to) ⇒ Object
-
#muting?(from, to) ⇒ Boolean
-
#unblock(from, to) ⇒ Object
-
#unfollow(from, to) ⇒ Object
-
#unmute(from, to) ⇒ Object
#after_create, #before_create, #create
Constructor Details
Returns a new instance of FriendshipRepository.
11
12
13
14
15
16
|
# File 'lib/twterm/repository/friendship_repository.rb', line 11
def initialize
super
@user_ids = Set.new
@m = Mutex.new
end
|
Instance Method Details
#already_looked_up?(user_id) ⇒ Boolean
18
19
20
|
# File 'lib/twterm/repository/friendship_repository.rb', line 18
def already_looked_up?(user_id)
@m.synchronize { @user_ids.include?(user_id) }
end
|
#block(from, to) ⇒ Object
22
23
24
|
# File 'lib/twterm/repository/friendship_repository.rb', line 22
def block(from, to)
create(:blocking, from, to)
end
|
#blocking?(from, to) ⇒ Boolean
26
27
28
|
# File 'lib/twterm/repository/friendship_repository.rb', line 26
def blocking?(from, to)
!find([:blocking, from, to]).nil?
end
|
#cancel_follow_request(from, to) ⇒ Object
30
31
32
|
# File 'lib/twterm/repository/friendship_repository.rb', line 30
def cancel_follow_request(from, to)
create(:following_requested, from, to)
end
|
#delete(status, from, to) ⇒ Object
34
35
36
|
# File 'lib/twterm/repository/friendship_repository.rb', line 34
def delete(status, from, to)
repository[status].delete_if { |f| f.status == status && f.from == from && f.to == to }
end
|
#follow(from, to) ⇒ Object
38
39
40
|
# File 'lib/twterm/repository/friendship_repository.rb', line 38
def follow(from, to)
create(:following, from, to)
end
|
#following?(from, to) ⇒ Boolean
42
43
44
|
# File 'lib/twterm/repository/friendship_repository.rb', line 42
def following?(from, to)
!find([:following, from, to]).nil?
end
|
#following_not_requested(from, to) ⇒ Object
46
47
48
|
# File 'lib/twterm/repository/friendship_repository.rb', line 46
def following_not_requested(from, to)
delete(:following_requested, from, to)
end
|
#following_requested(from, to) ⇒ Object
50
51
52
|
# File 'lib/twterm/repository/friendship_repository.rb', line 50
def following_requested(from, to)
create(:following_requested, from, to)
end
|
#following_requested?(from, to) ⇒ Boolean
54
55
56
|
# File 'lib/twterm/repository/friendship_repository.rb', line 54
def following_requested?(from, to)
!find([:following_requested, from, to]).nil?
end
|
#looked_up!(user_id) ⇒ Object
58
59
60
61
|
# File 'lib/twterm/repository/friendship_repository.rb', line 58
def looked_up!(user_id)
@m.synchronize { @user_ids << user_id }
user_id
end
|
#mute(from, to) ⇒ Object
63
64
65
|
# File 'lib/twterm/repository/friendship_repository.rb', line 63
def mute(from, to)
create(:muting, from, to)
end
|
#muting?(from, to) ⇒ Boolean
67
68
69
|
# File 'lib/twterm/repository/friendship_repository.rb', line 67
def muting?(from, to)
!find([:muting, from, to]).nil?
end
|
#unblock(from, to) ⇒ Object
71
72
73
|
# File 'lib/twterm/repository/friendship_repository.rb', line 71
def unblock(from, to)
delete(:blocking, from, to)
end
|
#unfollow(from, to) ⇒ Object
75
76
77
|
# File 'lib/twterm/repository/friendship_repository.rb', line 75
def unfollow(from, to)
delete(:following, from, to)
end
|
#unmute(from, to) ⇒ Object
79
80
81
|
# File 'lib/twterm/repository/friendship_repository.rb', line 79
def unmute(from, to)
delete(:muting, from, to)
end
|