@@ -15,8 +15,11 @@ def json_get(parsed_json, key):
15
15
16
16
class GogsEntity (object ):
17
17
def __init__ (self , json ):
18
- self .json = json
18
+ self ._json = json
19
19
20
+ @property
21
+ def json (self ):
22
+ return self ._json
20
23
21
24
class GogsUser (GogsEntity ):
22
25
"""
@@ -30,7 +33,6 @@ def __init__(self, user_id, username, full_name, email, avatar_url, json={}):
30
33
self ._full_name = full_name
31
34
self ._email = email
32
35
self ._avatar_url = avatar_url
33
- self ._json = json
34
36
35
37
@staticmethod
36
38
def from_json (parsed_json ):
@@ -94,14 +96,16 @@ class GogsRepo(GogsEntity):
94
96
"""
95
97
96
98
def __init__ (self , repo_id , owner , full_name , private , fork , default_branch ,
97
- urls , permissions , json = {}):
99
+ empty , size , urls , permissions , json = {}):
98
100
super (GogsRepo , self ).__init__ (json = json )
99
101
self ._repo_id = repo_id
100
102
self ._owner = owner
101
103
self ._full_name = full_name
102
104
self ._private = private
103
105
self ._fork = fork
104
106
self ._default_branch = default_branch
107
+ self ._empty = empty
108
+ self ._size = size
105
109
self ._urls = urls
106
110
self ._permissions = permissions
107
111
@@ -113,11 +117,14 @@ def from_json(parsed_json):
113
117
private = json_get (parsed_json , "private" )
114
118
fork = json_get (parsed_json , "fork" )
115
119
default_branch = json_get (parsed_json , "default_branch" )
120
+ empty = parsed_json .get ("empty" , None )
121
+ size = parsed_json .get ("size" , None )
116
122
urls = GogsRepo .Urls (json_get (parsed_json , "html_url" ), json_get (parsed_json , "clone_url" ),
117
123
json_get (parsed_json , "ssh_url" ))
118
124
permissions = GogsRepo .Permissions .from_json (json_get (parsed_json , "permissions" ))
119
125
return GogsRepo (repo_id = repo_id , owner = owner , full_name = full_name , private = private , fork = fork ,
120
- default_branch = default_branch , urls = urls , permissions = permissions , json = parsed_json )
126
+ default_branch = default_branch , empty = empty , size = size , urls = urls ,
127
+ permissions = permissions , json = parsed_json )
121
128
122
129
@property # named repo_id to avoid conflict with built-in id
123
130
def repo_id (self ):
@@ -169,10 +176,28 @@ def default_branch(self):
169
176
"""
170
177
The name of the default branch
171
178
172
- :rtype: bool
179
+ :rtype: str
173
180
"""
174
181
return self ._default_branch
175
182
183
+ @property
184
+ def empty (self ):
185
+ """
186
+ Whether the repository is empty
187
+
188
+ :rtype: bool
189
+ """
190
+ return self ._empty
191
+
192
+ @property
193
+ def size (self ):
194
+ """
195
+ Size of the repository in kilobytes
196
+
197
+ :rtype: int
198
+ """
199
+ return self ._size
200
+
176
201
@property
177
202
def urls (self ):
178
203
"""
0 commit comments