Reserved Checkin
Revision Controller
To check in a file call:
org.apache.lenya.cms.rc.RevisionController.reservedCheckIn( String destination, String identity, boolean backup)
where the destination is the path of the file from the publication, the identity is the identity of the user and backup is a boolean.
This method is called from the ReservedCheckinAction.
Rem: if no backup (and no rollback is needed) set in the ReservedCheckinAction the backup boolean to false.
The ReservedCheckinAction
To invoke a reserved check-in from a sitemap pipeline, you use The ReservedCheckinAction.
<map:components> ... <map:actions> <map:action name="reserved-checkin" src="org.apache.lenya.cms.cocoon.acting.ReservedCheckinAction" logger="sitemap.action.reserved-checkin"/> </map:actions> ... </map:components>
<map:act type="reserved-checkin"> <map:generate src="../../content/rc/{exception}.xsp" type="serverpages"> <map:parameter name="user" value="{user}"/> <map:parameter name="filename" value="{filename}"/> <map:parameter name="checkType" value="{checkType}"/> <map:parameter name="date" value="{date}"/> </map:generate> <map:transform src="xslt/rc/rco-exception.xsl"/> <map:serialize/> </map:act>
URL
The call
{document-URL}?lenya.usecase=checkin&lenya.step=checkin
invokes a check-in of the document
fileReservedCheckInException
When the file cannot be checked in because another user has already checked it out, a fileReservedCheckInException is thrown:
File Reserved Checkin Exception File not checked in yet The resource has already been checked out: User: roger Date: Wed Oct 22 14:31:05 CEST 2003 Filename: /content/authoring/index/index_de.xml
The serverpage
lenya/src/webapp/lenya/content/rc/fileReservedCheckInException.xsp
generates the xml which will be transformed with
lenya/src/webapp/lenya/xslt/rc/rco-exception.xsl
Exception
The errors are catched as generic Exception
Generic Exception Check the log files :-) Filename: /content/authoring/malaVida/index_de.xml
The serverpage
lenya/src/webapp/lenya/content/rc/exception.xsp
generates the xml which will be transformed with
lenya/src/webapp/lenya/xslt/rc/rco-exception.xsl