@@ -19,19 +19,33 @@ def __init__(
19
19
full_name_key : str = "full_name" ,
20
20
** kwargs : any ,
21
21
):
22
-
23
22
self .client = GithubRestApiClient (** kwargs )
24
23
self .full_name_key = full_name_key
25
24
26
25
async def transform_record (
27
26
self ,
28
27
record : types .GithubRepo ,
29
28
) -> AsyncGenerator [types .GithubUser ]:
30
- (repo_owner , repo_name ) = record [self .full_name_key ].split ("/" )
31
- logging .debug ("Transforming record %s/%s" , repo_owner , repo_name )
29
+ logging .debug ("Attempting to transform %s" , record )
32
30
31
+ full_name = record .get (self .full_name_key )
33
32
simplified_repo = simplify_repo (record )
34
33
34
+ if full_name is not None :
35
+ async for user in self ._transform (full_name , simplified_repo ):
36
+ yield user
37
+ else :
38
+ logging .info ("No full_name key found in record %s" , record )
39
+
40
+ async def _transform (
41
+ self ,
42
+ full_name : str ,
43
+ simplified_repo : types .SimplifiedRepo ,
44
+ ) -> AsyncGenerator [types .GithubUser ]:
45
+ (repo_owner , repo_name ) = full_name .split ("/" )
46
+
47
+ logging .debug ("Transforming repo %s/%s" , repo_owner , repo_name )
48
+
35
49
async for collaborator in self .client .fetch_collaborators_for_repo (
36
50
owner_login = repo_owner ,
37
51
repo_name = repo_name ,
0 commit comments