Skip to content

Commit 766b512

Browse files
committed
Remove utils.tap.conn.TapConn.url_encode()
The removed method simply called the standard library `urllib.parse.urlencode()`.
1 parent 07fb421 commit 766b512

File tree

8 files changed

+24
-65
lines changed

8 files changed

+24
-65
lines changed

astroquery/esa/hubble/core.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
European Space Agency (ESA)
99
1010
"""
11+
from urllib.parse import urlencode
1112

1213
from astropy import units
1314
from astropy.coordinates import SkyCoord
@@ -503,7 +504,7 @@ def _query_tap_target(self, target):
503504

504505
subContext = conf.EHST_TARGET_ACTION
505506
connHandler = self._tap._TapPlus__getconnhandler()
506-
data = connHandler.url_encode(params)
507+
data = urlencode(params)
507508
target_response = connHandler.execute_secure(subContext, data, True)
508509
for line in target_response:
509510
target_result = json.loads(line.decode("utf-8"))

astroquery/esa/jwst/core.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
import tarfile
1717
import zipfile
1818
from datetime import datetime
19+
from urllib.parse import urlencode
1920

2021
from astropy import log
2122
from astropy import units
@@ -667,9 +668,8 @@ def set_token(self, token):
667668
MAST token to have access to propietary data
668669
"""
669670
subContext = conf.JWST_TOKEN
670-
args = {"token": token}
671+
data = urlencode({"token": token})
671672
connHandler = self.__jwsttap._TapPlus__getconnhandler()
672-
data = connHandler.url_encode(args)
673673
response = connHandler.execute_secure(subContext, data, True)
674674
if response.status == 403:
675675
print("ERROR: MAST tokens cannot be assigned or requested by anonymous users")

astroquery/gaia/tests/DummyTapHandler.py

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,6 @@
1414
1515
1616
"""
17-
from urllib.parse import urlencode
18-
1917
CONTENT_TYPE_POST_DEFAULT = "application/x-www-form-urlencoded"
2018

2119

@@ -320,6 +318,3 @@ def is_valid_user(self, user_id=None, verbose=False):
320318
self.__invokedMethod = 'is_valid_user'
321319
self.__parameters['user_id'] = user_id
322320
self.__parameters['verbose'] = verbose
323-
324-
def url_encode(self, data):
325-
return urlencode(data)

astroquery/utils/tap/conn/tapconn.py

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,6 @@
2424
import mimetypes
2525
import time
2626

27-
from urllib.parse import urlencode
28-
2927
from astroquery.utils.tap.xmlparser import utils
3028
from astroquery.utils.tap import taputils
3129
from astroquery import version
@@ -474,16 +472,6 @@ def get_response_reason(self):
474472
"""
475473
return self.__currentReason
476474

477-
def url_encode(self, data):
478-
"""Encodes the provided dictionary
479-
480-
Parameters
481-
----------
482-
data : dictionary, mandatory
483-
dictionary to be encoded
484-
"""
485-
return urlencode(data)
486-
487475
def find_header(self, headers, key):
488476
"""Searches for the specified keyword
489477

astroquery/utils/tap/conn/tests/DummyConnHandler.py

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,6 @@
1616
"""
1717
from astroquery.utils.tap import taputils
1818

19-
from urllib.parse import urlencode
20-
2119
import requests
2220

2321

@@ -147,9 +145,6 @@ def check_launch_response_status(self, response, debug,
147145
else:
148146
return isError
149147

150-
def url_encode(self, data):
151-
return urlencode(data)
152-
153148
def get_suitable_extension(self, headers):
154149
return self.fileExt
155150

astroquery/utils/tap/core.py

Lines changed: 11 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@
1313
Created on 30 jun. 2016
1414
Modified on 1 jun. 2021 by mhsarmiento
1515
"""
16+
from urllib.parse import urlencode
17+
1618
from astroquery.utils.tap import taputils
1719
from astroquery.utils.tap.conn.tapconn import TapConn
1820
from astroquery.utils.tap.xmlparser.tableSaxParser import TableSaxParser
@@ -554,7 +556,7 @@ def list_async_jobs(self, verbose=False):
554556
return jobs
555557

556558
def __appendData(self, args):
557-
data = self.__connHandler.url_encode(args)
559+
data = urlencode(args)
558560
result = ""
559561
firtsTime = True
560562
for k in data:
@@ -633,9 +635,8 @@ def __launchJob(self, query, outputFormat, context, verbose, name=None,
633635
args['PHASE'] = 'RUN'
634636
if name is not None:
635637
args['jobname'] = name
636-
data = self.__connHandler.url_encode(args)
637638
response = self.__connHandler.execute_tappost(subcontext=context,
638-
data=data,
639+
data=urlencode(args),
639640
verbose=verbose)
640641
if verbose:
641642
print(response.status, response.reason)
@@ -847,7 +848,7 @@ def load_data(self, params_dict=None, output_file=None, verbose=False):
847848
connHandler = self.__getconnhandler()
848849
if not isinstance(params_dict, dict):
849850
raise ValueError("Parameters dictionary expected")
850-
data = connHandler.url_encode(params_dict)
851+
data = urlencode(params_dict)
851852
if verbose:
852853
print(f"Data request: {data}")
853854
response = connHandler.execute_datapost(data=data, verbose=verbose)
@@ -1371,8 +1372,7 @@ def __execLogin(self, usr, pwd, verbose=False):
13711372
"username": usr,
13721373
"password": pwd}
13731374
connHandler = self.__getconnhandler()
1374-
data = connHandler.url_encode(args)
1375-
response = connHandler.execute_secure(subContext, data, verbose)
1375+
response = connHandler.execute_secure(subContext, urlencode(args), verbose)
13761376
if verbose:
13771377
print(response.status, response.reason)
13781378
print(response.getheaders())
@@ -1568,8 +1568,7 @@ def delete_user_table(self, table_name=None, force_removal=False,
15681568
"DELETE": "TRUE",
15691569
"FORCE_REMOVAL": "FALSE"}
15701570
connHandler = self.__getconnhandler()
1571-
data = connHandler.url_encode(args)
1572-
response = connHandler.execute_upload(data, verbose=verbose)
1571+
response = connHandler.execute_upload(urlencode(args), verbose=verbose)
15731572
if verbose:
15741573
print(response.status, response.reason)
15751574
print(response.getheaders())
@@ -1620,8 +1619,7 @@ def rename_table(self, table_name=None, new_table_name=None, new_column_names_di
16201619
args = self.get_args_4_rename_table(table_name, table_name, new_column_names_dict)
16211620

16221621
connHandler = self.__getconnhandler()
1623-
data = connHandler.url_encode(args)
1624-
response = connHandler.execute_table_tool(data, verbose=verbose)
1622+
response = connHandler.execute_table_tool(urlencode(args), verbose=verbose)
16251623

16261624
if verbose:
16271625
print(response.status, response.reason)
@@ -1724,8 +1722,7 @@ def update_user_table(self, table_name=None, list_of_changes=[],
17241722
list_of_changes)
17251723

17261724
connHandler = self.__getconnhandler()
1727-
data = connHandler.url_encode(args)
1728-
response = connHandler.execute_table_edit(data, verbose=verbose)
1725+
response = connHandler.execute_table_edit(urlencode(args), verbose=verbose)
17291726
if verbose:
17301727
print(response.status, response.reason)
17311728
print(response.getheaders())
@@ -1897,8 +1894,7 @@ def set_ra_dec_columns(self, table_name=None,
18971894
"DEC": str(dec_column_name),
18981895
}
18991896
connHandler = self.__getconnhandler()
1900-
data = connHandler.url_encode(args)
1901-
response = connHandler.execute_table_edit(data, verbose=verbose)
1897+
response = connHandler.execute_table_edit(urlencode(args), verbose=verbose)
19021898
isError = connHandler.check_launch_response_status(response,
19031899
verbose,
19041900
200)
@@ -1995,10 +1991,8 @@ def logout(self, verbose=False):
19951991
flag to display information about the process
19961992
"""
19971993
subContext = "logout"
1998-
args = {}
19991994
connHandler = self.__getconnhandler()
2000-
data = connHandler.url_encode(args)
2001-
response = connHandler.execute_secure(subContext, data)
1995+
response = connHandler.execute_secure(subContext, "")
20021996
if verbose:
20031997
print(response.status, response.reason)
20041998
print(response.getheaders())

astroquery/utils/tap/model/job.py

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
"""
1717

1818
import time
19+
from urllib.parse import urlencode
1920

2021
from astroquery.utils.tap.model import modelutils
2122
from astroquery.utils.tap.xmlparser import utils
@@ -110,12 +111,9 @@ def abort(self, verbose=False):
110111
def __change_phase(self, phase, verbose=False):
111112
if self._phase == 'PENDING':
112113
context = f"async/{self.jobid}/phase"
113-
args = {
114-
"PHASE": str(phase)}
115-
data = self.connHandler.url_encode(args)
116-
response = self.connHandler.execute_tappost(subcontext=context,
117-
data=data,
118-
verbose=verbose)
114+
response = self.connHandler.execute_tappost(
115+
subcontext=context, data=urlencode({"PHASE": phase}), verbose=verbose
116+
)
119117
if verbose:
120118
print(response.status, response.reason)
121119
print(response.getheaders())
@@ -150,11 +148,8 @@ def send_parameter(self, name=None, value=None, verbose=False):
150148
if self._phase == 'PENDING':
151149
# send post parameter/value
152150
context = f"async/{self.jobid}"
153-
args = {
154-
name: str(value)}
155-
data = self.connHandler.url_encode(args)
156151
response = self.connHandler.execute_tappost(subcontext=context,
157-
data=data,
152+
data=urlencode({name: value}),
158153
verbose=verbose)
159154
if verbose:
160155
print(response.status, response.reason)

astroquery/utils/tap/tests/test_tap.py

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
"""
1515
import os
1616
from unittest.mock import patch
17+
from urllib.parse import quote_plus, urlencode
1718

1819
import numpy as np
1920
import pytest
@@ -156,17 +157,13 @@ def test_launch_sync_job():
156157
jobData = utils.read_file_content(jobDataFile)
157158
responseLaunchJob.set_data(method='POST', body=jobData)
158159
query = 'select top 5 * from table'
159-
dTmp = {"q": query}
160-
dTmpEncoded = connHandler.url_encode(dTmp)
161-
p = dTmpEncoded.find("=")
162-
q = dTmpEncoded[p + 1:]
163160
dictTmp = {
164161
"REQUEST": "doQuery",
165162
"LANG": "ADQL",
166163
"FORMAT": "votable",
167164
"tapclient": str(tap.tap_client_id),
168165
"PHASE": "RUN",
169-
"QUERY": str(q)}
166+
"QUERY": quote_plus(query)}
170167
sortedKey = taputils.taputil_create_sorted_dict_key(dictTmp)
171168
jobRequest = f"sync?{sortedKey}"
172169
connHandler.set_response(jobRequest, responseLaunchJob)
@@ -220,17 +217,13 @@ def test_launch_sync_job_redirect():
220217
]
221218
responseLaunchJob.set_data(method='POST')
222219
query = 'select top 5 * from table'
223-
dTmp = {"q": query}
224-
dTmpEncoded = connHandler.url_encode(dTmp)
225-
p = dTmpEncoded.find("=")
226-
q = dTmpEncoded[p + 1:]
227220
dictTmp = {
228221
"REQUEST": "doQuery",
229222
"LANG": "ADQL",
230223
"FORMAT": "votable",
231224
"tapclient": str(tap.tap_client_id),
232225
"PHASE": "RUN",
233-
"QUERY": str(q)}
226+
"QUERY": quote_plus(query)}
234227
sortedKey = taputils.taputil_create_sorted_dict_key(dictTmp)
235228
jobRequest = f"sync?{sortedKey}"
236229
connHandler.set_response(jobRequest, responseLaunchJob)
@@ -844,9 +837,7 @@ def test_rename_table():
844837
"new_table_name": newTableName,
845838
"table_name": tableName,
846839
}
847-
data = connHandler.url_encode(dictArgs)
848-
req = f"TableTool?{data}"
849-
connHandler.set_response(req, responseRenameTable)
840+
connHandler.set_response(f"TableTool?{urlencode(dictArgs)}", responseRenameTable)
850841
tap.rename_table(table_name=tableName, new_table_name=newTableName, new_column_names_dict=newColumnNames)
851842

852843

0 commit comments

Comments
 (0)