Sha256: 4629339d087a6da05751fb738a97742463a98a473403a2ca5ffb43c4124842fc
Contents?: true
Size: 537 Bytes
Versions: 3
Compression:
Stored size: 537 Bytes
Contents
module Notifications class UuidValidator HEX = /[0-9a-f]/ REGEX = /^#{HEX}{8}-#{HEX}{4}-#{HEX}{4}-#{HEX}{4}-#{HEX}{12}$/ attr_accessor :uuid def initialize(uuid) self.uuid = uuid end def valid? !!(uuid && uuid.match(REGEX)) end def self.validate!(uuid, contextual_message = nil) return if new(uuid).valid? message = "#{uuid.inspect} is not a valid uuid" message += "\n#{contextual_message}" if contextual_message raise ArgumentError, message end end end
Version data entries
3 entries across 3 versions & 1 rubygems