From 1c832e9cdd1f11b0ef91eb63f5a6e434999f9db4 Mon Sep 17 00:00:00 2001 From: David Medina Date: Sat, 18 Feb 2012 16:40:08 +0100 Subject: Repos commits added --- pygithub3/resources/repos.py | 68 +++++++++++++++++++++++++++++++++++++++----- 1 file changed, 61 insertions(+), 7 deletions(-) (limited to 'pygithub3/resources') diff --git a/pygithub3/resources/repos.py b/pygithub3/resources/repos.py index 609ede4..de55b72 100644 --- a/pygithub3/resources/repos.py +++ b/pygithub3/resources/repos.py @@ -5,8 +5,6 @@ from .base import Resource from .users import User from .orgs import Org -__all__ = ('Repo', ) - class Repo(Resource): @@ -24,17 +22,73 @@ class Team(Resource): return '' % getattr(self, 'name', '') +class Author(Resource): + + _dates = ('date') + + def __str__(self): + return '' % getattr(self, 'name', '') + + +class Committer(Resource): + + _dates = ('date') + + def __str__(self): + return '' % getattr(self, 'name', '') + + +class GitCommit(Resource): + + _maps = {'author': Author, 'committer': Committer, 'tree': 'self'} + _collection_maps = {'parents': 'self'} + + def __str__(self): + return '' % (getattr(self, 'sha', ''), + getattr(self, 'message', '')) + + +class Stats(Resource): + pass + + +class File(Resource): + + def __str__(self): + return '' % getattr(self, 'filename', '') + + class Commit(Resource): + _maps = {'commit': GitCommit, 'author': User, 'committer': User, + 'stats': Stats} + _collection_maps = {'parents': GitCommit, 'files': File} + + def __str__(self): + return '' % getattr(self, 'author', '') + + +class Comment(Resource): + + _dates = ('created_at', 'updated_at') + _maps = {'user': User} + + def __str__(self): + return '' % getattr(self, 'user', '') + + +class Diff(Resource): + + _maps = {'base_commit': Commit} + _collection_maps = {'commits': Commit, 'files': File} + def __str__(self): - return '' % ( - getattr(self, 'sha', ''), - getattr(self, 'message', '')) + return '' % getattr(self, 'status', '') class Tag(Resource): - _maps = {'commit': Commit} + _maps = {'commit': GitCommit} def __str__(self): return '' % getattr(self, 'name', '') @@ -42,7 +96,7 @@ class Tag(Resource): class Branch(Resource): - _maps = {'commit': Commit} + _maps = {'commit': GitCommit} def __str__(self): return '' % getattr(self, 'name', '') -- cgit v1.3-14-g43fede