Module: Mindee::Dependencies

Defined in:
lib/mindee.rb,
lib/mindee/dependencies.rb

Overview

Centralized check for optional heavy dependencies

Constant Summary collapse

MINDEE_DEPENDENCIES_LOAD_ERROR =

Error message to display when dependencies are not available.

'Attempted to load Mindee PDF/Image tools without required dependencies. ' \
"If you need to process local files, please replace the 'mindee-lite' gem " \
"with the standard 'mindee' gem in your Gemfile."

Class Method Summary collapse

Class Method Details

.all_deps_available?Boolean

Checks whether all dependencies are available.

Returns:

  • (Boolean)


20
21
22
# File 'lib/mindee/dependencies.rb', line 20

def self.all_deps_available?
  check_all_dependencies
end

.check_all_dependenciesObject

Checks the presence of dependencies.



7
8
9
10
11
12
13
14
# File 'lib/mindee/dependencies.rb', line 7

def self.check_all_dependencies
  require 'origami'
  require 'mini_magick'
  require 'pdf-reader'
  true
rescue LoadError
  false
end

.require_all_deps!Object

Raises an error if dependencies are not available.

Raises:

  • (LoadError)


25
26
27
# File 'lib/mindee/dependencies.rb', line 25

def self.require_all_deps!
  raise LoadError, MINDEE_DEPENDENCIES_LOAD_ERROR unless all_deps_available?
end