/usr/share/pyshared/jsb/utils/pdol.py is in jsonbot 0.84.4-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 | # gozerbot/pdol.py
#
#
""" pickled dict of lists """
## jsb imports
from jsb.lib.persist import Persist
## Pdol class
class Pdol(Persist):
""" pickled dict of lists """
def __init__(self, fname):
Persist.__init__(self, fname)
if not self.data: self.data = {}
def __iter__(self, name):
return self.data[name].__iter__()
def __getitem__(self, item):
if self.data.has_key(item): return self.data[item]
def __delitem__(self, item):
if self.data.has_key(item):
self.data.__delitem__(item)
return 1
def __setitem__(self, item, what):
self.data[item] = what
return self
def add(self, item, what):
""" add what to items list """
return self.__setitem__(item, what)
def adduniq(self, item, what):
""" add what to items list if item not yet added """
if not self.data.has_key(item): self.new(item)
if what not in self.data[item]: return self.__setitem__(item, what)
def get(self, item):
""" get items list """
return self.__getitem__(item)
def new(self, what):
""" reset list of what """
self.data[what] = []
def delete(self, item, what):
""" remove what from item's list """
del self.data[item][what]
def extend(self, item, what):
""" extend the list. """
if not self.data.has_key(item): self.new(item)
self.data[item].extend(what)
def remove(self, item, what):
""" remove from list. """
try:
self.data[item].remove(what)
return True
except (ValueError, KeyError): return False
def insert(self, item, index, what):
""" insert in list. """
if not self.data.has_key(item): self.new(item)
self.data[item].insert(index, what)
|