Sha256: 0401dd76962248b3d8dcf3c00e25979c8b6bf67aaeb835a056e6064126009cd9

Contents?: true

Size: 839 Bytes

Versions: 11

Compression:

Stored size: 839 Bytes

Contents

require 'librarian/support/abstract_method'

module Librarian
  module Source
    # Requires that the including source class have methods:
    #   #path
    #   #environment
    module Local

      include Support::AbstractMethod

      abstract_method :path

      def manifests(dependency)
        manifest = manifest_class.create(self, dependency, filesystem_path)
        [manifest].compact
      end

      def manifest(name, version, dependencies)
        manifest = manifest_class.create(self, Dependency.new(name, nil, nil), filesystem_path)
        manifest.version = version
        manifest.dependencies = dependencies
        manifest
      end

      def manifest_search_paths(dependency)
        paths = [filesystem_path, filesystem_path.join(dependency.name)]
        paths.select{|s| s.exist?}
      end

    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
librarian-0.0.20 lib/librarian/source/local.rb
librarian-0.0.19 lib/librarian/source/local.rb
librarian-0.0.18 lib/librarian/source/local.rb
librarian-0.0.17 lib/librarian/source/local.rb
librarian-0.0.16 lib/librarian/source/local.rb
librarian-0.0.15 lib/librarian/source/local.rb
librarian-0.0.14 lib/librarian/source/local.rb
librarian-0.0.13 lib/librarian/source/local.rb
librarian-0.0.12 lib/librarian/source/local.rb
librarian-0.0.11 lib/librarian/source/local.rb
librarian-0.0.10 lib/librarian/source/local.rb