On Mon, Jun 23, 2003 at 11:08:25AM +0200, Michael Wechner wrote: > Gianugo Rabellino wrote: > >Michael Wechner wrote: > > > >>I have "patched" the ResourceExistsAction in the case of the resources > >>sitemap pipeline (file-exists), such that > >>it only checks files and not directories. Therefore URLs such as > >>.../oscom/authoring/ are working > >>again, but it seems to me that this is just a quick fix and we need to > >>think of something better. > > > > > >Would you guys please consider avoiding code duplication between Lenya > >and Cocoon? ResourceExistsAction is pure c&p from the Cocoon codebase, > >with a change of package and a one liner added. This is a bit unethical, > >technically poor and, most of all, misleading for users that will find > >two ResourceExistsAction and won't know exactly which is which. At a > >very least, please consider renaming it to something like FileExistsAction. > > agreed. But what about enhancing the ResourceExistsAction, such that one > can configure it only to check on files or directories or both? > > Would Cocoon be interested in a patch like this?
If you're using 2.1 and doing if-then-else logic, it might be better to modify the ResourceExistsSelector. Eg, comparing: <map:act type="resource-exists"> <map:parameter name="url" value="content/xdocs/{1}{2}" /> <map:generate src="content/xdocs/{../1}{../2}" /> ... <map:serialize type="xml"/> </map:act> <!-- stuff to do if resource doesn't exist --> with: <map:select type="exists"> <map:when test="content/xdocs/{1}{2}"> <map:generate src="content/xdocs/{1}{2}" /> ... <map:serialize type="xml"/> </map:when> <map:otherwise> <!-- stuff to do if resource doesn't exist --> </map:otherwise> </map:select> Making a FileExistsSelector and DirectoryExistsSelector from this wouldn't be hard. --Jeff > Thanks > > Michael > > > > > >Ciao, > >