>
> hi
>
> > If Session.save/Item.save is called only upon the UNLOCK - thus if I
> > call only LOCK and MKCOL with lock token (but without UNLOCK), then
the
> > collection SHOULD NOT be created.
> >
> > Is that true?
>
> not quite. it's created in the transient space but not
> persisted unless you call UNLOCK. the UNLOCK is used to
> issue the 'save' call or the 'refresh without keeping
> changes' respectively, depending on the request body sent
> with the UNLOCK request (see docu).
> if you omit the UNLOCK call, your transient changes will
> be gone as soon as the session is logged out.
>
Ok. While debugging server I can see that:
- sending UNLOCK with commit status causes call of
TxLockManagerImpl$LocalTransaction.commit(...) (that calls
getItem(resource).save())
- sending UNLOCK with abort status causes call of
TxLockManagerImpl$LocalTransaction.rollback(...) (that calls
getItem(resource).refresh(false)). So far - ok, rollback is being called
but... the changes are still kept (in other words newly created
collection can be accessed) - why?
That might be also important: I call unlock on the parent of newly
created folder (because parent was locked). Further (when unlocking)
looking into ItemImpl.refresh(false) it looks like there are no
transient states found for the item (Iterator iter =
stateMgr.getDescendantTransientItemStates((NodeId) id)).
Edyta
The contents of this e-mail are intended for the named addressee only. It
contains information that may be confidential. Unless you are the named
addressee or an authorized designee, you may not copy or use it, or disclose it
to anyone else. If you received it in error please notify us immediately and
then destroy it.