@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
# Copyright 2016-202 0 Mike Fährmann
# Copyright 2016-202 1 Mike Fährmann
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
@ -168,24 +168,33 @@ def cache(maxage=3600, keyarg=None):
return wrap
def clear ( ) :
""" Delete all database entries"""
def clear ( module = " all " ) :
""" Delete database entries for ' module ' """
db = DatabaseCacheDecorator . db
if not db :
return None
if db :
rowcount = 0
cursor = db . cursor ( )
try :
rowcount = 0
cursor = db . cursor ( )
module = module . lower ( )
try :
if module == " all " :
cursor . execute ( " DELETE FROM data " )
except sqlite3 . OperationalError :
pass # database is not initialized, can't be modified, etc.
else :
rowcount = cursor . rowcount
db . commit ( )
cursor . execute (
" DELETE FROM data "
" WHERE key LIKE ' gallery_dl.extractor. ' || ? || ' . % ' " ,
( module , )
)
except sqlite3 . OperationalError :
pass # database is not initialized, can't be modified, etc.
else :
rowcount = cursor . rowcount
db . commit ( )
if rowcount :
cursor . execute ( " VACUUM " )
return rowcount
return None
return rowcount
def _path ( ) :