Sha256: be26395ac9ecb871ba18f4938d99c76b664714fd488db67155004cbe9d2d3abd

Contents?: true

Size: 809 Bytes

Versions: 70

Compression:

Stored size: 809 Bytes

Contents

module Eco
  module API
    module Common
      module Loaders
        class CaseBase < Loaders::Base

          class << self
            attr_writer :name, :type

            # The name that this case, policy or error handler will have.
            def name(value = nil)
              name_only_once! if value
              set_created_at!
              return @name ||= self.to_s unless value
              @name = value
            end

            # Prevent the same class to be re-opened/re-named
            def name_only_once!
              raise "You have already declared #{self} or you are trying to give it a name twice" if @name
            end

          end

          def name
            self.class.name
          end

        end
      end
    end
  end
end

Version data entries

70 entries across 70 versions & 1 rubygems

Version Path
eco-helpers-2.0.55 lib/eco/api/common/loaders/case_base.rb
eco-helpers-2.0.54 lib/eco/api/common/loaders/case_base.rb
eco-helpers-2.0.53 lib/eco/api/common/loaders/case_base.rb
eco-helpers-2.0.52 lib/eco/api/common/loaders/case_base.rb
eco-helpers-2.0.51 lib/eco/api/common/loaders/case_base.rb
eco-helpers-2.0.50 lib/eco/api/common/loaders/case_base.rb
eco-helpers-2.0.49 lib/eco/api/common/loaders/case_base.rb
eco-helpers-2.0.48 lib/eco/api/common/loaders/case_base.rb
eco-helpers-2.0.47 lib/eco/api/common/loaders/case_base.rb
eco-helpers-2.0.46 lib/eco/api/common/loaders/case_base.rb
eco-helpers-2.0.45 lib/eco/api/common/loaders/case_base.rb
eco-helpers-2.0.44 lib/eco/api/common/loaders/case_base.rb
eco-helpers-2.0.43 lib/eco/api/common/loaders/case_base.rb
eco-helpers-2.0.42 lib/eco/api/common/loaders/case_base.rb
eco-helpers-2.0.41 lib/eco/api/common/loaders/case_base.rb
eco-helpers-2.0.40 lib/eco/api/common/loaders/case_base.rb
eco-helpers-2.0.39 lib/eco/api/common/loaders/case_base.rb
eco-helpers-2.0.38 lib/eco/api/common/loaders/case_base.rb
eco-helpers-2.0.37 lib/eco/api/common/loaders/case_base.rb
eco-helpers-2.0.36 lib/eco/api/common/loaders/case_base.rb