aboutsummaryrefslogtreecommitdiffstats
path: root/pygithub3/requests/repos/repo.py
diff options
context:
space:
mode:
authorDavid Medina <davidmedina9@gmail.com>2012-02-12 17:53:07 +0100
committerDavid Medina <davidmedina9@gmail.com>2012-02-12 18:37:02 +0100
commit3371f0aabc61dfc8549f0752ccc83aef06df61e8 (patch)
tree1fa6291a13ca8f3acdf2eed459be2ea08b7602d0 /pygithub3/requests/repos/repo.py
parentSupport to map `self` in resources. (diff)
downloadpython-github3-3371f0aabc61dfc8549f0752ccc83aef06df61e8.tar.xz
python-github3-3371f0aabc61dfc8549f0752ccc83aef06df61e8.zip
Repos service initialized
+service.repos.repo
Diffstat (limited to 'pygithub3/requests/repos/repo.py')
-rw-r--r--pygithub3/requests/repos/repo.py86
1 files changed, 86 insertions, 0 deletions
diff --git a/pygithub3/requests/repos/repo.py b/pygithub3/requests/repos/repo.py
new file mode 100644
index 0000000..45375a9
--- /dev/null
+++ b/pygithub3/requests/repos/repo.py
@@ -0,0 +1,86 @@
+#!/usr/bin/env python
+# -*- encoding: utf-8 -*-
+
+from . import Request
+from pygithub3.resources.repos import Repo, Team, Tag, Branch
+from pygithub3.resources.users import User
+
+__all__ = ('List', 'List_by_org', 'Create', 'Get', 'Update',
+ 'List_contributors', 'List_languages', 'List_teams', 'List_tags',
+ 'List_branches')
+
+
+class List(Request):
+
+ uri = 'users/{user}/repos'
+ resource = Repo
+
+ def clean_uri(self):
+ if not self.user:
+ return 'user/repos'
+
+
+class List_by_org(Request):
+
+ uri = 'orgs/{org}/repos'
+ resource = Repo
+
+
+class Create(Request):
+
+ uri = 'orgs/{org}/repos'
+ resource = Repo
+ body_schema = {
+ 'schema': ('name', 'description', 'homepage', 'private', 'has_issues',
+ 'has_wiki', 'has_downloads', 'team_id'),
+ 'required': ('name', )
+ }
+
+ def clean_uri(self):
+ if not self.org:
+ return 'user/repos'
+
+
+class Get(Request):
+
+ uri = 'repos/{user}/{repo}'
+ resource = Repo
+
+
+class Update(Request):
+
+ uri = 'repos/{user}/{repo}'
+ resource = Repo
+ body_schema = {
+ 'schema': ('name', 'description', 'homepage', 'private', 'has_issues',
+ 'has_wiki', 'has_downloads', 'team_id'),
+ 'required': ('name', )
+ }
+
+
+class List_contributors(Request):
+
+ uri = 'repos/{user}/{repo}/contributors'
+ resource = User
+
+
+class List_languages(Request):
+
+ uri = 'repos/{user}/{repo}/languages'
+
+
+class List_teams(Request):
+
+ uri = 'repos/{user}/{repo}/teams'
+ resource = Team
+
+
+class List_tags(Request):
+
+ uri = 'repos/{user}/{repo}/tags'
+ resource = Tag
+
+class List_branches(Request):
+
+ uri = 'repos/{user}/{repo}/branches'
+ resource = Branch