old_people = set(a.user for a in m.acl)
for removed in old_people - people:
ma = [x for x in m.acl if x.user == removed][0]
- ctx.current.delete(ma)
+ session.delete(ma)
for p in people - old_people:
ma = MachineAccess(user=p)
m.acl.append(ma)
- ctx.current.save(ma)
+ session.save_or_update(ma)
def refreshCache():
- transaction = ctx.current.create_transaction()
+ session.begin()
try:
machines = Machine.select()
for m in machines:
refreshMachine(m)
- ctx.current.flush()
+ session.flush()
# Atomically execute our changes
- transaction.commit()
+ session.commit()
except:
# Failed! Rollback all the changes.
- transaction.rollback()
+ session.rollback()
raise
if __name__ == '__main__':