blob: 2dada76fdfaa35ed8b5d20c5379764ebca1b4978 [file] [log] [blame]
tierno5c012612018-04-19 16:01:59 +02001from http import HTTPStatus
2
3__author__ = "Alfonso Tierno <alfonso.tiernosepulveda@telefonica.com>"
4
5
6class DbException(Exception):
7
8 def __init__(self, message, http_code=HTTPStatus.NOT_FOUND):
tiernoebbf3532018-05-03 17:49:37 +02009 # TODO change to http.HTTPStatus instead of int that allows .value and .name
tierno5c012612018-04-19 16:01:59 +020010 self.http_code = http_code
11 Exception.__init__(self, "database exception " + message)
12
13
14class DbBase(object):
15
16 def __init__(self):
17 pass
18
19 def db_connect(self, config):
20 pass
21
22 def db_disconnect(self):
23 pass
24
25 def get_list(self, table, filter={}):
tiernoebbf3532018-05-03 17:49:37 +020026 raise DbException("Method 'get_list' not implemented")
tierno5c012612018-04-19 16:01:59 +020027
28 def get_one(self, table, filter={}, fail_on_empty=True, fail_on_more=True):
tiernoebbf3532018-05-03 17:49:37 +020029 raise DbException("Method 'get_one' not implemented")
tierno5c012612018-04-19 16:01:59 +020030
31 def create(self, table, indata):
tiernoebbf3532018-05-03 17:49:37 +020032 raise DbException("Method 'create' not implemented")
tierno5c012612018-04-19 16:01:59 +020033
34 def del_list(self, table, filter={}):
tiernoebbf3532018-05-03 17:49:37 +020035 raise DbException("Method 'del_list' not implemented")
tierno5c012612018-04-19 16:01:59 +020036
37 def del_one(self, table, filter={}, fail_on_empty=True):
tiernoebbf3532018-05-03 17:49:37 +020038 raise DbException("Method 'del_one' not implemented")