MCPcopy
hub / github.com/pyload/pyload / setPackageLocation

Method setPackageLocation

module/database/FileDatabase.py:429–458  ·  view source on GitHub ↗

push package to queue

(self, id, queue)

Source from the content-addressed store, hash-verified

427 @lock
428 @change
429 def setPackageLocation(self, id, queue):
430 """push package to queue"""
431
432 p = self.db.getPackage(id)
433 oldorder = p.order
434
435 e = RemoveEvent("pack", id, "collector" if not p.queue else "queue")
436 self.core.pullManager.addEvent(e)
437
438 self.db.clearPackageOrder(p)
439
440 p = self.db.getPackage(id)
441
442 p.queue = queue
443 self.db.updatePackage(p)
444
445 self.db.reorderPackage(p, -1, True)
446
447 packs = self.packageCache.values()
448 for pack in packs:
449 if pack.queue != queue and pack.order > oldorder:
450 pack.order -= 1
451 pack.notifyChange()
452
453 self.db.commit()
454 self.releasePackage(id)
455 p = self.getPackage(id)
456
457 e = InsertEvent("pack", id, p.order, "collector" if not p.queue else "queue")
458 self.core.pullManager.addEvent(e)
459
460 @lock
461 @change

Callers 3

pushToQueueMethod · 0.80
pullFromQueueMethod · 0.80
movePackageMethod · 0.80

Calls 11

getPackageMethod · 0.95
releasePackageMethod · 0.95
RemoveEventClass · 0.90
InsertEventClass · 0.90
clearPackageOrderMethod · 0.80
valuesMethod · 0.80
commitMethod · 0.80
addEventMethod · 0.45
updatePackageMethod · 0.45
reorderPackageMethod · 0.45
notifyChangeMethod · 0.45

Tested by

no test coverage detected