diff options
author | Guido Günther <agx@sigxcpu.org> | 2012-03-15 22:08:50 +0100 |
---|---|---|
committer | Guido Günther <agx@sigxcpu.org> | 2012-03-15 22:38:32 +0100 |
commit | a6bca603b9f3852a784afc76ea1d0a24306f3672 (patch) | |
tree | 76559a138b2af9ff334a9525cedb9702cd7b6eb3 /gbp | |
parent | 797a229ff721d2d831e6c08b06c3eea272c4dc2b (diff) |
GitModifier: add __getitem__ and keys()
so it can be used as dictonary
Diffstat (limited to 'gbp')
-rw-r--r-- | gbp/git/modifier.py | 16 | ||||
-rw-r--r-- | gbp/git/repository.py | 3 |
2 files changed, 18 insertions, 1 deletions
diff --git a/gbp/git/modifier.py b/gbp/git/modifier.py index c77bb4d..51d9693 100644 --- a/gbp/git/modifier.py +++ b/gbp/git/modifier.py @@ -76,3 +76,19 @@ class GitModifier(object): """ return self._get_env('committer') + def __getitem__(self, key): + if key in self.keys(): + return self.__dict__[key] + else: + raise KeyError + + def keys(self): + return [ 'name', 'email', 'date' ] + + def items(self): + items = [] + for key in self.keys(): + val = self.__dict__[key] + if val: + items.append((key, val)) + return items diff --git a/gbp/git/repository.py b/gbp/git/repository.py index 3daf2da..03b166c 100644 --- a/gbp/git/repository.py +++ b/gbp/git/repository.py @@ -935,6 +935,7 @@ class GitRepository(object): @type author: C{dict} with keys I{name}, I{email}, I{date} @param committer: committer information to use for commit @type committer: C{dict} with keys I{name}, I{email}, I{date} + or L{GitModifier} @param create_missing_branch: create I{branch} as detached branch if it doesn't already exist. @type create_missing_branch: C{bool} @@ -987,7 +988,7 @@ class GitRepository(object): @param msg: commit message @param parents: parents of this commit @param author: authorship information - @type author: C{dict} with keys 'name' and 'email' + @type author: C{dict} with keys 'name' and 'email' or L{GitModifier} @param committer: comitter information @type committer: C{dict} with keys 'name' and 'email' """ |