| Server IP : 208.109.34.209 / Your IP : 216.73.217.134 Web Server : Apache System : Linux 209.34.109.208.host.secureserver.net 5.14.0-687.29.1.el9_8.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Jul 23 16:18:48 EDT 2026 x86_64 User : oceanproject ( 1012) PHP Version : 8.1.34 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /lib/fm-agent/library/ |
Upload File : |
import pickle
import logging
import traceback
class PickleDatabase(object):
"""This object is a wrapper to access and handle our
local pickle file. We'll use this pickle file as a sort of
database for storing schedules and other info for the agent."""
def __init__(self, file_path):
self.file_path = file_path
try:
self.data = pickle.load(open(file_path, "rb"))
except Exception:
# If something went wrong, the data is either corrupted or missing.
log = logging.getLogger(self.__class__.__name__)
log.warning(
"Unable to open database {}, creating an empty one".format(
self.file_path
)
)
self.data = {}
open(self.file_path, "wb") # Create the DB file if it doesn't exist
log.info("Database created: %s" % self.file_path)
def save(self):
# Dump current contents of our dict into the pickle file
pickle.dump(self.data, open(self.file_path, "wb"))
def __getitem__(self, key):
return self.data[key]
def __setitem__(self, key, value):
self.data[key] = value
# Save our newly updated dictionary
self.save()
def __repr__(self):
return str(self.data)
def __contains__(self, key):
return key in self.data