@@ -217,15 +217,48 @@ def save_tokens(token_response):
217217
218218
219219# Primarily used by globus_transfer ###########################################
220- def set_up_TransferData (
220+ def get_label (remote_path : str , name : str ) -> str :
221+ subdir = os .path .basename (os .path .normpath (remote_path ))
222+ subdir_label = re .sub ("[^A-Za-z0-9_ -]" , "" , subdir )
223+ filename = name .split ("." )[0 ]
224+ label = subdir_label + " " + filename
225+ return label
226+
227+
228+ def create_TransferData (
229+ transfer_type : str ,
230+ local_endpoint : str ,
231+ remote_endpoint : str ,
232+ transfer_client : TransferClient ,
233+ label : str ,
234+ ) -> TransferData :
235+ if transfer_type == "get" :
236+ src_ep = remote_endpoint
237+ dst_ep = local_endpoint
238+ else :
239+ src_ep = local_endpoint
240+ dst_ep = remote_endpoint
241+ transfer_data = TransferData (
242+ transfer_client ,
243+ src_ep ,
244+ dst_ep ,
245+ label = label ,
246+ verify_checksum = True ,
247+ preserve_timestamp = True ,
248+ fail_on_quota_errors = True ,
249+ )
250+ return transfer_data
251+
252+
253+ def add_file_to_TransferData (
221254 transfer_type : str ,
222255 local_endpoint : Optional [str ],
223256 remote_endpoint : Optional [str ],
224257 remote_path : str ,
225258 name : str ,
226- transfer_client : TransferClient ,
227- transfer_data : Optional [ TransferData ] = None ,
228- ) -> TransferData :
259+ transfer_data : TransferData ,
260+ label : str ,
261+ ):
229262 """
230263 Set up the TransferData object, creating one if not provided.
231264 """
@@ -234,34 +267,14 @@ def set_up_TransferData(
234267 if not remote_endpoint :
235268 raise ValueError ("Remote endpoint ID is not set." )
236269 if transfer_type == "get" :
237- src_ep = remote_endpoint
238270 src_path = os .path .join (remote_path , name )
239- dst_ep = local_endpoint
240271 dst_path = os .path .join (os .getcwd (), name )
241272 else :
242- src_ep = local_endpoint
243273 src_path = os .path .join (os .getcwd (), name )
244- dst_ep = remote_endpoint
245274 dst_path = os .path .join (remote_path , name )
246275
247- subdir = os .path .basename (os .path .normpath (remote_path ))
248- subdir_label = re .sub ("[^A-Za-z0-9_ -]" , "" , subdir )
249- filename = name .split ("." )[0 ]
250- label = subdir_label + " " + filename
251-
252- if not transfer_data :
253- transfer_data = TransferData (
254- transfer_client ,
255- src_ep ,
256- dst_ep ,
257- label = label ,
258- verify_checksum = True ,
259- preserve_timestamp = True ,
260- fail_on_quota_errors = True ,
261- )
262276 transfer_data .add_item (src_path , dst_path )
263277 transfer_data ["label" ] = label
264- return transfer_data
265278
266279
267280def submit_transfer_with_checks (transfer_client , transfer_data ) -> GlobusHTTPResponse :
0 commit comments