Lines Matching refs:self
94 def __init__(self, filename):
95 self.filename = filename
96 execfile(filename, {}, self.__dict__)
98 if not hasattr(self, 'tag'):
99 self.tag = osp.basename(filename)[:-3]
100 if not hasattr(self, 'depends'):
101 self.depends = []
102 elif isinstance(self.depends, str):
103 self.depends = [self.depends]
105 if not isinstance(self.depends, list):
106 print "Error: 'depends' for %s is the wrong type" % self.tag
109 if hasattr(self, 'fwd_depends'):
110 if isinstance(self.fwd_depends, str):
111 self.fwd_depends = [self.fwd_depends]
113 self.fwd_depends = []
115 if not isinstance(self.fwd_depends, list):
116 print "Error: 'fwd_depends' for %s is the wrong type" % self.tag
119 if hasattr(self, 'upgrader'):
120 if not isinstance(self.upgrader, types.FunctionType):
122 % (self.tag, type(self))
124 Upgrader.tag_set.add(self.tag)
125 elif hasattr(self, 'downgrader'):
126 if not isinstance(self.downgrader, types.FunctionType):
128 % (self.tag, type(self))
130 Upgrader.untag_set.add(self.tag)
132 print "Error: no upgrader or downgrader method for", self.tag
135 if hasattr(self, 'legacy_version'):
136 Upgrader.legacy[self.legacy_version] = self
138 Upgrader.by_tag[self.tag] = self
140 def ready(self, tags):
141 for dep in self.depends:
146 def update(self, cpt, tags):
147 if hasattr(self, 'upgrader'):
148 self.upgrader(cpt)
149 tags.add(self.tag)
150 verboseprint("applied upgrade for", self.tag)
152 self.downgrader(cpt)
153 tags.remove(self.tag)
154 verboseprint("applied downgrade for", self.tag)