Access Controls

linas@linas.org linas@linas.org
Fri, 29 Dec 2000 12:39:39 -0600 (CST)


It's been rumoured that David Merrill said:
> 
> Do you mean to
> set a "lock" (not a real DB lock though, or at least not necessarily a
> real DB lock) when the user BEGINS to do an edit, so other users
> cannot? Now THAT makes sense. :-)

Yes. I tend to speak metaphorically. 

> > If you think about it as a transport mechanism, then Begin(), End()
> > are the *only* times a message needs to be sent from client to server.
> > After a session has been intiated, *none* of the other API calls should 
> > generate traffic.  
> 
> Now you lost me. ???

Lets assume we are using onc-rpc (or corba or xml-rpc or soap).

** GUI user uses mouse to highlight transaction for editing.
** xaccTransBeginEdit() sends rpc/iiop/xml message to server.
** GUI user types in payee, amount
** xaccTransSetDescription(), xaccTransSetAmount() are invoked
   by gtk code.  But no rpc's are made; no network traffic.
** GUI user has finished,  clicks 'OK, commit'.
** xaccTransCommitEdit() is called.  It packs up all the changes
   into one block, and ships that off to server via rpc. 
** Server does whatever it needs to do with that data (e.g. 
   punches it into SQL).
** Server replies 'sucess' or 'failure'
** GUI pops  message 'thank you for entering that transaction.
   please come again'.  


--linas