summaryrefslogtreecommitdiffstats
path: root/pgcli/pgexecute.py
diff options
context:
space:
mode:
authorAmjith Ramanujam <amjith.r@gmail.com>2015-01-23 22:31:37 -0800
committerAmjith Ramanujam <amjith.r@gmail.com>2015-01-23 22:31:37 -0800
commitd2c79d8240cb58665aede07a8ae687ff0de4a5fb (patch)
tree3ec1310173869e77472c612a9c2fe1756d14861b /pgcli/pgexecute.py
parente90f5410336aa54c93b4fe5777e4370061c9d509 (diff)
Remove the custom parse_dsn function.
Diffstat (limited to 'pgcli/pgexecute.py')
-rw-r--r--pgcli/pgexecute.py44
1 files changed, 5 insertions, 39 deletions
diff --git a/pgcli/pgexecute.py b/pgcli/pgexecute.py
index 88528546..dc0783ce 100644
--- a/pgcli/pgexecute.py
+++ b/pgcli/pgexecute.py
@@ -22,41 +22,6 @@ psycopg2.extensions.register_type(
# See http://initd.org/psycopg/articles/2014/07/20/cancelling-postgresql-statements-python/
psycopg2.extensions.set_wait_callback(psycopg2.extras.wait_select)
-def _parse_dsn(dsn, default_user, default_password, default_host,
- default_port):
- """
- This function parses a postgres url to get the different components.
-
- """
-
- user = password = host = port = dbname = None
-
- if dsn.startswith('postgres://'): # Check if the string is a database url.
- dsn = dsn[len('postgres://'):]
- elif dsn.startswith('postgresql://'):
- dsn = dsn[len('postgresql://'):]
-
- if '/' in dsn:
- host, dbname = dsn.split('/', 1)
- if '@' in host:
- user, _, host = host.partition('@')
- if ':' in host:
- host, _, port = host.partition(':')
- if user and ':' in user:
- user, _, password = user.partition(':')
-
- user = user or default_user
- password = password or default_password
- host = host or default_host
- port = port or default_port
- dbname = dbname or dsn
-
- _logger.debug('Parsed connection params:'
- 'dbname: %r, user: %r, password: %r, host: %r, port: %r',
- dbname, user, password, host, port)
-
- return (dbname, user, password, host, port)
-
class PGExecute(object):
tables_query = '''SELECT c.relname as "Name" FROM pg_catalog.pg_class c
@@ -77,10 +42,11 @@ class PGExecute(object):
ORDER BY 1;"""
def __init__(self, database, user, password, host, port):
- (self.dbname, self.user, self.password, self.host, self.port) = \
- _parse_dsn(database, default_user=user,
- default_password=password, default_host=host,
- default_port=port)
+ self.dbname = database
+ self.user = user
+ self.password = password
+ self.host = host
+ self.port = port
self.connect()
def connect(self, database=None, user=None, password=None, host=None,