# frozen_string_literal: true require 'logging' require_relative 'fic_tracker/version' module FicTracker class Error < StandardError; end class ConfigError < Error; end def self.logger @logger ||= Logging.logger[self].tap do |logger| logger.add_appenders ::Logging.appenders.stdout logger.level = :warn end end def self.configure! Config.load! end def self.cache configure! unless @cache @cache end def self.cache=(cache) @cache = cache end def self.database configure! unless @database @database end def self.database=(database) @database = database end def self.debug! logger.level = :debug end def self.logger=(global_logger) @logger = global_logger @global_logger = !global_logger.nil? end def self.global_logger? @global_logger ||= false end autoload :Models, 'fic_tracker/models' autoload :Renderers, 'fic_tracker/renderers' autoload :Tasks, 'fic_tracker/tasks' end require_relative 'fic_tracker/backend' require_relative 'fic_tracker/config'