Class: Mangadex::Api::Context
- Inherits:
-
Object
- Object
- Mangadex::Api::Context
- Extended by:
- T::Sig
- Defined in:
- lib/mangadex/api/context.rb
Constant Summary collapse
- @@user =
nil
- @@version =
nil
Class Method Summary collapse
- .user ⇒ Object
- .user=(user) ⇒ Object
- .version ⇒ Object
- .with_user(user, &block) ⇒ Object
- .without_user(&block) ⇒ Object
Class Method Details
.user ⇒ Object
18 19 20 |
# File 'lib/mangadex/api/context.rb', line 18 def self.user @@user&.with_valid_session end |
.user=(user) ⇒ Object
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/mangadex/api/context.rb', line 23 def self.user=(user) if user.is_a?(Mangadex::Api::User) @@user = user elsif user.is_a?(Mangadex::User) @@user = Mangadex::Api::User.new( user.id, data: user, ) elsif user.is_a?(Hash) user = user.with_indifferent_access @@user = Mangadex::Api::User.new( user[:mangadex_user_id], session: user[:session], refresh: user[:refresh], ) elsif user.nil? @@user = nil end end |
.version ⇒ Object
11 12 13 14 15 |
# File 'lib/mangadex/api/context.rb', line 11 def self.version return @@version unless @@version.nil? @@version = Mangadex::Api::Version.check_mangadex_version end |
.with_user(user, &block) ⇒ Object
45 46 47 48 49 50 51 52 53 |
# File 'lib/mangadex/api/context.rb', line 45 def self.with_user(user, &block) current_user = @@user @@user = user response = yield @@user = current_user response ensure @@user = current_user end |
.without_user(&block) ⇒ Object
56 57 58 59 60 |
# File 'lib/mangadex/api/context.rb', line 56 def self.without_user(&block) with_user(nil) do yield end end |