diff options
Diffstat (limited to 'pygithub3/requests/gists/__init__.py')
-rw-r--r-- | pygithub3/requests/gists/__init__.py | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/pygithub3/requests/gists/__init__.py b/pygithub3/requests/gists/__init__.py new file mode 100644 index 0000000..4dbc6e6 --- /dev/null +++ b/pygithub3/requests/gists/__init__.py @@ -0,0 +1,77 @@ +# -*- encoding: utf-8 -*- + +from pygithub3.requests.base import Request, ValidationError +from pygithub3.resources.gists import Gist + +class List(Request): + + uri = 'users/{user}/gists' + resource = Gist + + def clean_uri(self): + if not self.user: + return 'gists' + + +class Public(Request): + + uri = 'gists/public' + resource = Gist + + +class Starred(Request): + + uri = 'gists/starred' + resource = Gist + + +class Get(Request): + + uri = 'gists/{id}' + resource = Gist + + +class Create(Request): + + uri = 'gists' + resource = Gist + body_schema = { + 'schema': ('description', 'public', 'files'), + 'required': ('public', 'files') + } + + +class Update(Request): + + uri = 'gists/{id}' + resource = Gist + body_schema = { + 'schema': ('description', 'public', 'files'), + 'required': (), + } + + +class Star(Request): + + uri = 'gists/{id}/star' + + +class Unstar(Request): + + uri = 'gists/{id}/star' + + +class Is_starred(Request): + + uri = 'gists/{id}/star' + + +class Fork(Request): + + uri = 'gists/{id}/fork' + resource = Gist + + +class Delete(Request): + + uri = 'gists/{id}' |