class Codestatus::PackageResolvers::Base
Constants
- BITBUCKET_REPOSITORY_REGEXP
- GITHUB_REPOSITORY_REGEXP
Attributes
package[R]
Public Class Methods
new(package)
click to toggle source
# File lib/codestatus/package_resolvers/base.rb, line 15 def initialize(package) @package = package end
resolve(package)
click to toggle source
# File lib/codestatus/package_resolvers/base.rb, line 7 def self.resolve(package) self.new(package).resolve end
resolve!(package)
click to toggle source
# File lib/codestatus/package_resolvers/base.rb, line 11 def self.resolve!(package) self.new(package).resolve! end
Public Instance Methods
resolve()
click to toggle source
# File lib/codestatus/package_resolvers/base.rb, line 21 def resolve detect_repository rescue PackageNotFoundError, RepositoryNotFoundError # noop end
resolve!()
click to toggle source
# File lib/codestatus/package_resolvers/base.rb, line 27 def resolve! detect_repository end
Private Instance Methods
bitbucket_repository()
click to toggle source
# File lib/codestatus/package_resolvers/base.rb, line 54 def bitbucket_repository urls.map { |url| matched = BITBUCKET_REPOSITORY_REGEXP.match(url) next unless matched repo = [matched[:owner], matched[:repo]].join('/') Repositories::BitbucketRepository.new(repo) }.compact.first end
detect_repository()
click to toggle source
# File lib/codestatus/package_resolvers/base.rb, line 33 def detect_repository raise PackageNotFoundError unless found? repository = github_repository || bitbucket_repository raise RepositoryNotFoundError unless repository repository end
found?()
click to toggle source
# File lib/codestatus/package_resolvers/base.rb, line 40 def found? raise NotImplementedError end
github_repository()
click to toggle source
# File lib/codestatus/package_resolvers/base.rb, line 44 def github_repository urls.map { |url| matched = GITHUB_REPOSITORY_REGEXP.match(url) next unless matched repo = [matched[:owner], matched[:repo]].join('/') Repositories::GitHubRepository.new(repo) }.compact.first end
urls()
click to toggle source
# File lib/codestatus/package_resolvers/base.rb, line 64 def urls raise NotImplementedError end