class Rohbau::Index::Validator
Public Class Methods
new(memory)
click to toggle source
# File lib/rohbau/index.rb, line 126 def initialize(memory) @memory = memory end
Public Instance Methods
validate_add(entity)
click to toggle source
# File lib/rohbau/index.rb, line 130 def validate_add(entity) ensure_entity!(entity) ensure_entity_has_no_uid!(entity) end
validate_add_with_uid(entity)
click to toggle source
# File lib/rohbau/index.rb, line 135 def validate_add_with_uid(entity) ensure_entity!(entity) ensure_entity_has_uid!(entity) ensure_uid_type!(entity.uid) end
validate_delete(uid)
click to toggle source
# File lib/rohbau/index.rb, line 152 def validate_delete(uid) ensure_uid_exists!(uid) end
validate_get(uid)
click to toggle source
# File lib/rohbau/index.rb, line 141 def validate_get(uid) ensure_uid!(uid) ensure_uid_type!(uid) end
validate_update(entity)
click to toggle source
# File lib/rohbau/index.rb, line 146 def validate_update(entity) ensure_entity!(entity) ensure_entity_has_uid!(entity) ensure_entity_exists!(entity) end
Private Instance Methods
argument_error(error, object = nil)
click to toggle source
# File lib/rohbau/index.rb, line 200 def argument_error(error, object = nil) message = "#{self.class.inspect}: #{error}" message += ": #{object.inspect}" if object ArgumentError.new(message) end
ensure_entity!(entity)
click to toggle source
# File lib/rohbau/index.rb, line 170 def ensure_entity!(entity) if entity.nil? raise argument_error('entity is invalid', entity) end end
ensure_entity_exists!(entity)
click to toggle source
# File lib/rohbau/index.rb, line 188 def ensure_entity_exists!(entity) unless @memory.has_uid?(entity.uid) raise argument_error('entity is unknown', entity) end end
ensure_entity_has_no_uid!(entity)
click to toggle source
# File lib/rohbau/index.rb, line 182 def ensure_entity_has_no_uid!(entity) if entity.uid raise argument_error('entity has uid', entity) end end
ensure_entity_has_uid!(entity)
click to toggle source
# File lib/rohbau/index.rb, line 176 def ensure_entity_has_uid!(entity) unless entity.uid raise argument_error('entity has no uid', entity) end end
ensure_uid!(uid)
click to toggle source
# File lib/rohbau/index.rb, line 158 def ensure_uid!(uid) if uid.nil? raise argument_error('uid is missing') end end
ensure_uid_exists!(uid)
click to toggle source
# File lib/rohbau/index.rb, line 194 def ensure_uid_exists!(uid) unless @memory.has_uid?(uid) raise argument_error('uid is unknown', uid) end end
ensure_uid_type!(uid)
click to toggle source
# File lib/rohbau/index.rb, line 164 def ensure_uid_type!(uid) if !uid.kind_of?(String) || uid.size == 0 raise argument_error('uid is invalid', uid) end end