Sha256: 643aed6a63d10148c7430448d061e905c1f331d605c32b8850a90c8532acaa9b
Contents?: true
Size: 1.66 KB
Versions: 1
Compression:
Stored size: 1.66 KB
Contents
module Octopi class Repository < Base include Resource set_resource_name "repository", "repositories" find_path "/repos/search/:query" resource_path "/repos/show/:id" def tags Tag.find(self.owner, self.name) end def clone_url #FIXME: Return "git@github.com:#{self.owner}/#{self.name}.git" if #user's logged in and owns this repo. "git://github.com/#{self.owner}/#{self.name}.git" end def self.find_by_user(user) user = user.login if user.is_a? User self.validate_args(user => :user) find_plural(user, :resource) end def self.find(*args) api = args.last.is_a?(Api) ? args.pop : ANONYMOUS_API repo = args.pop user = args.pop user = user.login if user.is_a? User if repo.is_a? Repository repo = repo.name user ||= repo.owner end self.validate_args(user => :user, repo => :repo) super user, repo, api end def self.find_all(*args) # FIXME: This should be URI escaped, but have to check how the API # handles escaped characters first. super args.join(" ").gsub(/ /,'+') end def self.open_issue(args) Issue.open(args[:user], args[:repo], args) end def open_issue(args) Issue.open(self.owner, self, args, @api) end def commits(branch = "master") Commit.find_all(self, :branch => branch) end def issues(state = "open") Issue.find_all(self, :state => state) end def all_issues Issue::STATES.map{|state| self.issues(state)}.flatten end def issue(number) Issue.find(self, number) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
fcoury-octopi-0.0.7 | lib/octopi/repository.rb |