From: Razvan Deaconescu Date: Tue, 16 Aug 2011 16:08:32 +0000 (+0300) Subject: Create base class and SQLite class. X-Git-Url: http://p2p-next.cs.pub.ro/gitweb/?a=commitdiff_plain;h=0abdd96d14b86d0fc919393bb9b5918e6decb0c0;p=cs-p2p-next.git Create base class and SQLite class. --- diff --git a/ppf/db/access.py b/ppf/db/access.py index 527a02e..e32a4e1 100644 --- a/ppf/db/access.py +++ b/ppf/db/access.py @@ -17,21 +17,19 @@ class DatabaseAccess: insert_swarms - row fields to be added are passed as separate arguments """ - operators={'eq':'=', 'neq':'<>', 'gt':'>', 'gte':'>=', 'lt':'<', 'lte':'<=', 'lk':'LIKE'} - def __init__ (self, dbname): - self.dbname = dbname + self.operators = {'eq':'=', 'neq':'<>', 'gt':'>', 'gte':'>=', 'lt':'<', 'lte':'<=', 'lk':'LIKE'} - def connect(self): - if not os.path.isfile(self.dbname): - return False - self.conn = sqlite3.connect(self.dbname) - self.cursor = self.conn.cursor() + def __init__(self): + pass + + def connect(self, database): + self.conn = None + self.cursor = None return True def disconnect(self): - self.cursor.close() - self.conn.close() + pass def get_cursor(self): return self.cursor @@ -39,18 +37,96 @@ class DatabaseAccess: def get_connection(self): return self.conn - def get_status(self): - """ - Select rows in all tables - """ - tables = ['swarms', 'btclients', 'client_sessions', 'status_messages', 'verbose_messages'] - for t in tables: - try: - self.cursor.execute("select * from '%s'" %t) - for row in self.cursor: - print row - except sqlite3.Error, e: - print "[select] error: ", e.args[0] + def insert_swarms_row(self, row): + pass + + def insert_swarms(self, torrent_file, filesize, purpose, source): + self.insert_swarms_row([torrent_file, filesize, purpose, source]) + + def select_swarms(self, show=True, swarm_id=-1): + pass + + def delete_swarms(self, swarm_id=-1): + pass + + def insert_btclients_row(self, row): + pass + + def insert_btclients(self, client_name, language, dht, streaming): + insert_btclients_row([client_name, language, dht, streaming]) + + def select_btclients(self, show=True, id=-1): + pass + + def select_btclients_by_name(self, client_name, show=True): + pass + + def select_btclients_id_by_name(self, client_name): + pass + + def insert_client_sessions_row(self, row): + pass + + def insert_client_sessions(self, swarm_id, client_id, system_os, system_os_version, system_ram, system_cpu, public_ip, public_port, ds_limit, us_limit, start_time): + self.insert_client_sessions_row([swarm_id, client_id, system_os, system_os_version, system_ram, system_cpu, public_ip, public_port, ds_limit, us_limit, start_time]); + + def select_client_sessions_by_id(self, show=True, cs_id=-1): + pass + + def select_client_sessions_by_swarm(self, show=True, swarm_id=-1, client_id=None): + pass + + def delete_client_sessions_by_id(self, cs_id=-1): + pass + + def delete_client_sessions_by_swarm(self, swarm_id=-1, client_id=None): + pass + + def insert_status_messages_row(self, row): + pass + + def insert_status_messages(self, cs_id, timestamp, peer_num, dht, download_speed, upload_speed, download_size, upload_size, eta): + self.insert_status_messages_row([cs_id, timestamp, peer_num, dht, download_speed, upload_speed, download_size, upload_size, eta]) + + def select_status_messages(self, show=True, cs_id=-1, restrictArray=None): + pass + + def delete_status_messages(self, cs_id=-1): + pass + + def insert_verbose_messages_row(self, row): + pass + + def insert_verbose_messages(self, cs_id, timestamp, direction, peer_ip, peer_port, message_type, _index, begin, length, listen_port): + self.insert_verbose_messages_row([cs_id, timestamp, direction, peer_ip, peer_port, message_type, _index, begin, length, listen_port]) + + def select_verbose_messages(self, show=True, cs_id=-1, restrictArray=None): + pass + + def delete_verbose_messages(self, cs_id=-1): + pass + + +class MySQLDatabaseAccess(DatabaseAccess): + """ + SQLite interface for databae access. + """ + +class SQLiteDatabaseAccess(DatabaseAccess): + """ + SQLite interface for databae access. + """ + + def connect(self, database): + if not os.path.isfile(self.database): + return False + self.conn = sqlite3.connect(self.dbname) + self.cursor = self.conn.cursor() + return True + + def disconnect(self): + self.cursor.close() + self.conn.close() def insert_swarms_row(self, row): try: @@ -59,10 +135,7 @@ class DatabaseAccess: except sqlite3.Error, e: print ("[swarms]An error ocurred: ", e.args[0]) - def insert_swarms(self, torrent_file, filesize, purpose, source): - self.insert_swarms_row([torrent_file, filesize, purpose, source]) - - def select_swarms(self, show = True, swarm_id = -1): + def select_swarms(self, show=True, swarm_id=-1): try: if swarm_id == -1: self.cursor.execute("select * from swarms") @@ -77,7 +150,7 @@ class DatabaseAccess: except sqlite3.Error, e: print("[swarms]An error ocurred: ", e.args[0]) - def delete_swarms(self, swarm_id = -1): + def delete_swarms(self, swarm_id=-1): try: if swarm_id == -1: self.cursor.execute("delete from swarms") @@ -94,10 +167,7 @@ class DatabaseAccess: except sqlite3.Error, e: print ("[btclients]An error ocurred: ", e.args[0]) - def insert_btclients(self, client_name, language, dht, streaming): - btclients([client_name, language, dht, streaming]) - - def select_btclients(self, show = True, id = -1): + def select_btclients(self, show=True, id=-1): try: if id == -1: self.cursor.execute("""select * from btclients""") @@ -111,7 +181,7 @@ class DatabaseAccess: except sqlite3.Error, e: print ("[btclients]An error ocurred: ", e.args[0]) - def select_btclient_by_name(self, client_name, show = True): + def select_btclients_by_name(self, client_name, show=True): try: self.cursor.execute("""select * from btclients where name='%s'""" %client_name) if show == True: @@ -122,7 +192,7 @@ class DatabaseAccess: except sqlite3.Error, e: print ("[btclients]An error ocurred: ", e.args[0]) - def select_btclient_id_by_name(self, client_name): + def select_btclients_id_by_name(self, client_name): try: self.cursor.execute("""select * from btclients where name='%s'""" %client_name) for row in self.cursor: @@ -137,10 +207,7 @@ class DatabaseAccess: except sqlite3.Error, e: print ("[client_sessions]An error ocurred: ", e.args[0]) - def insert_client_sessions(self, swarm_id, client_id, system_os, system_os_version, system_ram, system_cpu, public_ip, public_port, ds_limit, us_limit, start_time): - self.insert_client_sessions_row([swarm_id, client_id, system_os, system_os_version, system_ram, system_cpu, public_ip, public_port, ds_limit, us_limit, start_time]); - - def select_client_sessions_by_id(self, show = True, cs_id = -1): + def select_client_sessions_by_id(self, show=True, cs_id=-1): try: if cs_id == -1: self.cursor.execute("""select * from client_sessions""") @@ -154,7 +221,7 @@ class DatabaseAccess: except sqlite3.Error, e: print ("[client_sessions]An error ocurred: ", e.args[0]) - def select_client_sessions_by_swarm(self, show = True, swarm_id = -1, client_id = None): + def select_client_sessions_by_swarm(self, show=True, swarm_id=-1, client_id=None): try: if client_id == None: if swarm_id == -1: @@ -175,7 +242,7 @@ class DatabaseAccess: except sqlite3.Error, e: print ("[client_sessions]An error ocurred: ", e.args[0]) - def delete_client_sessions_by_id(self, cs_id = -1): + def delete_client_sessions_by_id(self, cs_id=-1): try: if cs_id == -1: self.cursor.execute("""delete from client_sessions""") @@ -185,7 +252,7 @@ class DatabaseAccess: except sqlite3.Error, e: print ("[client_sessions]An error ocurred: ", e.args[0]) - def delete_client_sessions_by_swarm(self, swarm_id = -1, client_id = None): + def delete_client_sessions_by_swarm(self, swarm_id=-1, client_id=None): try: if client_id == None: if swarm_id == -1: @@ -210,10 +277,7 @@ class DatabaseAccess: except sqlite3.Error, e: print ("[status_messages]An error ocurred: ", e.args[0]) - def insert_status_messages(self, cs_id, timestamp, peer_num, dht, download_speed, upload_speed, download_size, upload_size, eta): - self.insert_status_messages_row([cs_id, timestamp, peer_num, dht, download_speed, upload_speed, download_size, upload_size, eta]) - - def select_status_messages(self, show = True, cs_id = -1, restrictArray=None): + def select_status_messages(self, show=True, cs_id=-1, restrictArray=None): try: if cs_id == -1: self.cursor.execute("select * from status_messages") @@ -238,7 +302,7 @@ class DatabaseAccess: except sqlite3.Error, e: print("[status_messages]An error ocurred: ", e.args[0]) - def delete_status_messages(self, cs_id = -1): + def delete_status_messages(self, cs_id=-1): try: if cs_id == -1: self.cursor.execute("delete from status_messages") @@ -257,10 +321,7 @@ class DatabaseAccess: except sqlite3.Error, e: print ("[verbose_messages]An error ocurred: ", e.args[0]) - def insert_verbose_messages(self, cs_id, timestamp, direction, peer_ip, peer_port, message_type, _index, begin, length, listen_port): - self.insert_verbose_messages_row([cs_id, timestamp, direction, peer_ip, peer_port, message_type, _index, begin, length, listen_port]) - - def select_verbose_messages(self, show = True, cs_id = -1, restrictArray=None): + def select_verbose_messages(self, show=True, cs_id=-1, restrictArray=None): try: if cs_id == -1: self.cursor.execute("select * from verbose_messages") @@ -284,7 +345,7 @@ class DatabaseAccess: except sqlite3.Error, e: print("[status_messages]An error ocurred: ", e.args[0]) - def delete_verbose_messages(self, cs_id = -1): + def delete_verbose_messages(self, cs_id=-1): try: if cs_id == -1: self.cursor.execute("delete from verbose_messages")