Sha256: 6392e76d2f07bd597b1d3e54807fc2ab27c3c1014870e4cc26ebce6d7de39a0f
Contents?: true
Size: 1.3 KB
Versions: 4
Compression:
Stored size: 1.3 KB
Contents
require_relative "message" module Hexx class Service # Exception to be raised by invalid services. class Invalid < ::RuntimeError # An invalid service object with error messages. attr_reader :service # Initializes the exception. # # @example # fail Hexx::Service::Invalid.new(service) # # Params: # +service+:: a Hexx::Service object containing error messages. # def initialize(service) @service = service fail ArgumentError unless self.service.is_a? Hexx::Service end # Returns a default text message for the exception. # # @example # error = Hexx::Service::Invalid.new service # error.message # => "Service invalid: #<Hexx::Service... >" # def message "Service invalid: #{ service.inspect }" end # Returns a list of <tt>Hexx::Service::Message</tt> messages of # +error+ type. # # @example # error = Hexx::Service::Invalid.new service # error.messages # => [#<Hexx::Message... >, ...] # error.messages.first.type # => "error" # def messages service.errors.values.flatten.map do |text| Message.new type: "error", text: text end end end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
hexx-2.2.0 | lib/hexx/service/invalid.rb |
hexx-2.1.0 | lib/hexx/service/invalid.rb |
hexx-2.0.2 | lib/hexx/service/invalid.rb |
hexx-2.0.1 | lib/hexx/service/invalid.rb |