diff options
Diffstat (limited to 'vendor/certificate_authority/lib/certificate_authority/validations.rb')
-rw-r--r-- | vendor/certificate_authority/lib/certificate_authority/validations.rb | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/vendor/certificate_authority/lib/certificate_authority/validations.rb b/vendor/certificate_authority/lib/certificate_authority/validations.rb new file mode 100644 index 0000000..a429c96 --- /dev/null +++ b/vendor/certificate_authority/lib/certificate_authority/validations.rb @@ -0,0 +1,31 @@ +# +# This is a super simple replacement for ActiveSupport::Validations +# + +module CertificateAuthority + class Errors < Array + def add(symbol, msg) + self.push([symbol, msg]) + end + def full_messages + self.map {|i| i[0].to_s + ": " + i[1]}.join("\n") + end + end + + module Validations + def valid? + @errors = Errors.new + validate + errors.empty? + end + + # must be overridden + def validate + raise NotImplementedError + end + + def errors + @errors ||= Errors.new + end + end +end |