Locks are stored as a row in a table. Each row has a column for the project name, the resource identifier, the principal name and the acquisition time. Acquiring a lock inserts a row in the table, releasing a lock deletes the row from the table.
todo remove all dependencies on project in here, abstracting it away to some constant fields.
|
|