Module: BestType

Defined in:
lib/best_type.rb,
lib/best_type/config.rb,
lib/best_type/version.rb,
lib/best_type/dc_type_lookup.rb,
lib/best_type/mime_type_lookup.rb

Defined Under Namespace

Classes: Config, DcTypeLookup, MimeTypeLookup

Constant Summary collapse

VERSION =
'0.0.2'.freeze

Class Method Summary collapse

Class Method Details

.config(reload = false, user_config_options = {}) ⇒ Object



18
19
20
21
22
23
24
25
26
27
# File 'lib/best_type.rb', line 18

def self.config(reload = false, user_config_options = {})
  if @config.nil? || reload
    @semaphore.synchronize do
      @config = BestType::Config.new(user_config_options)
      @mime_type = nil
      @dc_type = nil
    end
  end
  @config
end

.configure(opts = {}) ⇒ Object



29
30
31
# File 'lib/best_type.rb', line 29

def self.configure(opts = {})
  config(true, opts)
end

.dc_typeObject



14
15
16
# File 'lib/best_type.rb', line 14

def self.dc_type
  @dc_type ||= BestType::DcTypeLookup.new(mime_type)
end

.mime_typeObject



10
11
12
# File 'lib/best_type.rb', line 10

def self.mime_type
  @mime_type ||= BestType::MimeTypeLookup.new(config)
end

.versionObject



5
6
7
# File 'lib/best_type/version.rb', line 5

def self.version
  VERSION
end