Class: Bookbinder::ConfigVersionChecker
- Inherits:
-
Object
- Object
- Bookbinder::ConfigVersionChecker
- Defined in:
- lib/bookbinder/configuration_validator.rb
Instance Method Summary collapse
- #check(config) ⇒ Object
-
#initialize(bookbinder_schema_version, starting_schema_version, messages, logger) ⇒ ConfigVersionChecker
constructor
A new instance of ConfigVersionChecker.
Constructor Details
#initialize(bookbinder_schema_version, starting_schema_version, messages, logger) ⇒ ConfigVersionChecker
Returns a new instance of ConfigVersionChecker.
93 94 95 96 97 98 |
# File 'lib/bookbinder/configuration_validator.rb', line 93 def initialize(bookbinder_schema_version, starting_schema_version, , logger) @bookbinder_schema_version = bookbinder_schema_version @starting_schema_version = starting_schema_version = @logger = logger end |
Instance Method Details
#check(config) ⇒ Object
100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 |
# File 'lib/bookbinder/configuration_validator.rb', line 100 def check(config) user_schema_version = Version.parse(config['schema_version']) if user_schema_version.valid? if user_schema_version.major > bookbinder_schema_version.major raise Configuration::ConfigSchemaUnsupportedError.new . elsif user_schema_version.minor > bookbinder_schema_version.minor raise Configuration::ConfigSchemaUnsupportedError.new . elsif user_schema_version.patch > bookbinder_schema_version.patch raise Configuration::ConfigSchemaUnsupportedError.new . elsif user_schema_version.major < bookbinder_schema_version.major raise Configuration::ConfigSchemaUnsupportedError.new . elsif user_schema_version.minor < bookbinder_schema_version.minor @logger.warn ("minor") elsif user_schema_version.patch < bookbinder_schema_version.patch @logger.warn ("patch") end elsif bookbinder_schema_version != starting_schema_version raise Configuration::ConfigSchemaUnsupportedError.new . end end |