archiva-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Joakim Erdfelt <>
Subject Progress on MRM-463 - Metadata support
Date Thu, 30 Aug 2007 16:56:36 GMT
In the past 2 weeks I've made tremendous progress on the Metadata issues 
within Archiva.

So far in trunk, the following changes have been made.

  [NEW] MetadataTools component that is responsible for the merging and 
updating of inplace maven-metadata.xml files.

  [Update] DefaultProxyConnector now will ...
   1) download requested maven-metadata.xml from *all* remote repositories.
      NOTE: must pass the pre-download policies first.
   2) Save the downloaded maven-metadata.xml next to the 
maven-metadata.xml that exists in the managed repository using a 
filename format of maven-metadata-${proxyId}.xml (similar to how the 
maven 2 local repository works now).
   3) After all of the downloads from all proxied repositories complete, 
a MetadataTools.updateMetadata() call is issued to perform an update on 
that maven-metadata.xml file.
   4) Upon a completion of the MetadataTools.updateMetadata() with no 
error, the maven-metadata.xml file in the managed repository is returned 
to the requesting client.

What's left.

  [NEW] MetadataUpdaterConsumer - which runs as part of the repository 
scanning process and updates all of the in-place maven-metadata.xml files.

Alsø Alsø Wik: I'm only mildly worried about Concurrency issues with 
this solution, as most calls for the maven-metadata.xml will be caught 
by the pre-download policies, and updates to those files will occur only 
on occasion.

Feel free to rip my logic to shreds and tell me what an idiot I am. 
(it's really the only way I'll learn) :-)

- Joakim

View raw message