Changeset 1358 for pykota/trunk/pykota/storage.py
- Timestamp:
- 02/23/04 23:53:21 (20 years ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
pykota/trunk/pykota/storage.py
r1333 r1358 22 22 # 23 23 # $Log$ 24 # Revision 1.42 2004/02/23 22:53:21 jalet 25 # Don't retrieve data when it's not needed, to avoid database queries 26 # 24 27 # Revision 1.41 2004/02/04 17:12:33 jalet 25 28 # Removing a printer from a printers group should work now. … … 257 260 self.PricePerPage = None 258 261 self.PricePerJob = None 259 self.LastJob = None 260 262 263 def __getattr__(self, name) : 264 """Delays data retrieval until it's really needed.""" 265 if name == "LastJob" : 266 self.LastJob = self.parent.getPrinterLastJob(self) 267 return self.LastJob 268 else : 269 raise AttributeError, name 270 261 271 def addJobToHistory(self, jobid, user, pagecounter, action, jobsize=None, jobprice=None, filename=None, title=None, copies=None, options=None) : 262 272 """Adds a job to the printer's history.""" … … 309 319 self.HardLimit = None 310 320 self.DateLimit = None 311 self.ParentPrintersUserPQuota = (user.Exists and printer.Exists and parent.getParentPrintersUserPQuota(self)) or [] 321 322 def __getattr__(self, name) : 323 """Delays data retrieval until it's really needed.""" 324 if name == "ParentPrintersUserPQuota" : 325 self.ParentPrintersUserPQuota = (self.User.Exists and self.Printer.Exists and self.parent.getParentPrintersUserPQuota(self)) or [] 326 return self.ParentPrintersUserPQuota 327 else : 328 raise AttributeError, name 312 329 313 330 def setDateLimit(self, datelimit) : … … 383 400 def __init__(self, parent) : 384 401 StorageObject.__init__(self, parent) 385 self.User = None386 self.Printer = None402 self.UserName = None 403 self.PrinterName = None 387 404 self.JobId = None 388 405 self.PrinterPageCounter = None … … 396 413 self.JobOptions = None 397 414 415 def __getattr__(self, name) : 416 """Delays data retrieval until it's really needed.""" 417 if name == "User" : 418 self.User = self.parent.getUser(self.UserName) 419 return self.User 420 elif name == "Printer" : 421 self.Printer = self.parent.getPrinter(self.PrinterName) 422 return self.Printer 423 else : 424 raise AttributeError, name 425 398 426 class StorageLastJob(StorageJob) : 399 427 """Printer's Last Job class.""" … … 401 429 StorageJob.__init__(self, parent) 402 430 self.Printer = printer 431 self.UserName = None 432 433 def __getattr__(self, name) : 434 """Delays data retrieval until it's really needed.""" 435 if name == "User" : 436 self.User = self.parent.getUser(self.UserName) 437 return self.User 438 else : 439 raise AttributeError, name 403 440 404 441 def setSize(self, jobsize) :