On 26/05/2008, at 8:59 AM, Wendy Smoak wrote:
For MRM-804, in order to call RepositoryContentConsumers#execute to index the new content, I need a File representing the new artifact on disk at around line 202 in ArchivaDavResourceFactory. Everything I've tried gives me at most the /repository/internal/groupId/artifactId/version/... part of the path, not the entire thing. And I don't see anything that's already a File. Any ideas? Or am I in the wrong place?
I think you're in the wrong place - that class is just creating a reference for the webdav servlet to deal with - even in doPut() which has a file reference, the artifact is not uploaded yet.
Actually, given that, the audit events in doPut() are probably in the wrong place too :) An appropriate test would be to do a PUT but have it fail midstream.
I think what is needed here is for RepositoryServlet to override execute() and process both after super.execute() returns successfully.
Also, with that in mind, shouldn't repository servlet be in archiva- webdav now? I would expect the correct separation to be such that you could stick archiva-webdav in a dfferent webapp to archiva-webapp, and it worked.
Cheers, Brett -- Brett Porter [EMAIL PROTECTED] http://blogs.exist.com/bporter/
