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
