Add a Plan class

This commit is contained in:
Vincent Jacques
2012-05-08 21:27:27 +02:00
parent 6565563412
commit 824b45490d
7 changed files with 140 additions and 7 deletions
+70
View File
@@ -0,0 +1,70 @@
# WARNING: this file is generated automaticaly.
# Do not modify it manually, your work would be lost.
import PaginatedList
# This allows None as a valid value for an optional parameter
class DefaultValueForOptionalParametersType:
pass
DefaultValueForOptionalParameters = DefaultValueForOptionalParametersType()
class Plan( object ):
def __init__( self, requester, attributes, lazy ):
self.__requester = requester
self.__completed = False
self.__initAttributes()
self.__useAttributes( attributes )
if not lazy:
self.__complete()
@property
def collaborators( self ):
self.__completeIfNeeded( self.__collaborators )
return self.__collaborators
@property
def name( self ):
self.__completeIfNeeded( self.__name )
return self.__name
@property
def private_repos( self ):
self.__completeIfNeeded( self.__private_repos )
return self.__private_repos
@property
def space( self ):
self.__completeIfNeeded( self.__space )
return self.__space
def __initAttributes( self ):
self.__collaborators = None
self.__name = None
self.__private_repos = None
self.__space = None
def __completeIfNeeded( self, testedAttribute ):
if not self.__completed and testedAttribute is None:
self.__complete()
# @todo Do not generate __complete if type has no url attribute
def __complete( self ):
status, headers, data = self.__requester.request(
"GET",
self.__url,
None,
None
)
self.__useAttributes( data )
self.__completed = True
def __useAttributes( self, attributes ):
#@todo No need to check if attribute is in attributes when attribute is mandatory
if "collaborators" in attributes and attributes[ "collaborators" ] is not None:
self.__collaborators = attributes[ "collaborators" ]
if "name" in attributes and attributes[ "name" ] is not None:
self.__name = attributes[ "name" ]
if "private_repos" in attributes and attributes[ "private_repos" ] is not None:
self.__private_repos = attributes[ "private_repos" ]
if "space" in attributes and attributes[ "space" ] is not None:
self.__space = attributes[ "space" ]