Well, any one implemented Optimistic record locking ?
i am thinking, i will do as less as possible that satisfy requirements.
1. prevent rebooking of the same room if it is already booked by some other user while this user was in the thinking process. Application displays a good user friendly message when this situation arises.
2. also means that i will be only checking the owner attribute for null or empty
string (for booked status detection) before updating the record.
3. I don't allow any changes from the GUI to any other attributes other than owner column. Because the UI requirements are only to provide flexible searching capabilities and book rooms for selected records/owner.
An i on the right track ?
There may be changes to the records with out booking ? All other changes apart from booking, Who ever did the last change wins.