class Mangadex::Config

Attributes

default_content_ratings[RW]
mangadex_url[RW]
storage_class[RW]

Public Class Methods

new() click to toggle source
# File lib/config.rb, line 18
def initialize
  @storage_class = Storage::Memory
  @default_content_ratings = ContentRating.parse(['safe', 'suggestive', 'erotica'])
  @mangadex_url = 'https://api.mangadex.org'
end

Public Instance Methods

default_content_ratings=(content_ratings) click to toggle source
# File lib/config.rb, line 35
def default_content_ratings=(content_ratings)
  @default_content_ratings = ContentRating.parse(content_ratings)
end
storage() click to toggle source
# File lib/config.rb, line 44
def storage
  @storage ||= storage_class.new
end
storage_class=(klass) click to toggle source
# File lib/config.rb, line 39
def storage_class=(klass)
  @storage = nil
  @storage_class = klass
end
user_class=(klass) click to toggle source
# File lib/config.rb, line 25
def user_class=(klass)
  missing_methods = [:session, :refresh, :mangadex_user_id] - klass.new.methods
  if missing_methods.empty?
    @user_class = klass
  else
    raise ArgumentError, 'user_class must respond to :session, :refresh, :mangadex_user_id'
  end
end