Sha256: 65127a8cd88ed6dbd77751e8c787b21019b96e80ab7584154ad5c1230ee6302d

Contents?: true

Size: 731 Bytes

Versions: 2

Compression:

Stored size: 731 Bytes

Contents

module Vedeu

  # Allows the storing of interfaces and views.
  #
  class InterfacesRepository < Repository

    class << self

      # @return [Vedeu::InterfacesRepository]
      def interfaces
        @interfaces ||= reset!
      end
      alias_method :repository, :interfaces

      # @return [Vedeu::InterfacesRepository]
      def reset!
        @interfaces = Vedeu::InterfacesRepository.
          register_repository(Vedeu::Interface)
      end

    end

    # @param name [String]
    # @return [Vedeu::Interface|Vedeu::NullInterface]
    def by_name(name)
      if registered?(name)
        find(name)

      else
        Vedeu::NullInterface.new(name: name)

      end
    end

  end # InterfacesRepository

end # Vedeu

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
vedeu-0.4.17 lib/vedeu/repositories/repositories/interfaces_repository.rb
vedeu-0.4.16 lib/vedeu/repositories/repositories/interfaces_repository.rb