Files
PyGithub/github/GithubObject.py
T

42 lines
1.2 KiB
Python

import GithubException
class _NotSetType:
pass
NotSet = _NotSetType()
class BasicGithubObject( object ):
def __init__( self, requester, attributes, completed ): ### 'completed' may be removed if I find a way
self._requester = requester
self._initAttributes()
self._useAttributes( attributes )
@staticmethod
def _parentUrl( url ):
return "/".join( url.split( "/" )[ : -1 ] )
@staticmethod
def _NoneIfNotSet( value ):
if value is NotSet:
return None
else:
return value
class GithubObject( BasicGithubObject ):
def __init__( self, requester, attributes, completed ):
BasicGithubObject.__init__( self, requester, attributes, completed )
self.__completed = completed
def _completeIfNotSet( self, value ):
if not self.__completed and value is NotSet:
self.__complete()
def __complete( self ):
headers, data = self._requester.requestAndCheck(
"GET",
self._url,
None,
None
)
self._useAttributes( data )
self._completed = True