# -*- coding: utf-8 -*- # Copyright 2012 Vincent Jacques vincent@vincent-jacques.net # Copyright 2012 Zearin zearin@gonk.net # Copyright 2013 Vincent Jacques vincent@vincent-jacques.net # This file is part of PyGithub. http://jacquev6.github.com/PyGithub/ # PyGithub is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License # as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. # PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. # You should have received a copy of the GNU Lesser General Public License along with PyGithub. If not, see . import github.GithubObject class GitBlob(github.GithubObject.CompletableGithubObject): """ This class represents GitBlobs as returned for example by http://developer.github.com/v3/todo """ @property def content(self): """ :type: string """ self._completeIfNotSet(self._content) return self._NoneIfNotSet(self._content) @property def encoding(self): """ :type: string """ self._completeIfNotSet(self._encoding) return self._NoneIfNotSet(self._encoding) @property def sha(self): """ :type: string """ self._completeIfNotSet(self._sha) return self._NoneIfNotSet(self._sha) @property def size(self): """ :type: integer """ self._completeIfNotSet(self._size) return self._NoneIfNotSet(self._size) @property def url(self): """ :type: string """ self._completeIfNotSet(self._url) return self._NoneIfNotSet(self._url) def _initAttributes(self): self._content = github.GithubObject.NotSet self._encoding = github.GithubObject.NotSet self._sha = github.GithubObject.NotSet self._size = github.GithubObject.NotSet self._url = github.GithubObject.NotSet def _useAttributes(self, attributes): if "content" in attributes: # pragma no branch assert attributes["content"] is None or isinstance(attributes["content"], (str, unicode)), attributes["content"] self._content = attributes["content"] if "encoding" in attributes: # pragma no branch assert attributes["encoding"] is None or isinstance(attributes["encoding"], (str, unicode)), attributes["encoding"] self._encoding = attributes["encoding"] if "sha" in attributes: # pragma no branch assert attributes["sha"] is None or isinstance(attributes["sha"], (str, unicode)), attributes["sha"] self._sha = attributes["sha"] if "size" in attributes: # pragma no branch assert attributes["size"] is None or isinstance(attributes["size"], (int, long)), attributes["size"] self._size = attributes["size"] if "url" in attributes: # pragma no branch assert attributes["url"] is None or isinstance(attributes["url"], (str, unicode)), attributes["url"] self._url = attributes["url"]