@@ -230,12 +230,7 @@ def datalink(self):
230
230
def datalink_url (self ):
231
231
if not self ._datalink_url :
232
232
try :
233
- base_url = self ._get_dataarchive_url ()
234
-
235
- if base_url .endswith ('/' ):
236
- self ._datalink_url = f'{ base_url } { DATALINK_SERVICE_PATH } '
237
- else :
238
- self ._datalink_url = f'{ base_url } /{ DATALINK_SERVICE_PATH } '
233
+ self ._datalink_url = urljoin (self ._get_dataarchive_url (), DATALINK_SERVICE_PATH )
239
234
except requests .exceptions .HTTPError as err :
240
235
log .debug (
241
236
f"ERROR getting the ALMA Archive URL: { str (err )} " )
@@ -252,12 +247,7 @@ def sia(self):
252
247
def sia_url (self ):
253
248
if not self ._sia_url :
254
249
try :
255
- base_url = self ._get_dataarchive_url ()
256
-
257
- if base_url .endswith ('/' ):
258
- self ._sia_url = f'{ base_url } { SIA_SERVICE_PATH } '
259
- else :
260
- self ._sia_url = f'{ base_url } /{ SIA_SERVICE_PATH } '
250
+ self ._sia_url = urljoin (self ._get_dataarchive_url (), SIA_SERVICE_PATH )
261
251
except requests .exceptions .HTTPError as err :
262
252
log .debug (
263
253
f"ERROR getting the ALMA Archive URL: { str (err )} " )
@@ -274,12 +264,7 @@ def tap(self):
274
264
def tap_url (self ):
275
265
if not self ._tap_url :
276
266
try :
277
- base_url = self ._get_dataarchive_url ()
278
-
279
- if base_url .endswith ('/' ):
280
- self ._tap_url = f'{ base_url } { TAP_SERVICE_PATH } '
281
- else :
282
- self ._tap_url = f'{ base_url } /{ TAP_SERVICE_PATH } '
267
+ self ._tap_url = urljoin (self ._get_dataarchive_url (), TAP_SERVICE_PATH )
283
268
except requests .exceptions .HTTPError as err :
284
269
log .debug (
285
270
f"ERROR getting the ALMA Archive URL: { str (err )} " )
0 commit comments