Class: Codestatus::PackageResolvers::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/codestatus/package_resolvers/base.rb

Direct Known Subclasses

NpmResolver, RubygemsResolver

Constant Summary collapse

GITHUB_REPOSITORY_REGEXP =
%r{(https?|git)://github.com/(?<owner>[^/]*)/(?<repo>[^/]*)(\.git)?/?.*}.freeze
BITBUCKET_REPOSITORY_REGEXP =
%r{(https?|git)://bitbucket.org/(?<owner>[^/]*)/(?<repo>[^/]*)(\.git)?/?.*}.freeze

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(package) ⇒ Base

Returns a new instance of Base.



15
16
17
# File 'lib/codestatus/package_resolvers/base.rb', line 15

def initialize(package)
  @package = package
end

Instance Attribute Details

#packageObject (readonly)

Returns the value of attribute package.



19
20
21
# File 'lib/codestatus/package_resolvers/base.rb', line 19

def package
  @package
end

Class Method Details

.resolve(package) ⇒ Object



7
8
9
# File 'lib/codestatus/package_resolvers/base.rb', line 7

def self.resolve(package)
  self.new(package).resolve
end

.resolve!(package) ⇒ Object



11
12
13
# File 'lib/codestatus/package_resolvers/base.rb', line 11

def self.resolve!(package)
  self.new(package).resolve!
end

Instance Method Details

#resolveObject



21
22
23
24
25
# File 'lib/codestatus/package_resolvers/base.rb', line 21

def resolve
  detect_repository
rescue PackageNotFoundError, RepositoryNotFoundError
  # noop
end

#resolve!Object



27
28
29
# File 'lib/codestatus/package_resolvers/base.rb', line 27

def resolve!
  detect_repository
end