class DBSchema(object): def __init__(self): self.dao = DAO() @staticmethod def bootstrap(): return [ """ CREATE TABLE IF NOT EXISTS Episode( id INTEGER PRIMARY KEY AUTOINCREMENT UNIQUE, show_name VARCHAR(255) NOT NULL, season_number INTEGER DEFAULT NULL, episode_number INTEGER DEFAULT NULL, torrent_path VARCHAR(255) DEFAULT NULL, torrent_origin VARCHAR(255) DEFAULT NULL, downloaded_at DATE ) """ ] @staticmethod def destroy(): return [ """ DROP TABLE IF EXISTS Episode; """ ] def execute(self, requests): for request in requests: self.dao.run(request, commit=True)