Import code

This commit is contained in:
Paco8 committed 2023-01-22 16:20:27 +01:00
1 parent 9b88a6ecde
commit 054d387e37
20 files changed
+2348

No files matched your search

+50
View File
@@ -0,0 +1,50 @@
# encoding: utf-8
#
# SPDX-License-Identifier: LGPL-2.1-or-later
from __future__ import unicode_literals, absolute_import, division
import io
import os
import time
import glob
import sys
class Cache(object):
config_directory = ''
def __init__(self, config_directory):
self.config_directory = config_directory
def load_file(self, filename):
filename = self.config_directory + filename
if not os.path.exists(filename): return None
with io.open(filename, 'r', encoding='utf-8') as handle:
return handle.read()
def save_file(self, filename, data):
if sys.version_info[0] < 3:
if not isinstance(data, unicode):
data = unicode(data, 'utf-8')
with io.open(self.config_directory + filename, 'w', encoding='utf-8', newline='') as handle:
handle.write(data)
def load(self, filename, cache_minutes = 24*60):
filename = self.config_directory + filename
if os.path.exists(filename) and (time.time() - os.path.getmtime(filename) < cache_minutes*60):
with io.open(filename, 'r', encoding='utf-8') as handle:
return handle.read()
return None
def remove_file(self, filename):
filename = self.config_directory + filename
if os.path.exists(filename):
os.remove(filename)
def clear_config(self):
types = ('*.conf', '*.json')
files = []
for ext in types:
files.extend(glob.glob(self.config_directory + ext))
for filename in files:
os.remove(filename)