You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@archiva.apache.org by br...@apache.org on 2008/12/01 04:09:07 UTC

svn commit: r721955 - in /archiva/branches/MRM-1025/archiva-modules: ./ archiva-base/archiva-consumers/archiva-core-consumers/ archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/ metadata/ metada...

Author: brett
Date: Sun Nov 30 19:09:05 2008
New Revision: 721955

URL: http://svn.apache.org/viewvc?rev=721955&view=rev
Log:
[MRM-1025] drop in basic structure of modules that constitute the metadata repository as a starting point

Added:
    archiva/branches/MRM-1025/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/ArchivaMetadataCreationConsumer.java   (with props)
    archiva/branches/MRM-1025/archiva-modules/metadata/   (with props)
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/   (with props)
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/pom.xml   (with props)
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ArtifactMetadata.java   (with props)
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectBuildMetadata.java   (with props)
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectMetadata.java   (with props)
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/RepositoryMetadata.java   (with props)
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/test/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/test/java/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/test/java/org/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/test/java/org/apache/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/test/java/org/apache/archiva/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/test/java/org/apache/archiva/metadata/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/test/java/org/apache/archiva/metadata/model/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/   (with props)
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/pom.xml   (with props)
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/main/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/main/java/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/main/java/org/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/MetadataRepository.java   (with props)
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/test/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/test/java/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/test/java/org/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/
    archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/
    archiva/branches/MRM-1025/archiva-modules/metadata/pom.xml   (with props)
    archiva/branches/MRM-1025/archiva-modules/plugins/   (with props)
    archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/   (with props)
    archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/pom.xml   (with props)
    archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/
    archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/main/
    archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/main/java/
    archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/main/java/org/
    archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/
    archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/archiva/
    archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/archiva/metadata/
    archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/archiva/metadata/repository/
    archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/archiva/metadata/repository/file/
    archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java   (with props)
    archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/test/
    archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/test/java/
    archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/test/java/org/
    archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/test/java/org/apache/
    archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/test/java/org/apache/archiva/
    archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/test/java/org/apache/archiva/metadata/
    archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/test/java/org/apache/archiva/metadata/repository/
    archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/test/java/org/apache/archiva/metadata/repository/file/
    archiva/branches/MRM-1025/archiva-modules/plugins/pom.xml   (with props)
Modified:
    archiva/branches/MRM-1025/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/pom.xml
    archiva/branches/MRM-1025/archiva-modules/pom.xml

Modified: archiva/branches/MRM-1025/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/pom.xml
URL: http://svn.apache.org/viewvc/archiva/branches/MRM-1025/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/pom.xml?rev=721955&r1=721954&r2=721955&view=diff
==============================================================================
--- archiva/branches/MRM-1025/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/pom.xml (original)
+++ archiva/branches/MRM-1025/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/pom.xml Sun Nov 30 19:09:05 2008
@@ -1,18 +1,21 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!--
-  ~ Copyright 2005-2006 The Apache Software Foundation.
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
   ~
-  ~ Licensed under the Apache License, Version 2.0 (the "License");
-  ~ you may not use this file except in compliance with the License.
-  ~ You may obtain a copy of the License at
+  ~  http://www.apache.org/licenses/LICENSE-2.0
   ~
-  ~      http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing, software
-  ~ distributed under the License is distributed on an "AS IS" BASIS,
-  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  ~ See the License for the specific language governing permissions and
-  ~ limitations under the License.
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
   -->
 
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
@@ -49,6 +52,21 @@
       <artifactId>plexus-spring</artifactId>
       <scope>test</scope>
     </dependency>
+    <dependency> <!--  TODO: version into parent -->
+      <groupId>org.apache.archiva</groupId>
+      <artifactId>metadata-model</artifactId>
+      <version>1.2-SNAPSHOT</version>
+    </dependency>
+    <dependency> <!--  TODO: version into parent -->
+      <groupId>org.apache.archiva</groupId>
+      <artifactId>metadata-repository-api</artifactId>
+      <version>1.2-SNAPSHOT</version>
+    </dependency>
+    <dependency> <!--  TODO: version into parent, temporary coupling to file based repo -->
+      <groupId>org.apache.archiva</groupId>
+      <artifactId>metadata-repository-file</artifactId>
+      <version>1.2-SNAPSHOT</version>
+    </dependency>
 
     <!-- test dependencies -->
     <dependency>

Added: archiva/branches/MRM-1025/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/ArchivaMetadataCreationConsumer.java
URL: http://svn.apache.org/viewvc/archiva/branches/MRM-1025/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/ArchivaMetadataCreationConsumer.java?rev=721955&view=auto
==============================================================================
--- archiva/branches/MRM-1025/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/ArchivaMetadataCreationConsumer.java (added)
+++ archiva/branches/MRM-1025/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/ArchivaMetadataCreationConsumer.java Sun Nov 30 19:09:05 2008
@@ -0,0 +1,206 @@
+package org.apache.maven.archiva.consumers.core;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+import org.apache.archiva.metadata.model.ArtifactMetadata;
+import org.apache.archiva.metadata.model.ProjectBuildMetadata;
+import org.apache.archiva.metadata.model.ProjectMetadata;
+import org.apache.archiva.metadata.repository.MetadataRepository;
+import org.apache.archiva.metadata.repository.file.FileMetadataRepository;
+import org.apache.maven.archiva.configuration.ArchivaConfiguration;
+import org.apache.maven.archiva.configuration.ConfigurationNames;
+import org.apache.maven.archiva.configuration.FileTypes;
+import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration;
+import org.apache.maven.archiva.consumers.AbstractMonitoredConsumer;
+import org.apache.maven.archiva.consumers.ConsumerException;
+import org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer;
+import org.apache.maven.archiva.model.ArtifactReference;
+import org.apache.maven.archiva.repository.ManagedRepositoryContent;
+import org.apache.maven.archiva.repository.RepositoryContentFactory;
+import org.apache.maven.archiva.repository.RepositoryException;
+import org.apache.maven.archiva.repository.layout.LayoutException;
+import org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable;
+import org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializationException;
+import org.codehaus.plexus.registry.Registry;
+import org.codehaus.plexus.registry.RegistryListener;
+
+/**
+ * ArtifactUpdateDatabaseConsumer - Take an artifact off of disk and put it into the repository.
+ * 
+ * @version $Id: ArtifactUpdateDatabaseConsumer.java 718864 2008-11-19 06:33:35Z brett $
+ * @plexus.component role="org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer"
+ *                   role-hint="create-archiva-metadata" instantiation-strategy="per-lookup"
+ */
+public class ArchivaMetadataCreationConsumer
+    extends AbstractMonitoredConsumer
+    implements KnownRepositoryContentConsumer, RegistryListener, Initializable
+{
+    /**
+     * @plexus.configuration default-value="create-archiva-metadata"
+     */
+    private String id;
+
+    /**
+     * @plexus.configuration default-value="Create basic metadata for Archiva to be able to reference the artifact"
+     */
+    private String description;
+
+    /**
+     * @plexus.requirement
+     */
+    private ArchivaConfiguration configuration;
+
+    /**
+     * @plexus.requirement
+     */
+    private FileTypes filetypes;
+
+    /**
+     * @plexus.requirement
+     */
+    private RepositoryContentFactory repositoryFactory;
+
+    private Date whenGathered;
+
+    private ManagedRepositoryContent repository;
+
+    private List<String> includes = new ArrayList<String>();
+
+    private MetadataRepository metadataRepository;
+
+    public String getId()
+    {
+        return this.id;
+    }
+
+    public String getDescription()
+    {
+        return this.description;
+    }
+
+    public boolean isPermanent()
+    {
+        return true;
+    }
+
+    public List<String> getExcludes()
+    {
+        return getDefaultArtifactExclusions();
+    }
+
+    public List<String> getIncludes()
+    {
+        return this.includes;
+    }
+
+    public void beginScan( ManagedRepositoryConfiguration repo, Date whenGathered )
+        throws ConsumerException
+    {
+        try
+        {
+            this.repository = repositoryFactory.getManagedRepositoryContent( repo.getId() );
+            this.metadataRepository = new FileMetadataRepository( new File( repository.getRepoRoot(), ".metadata" ) );
+            this.whenGathered = whenGathered;
+        }
+        catch ( RepositoryException e )
+        {
+            throw new ConsumerException( "Unable to start ArtifactUpdateDatabaseConsumer: " + e.getMessage(), e );
+        }
+    }
+
+    public void processFile( String path )
+        throws ConsumerException
+    {
+        // note that we do minimal processing including checksums and POM information for performance of
+        // the initial scan. Any request for this information will be intercepted and populated on-demand
+        // or picked up by subsequent scans
+        ArtifactReference artifact;
+        try
+        {
+            artifact = repository.toArtifactReference( path );
+        }
+        catch ( LayoutException e )
+        {
+            throw new ConsumerException( e.getMessage(), e );
+        }
+        
+        File file = new File( repository.getRepoRoot(), path );
+
+        // TODO: needed in a more central place, but trying to isolate impact to start with
+        String metadataId = artifact.getGroupId() + "." + artifact.getArtifactId();
+
+        ProjectMetadata project = new ProjectMetadata();
+        project.setId( metadataId );
+
+        ProjectBuildMetadata build = new ProjectBuildMetadata();
+        build.setId( artifact.getVersion() );
+
+        ArtifactMetadata artifactMeta = new ArtifactMetadata();
+        artifactMeta.setId( file.getName() );
+        artifactMeta.setUpdated( file.lastModified() );
+        artifactMeta.setSize( file.length() );
+
+        build.addArtifact( artifactMeta );
+        project.addBuild( build );
+
+        // TODO: store "whenGathered"
+        
+        // read the metadata and update it if it is newer or doesn't exist
+        metadataRepository.update( project );
+    }
+
+    public void completeScan()
+    {
+        /* do nothing */
+    }
+
+    public void afterConfigurationChange( Registry registry, String propertyName, Object propertyValue )
+    {
+        if ( ConfigurationNames.isRepositoryScanning( propertyName ) )
+        {
+            initIncludes();
+        }
+    }
+
+    public void beforeConfigurationChange( Registry registry, String propertyName, Object propertyValue )
+    {
+        /* do nothing */
+    }
+
+    private void initIncludes()
+    {
+        includes.clear();
+
+        includes.addAll( filetypes.getFileTypePatterns( FileTypes.ARTIFACTS ) );
+    }
+
+    public void initialize()
+        throws InitializationException
+    {
+        configuration.addChangeListener( this );
+
+        initIncludes();
+    }
+}

Propchange: archiva/branches/MRM-1025/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/ArchivaMetadataCreationConsumer.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: archiva/branches/MRM-1025/archiva-modules/archiva-base/archiva-consumers/archiva-core-consumers/src/main/java/org/apache/maven/archiva/consumers/core/ArchivaMetadataCreationConsumer.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Propchange: archiva/branches/MRM-1025/archiva-modules/metadata/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Sun Nov 30 19:09:05 2008
@@ -0,0 +1,4 @@
+.classpath
+.project
+.settings
+target

Propchange: archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Sun Nov 30 19:09:05 2008
@@ -0,0 +1,5 @@
+.classpath
+.project
+.settings
+target
+

Added: archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/pom.xml
URL: http://svn.apache.org/viewvc/archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/pom.xml?rev=721955&view=auto
==============================================================================
--- archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/pom.xml (added)
+++ archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/pom.xml Sun Nov 30 19:09:05 2008
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
+  ~
+  ~  http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  --><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <artifactId>metadata</artifactId>
+    <groupId>org.apache.archiva</groupId>
+    <version>1.2-SNAPSHOT</version>
+  </parent>
+  <artifactId>metadata-model</artifactId>
+  <name>Archiva Metadata Model</name>
+</project>

Propchange: archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ArtifactMetadata.java
URL: http://svn.apache.org/viewvc/archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ArtifactMetadata.java?rev=721955&view=auto
==============================================================================
--- archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ArtifactMetadata.java (added)
+++ archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ArtifactMetadata.java Sun Nov 30 19:09:05 2008
@@ -0,0 +1,66 @@
+package org.apache.archiva.metadata.model;
+
+import java.util.Date;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+public class ArtifactMetadata
+{
+    private String id;
+    
+    private Date updated;
+    
+    private long size;
+
+    public String getId()
+    {
+        return id;
+    }
+
+    public void setId( String id )
+    {
+        this.id = id;
+    }
+
+    public Date getUpdated()
+    {
+        return updated;
+    }
+
+    public void setUpdated( Date updated )
+    {
+        this.updated = updated;
+    }
+
+    public void setUpdated( long updated )
+    {
+        this.updated = new Date( updated );
+    }
+
+    public long getSize()
+    {
+        return size;
+    }
+
+    public void setSize( long size )
+    {
+        this.size = size;
+    }
+}

Propchange: archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ArtifactMetadata.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ArtifactMetadata.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectBuildMetadata.java
URL: http://svn.apache.org/viewvc/archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectBuildMetadata.java?rev=721955&view=auto
==============================================================================
--- archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectBuildMetadata.java (added)
+++ archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectBuildMetadata.java Sun Nov 30 19:09:05 2008
@@ -0,0 +1,45 @@
+package org.apache.archiva.metadata.model;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+public class ProjectBuildMetadata
+{
+    private String id;
+
+    private Map<String, ArtifactMetadata> artifacts = new LinkedHashMap<String, ArtifactMetadata>();
+
+    public String getId()
+    {
+        return id;
+    }
+
+    public void setId( String id )
+    {
+        this.id = id;
+    }
+
+    public void addArtifact( ArtifactMetadata artifact )
+    {
+        this.artifacts.put( artifact.getId(), artifact );
+    }
+}

Propchange: archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectBuildMetadata.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectBuildMetadata.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectMetadata.java
URL: http://svn.apache.org/viewvc/archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectMetadata.java?rev=721955&view=auto
==============================================================================
--- archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectMetadata.java (added)
+++ archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectMetadata.java Sun Nov 30 19:09:05 2008
@@ -0,0 +1,45 @@
+package org.apache.archiva.metadata.model;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+public class ProjectMetadata
+{
+    private String id;
+    
+    private Map<String, ProjectBuildMetadata> builds = new LinkedHashMap<String, ProjectBuildMetadata>();
+
+    public void setId( String id )
+    {
+        this.id = id;        
+    }
+    
+    public String getId()
+    {
+        return id;
+    }
+
+    public void addBuild( ProjectBuildMetadata build )
+    {
+        this.builds.put( build.getId(), build );
+    }
+}

Propchange: archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectMetadata.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/ProjectMetadata.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/RepositoryMetadata.java
URL: http://svn.apache.org/viewvc/archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/RepositoryMetadata.java?rev=721955&view=auto
==============================================================================
--- archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/RepositoryMetadata.java (added)
+++ archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/RepositoryMetadata.java Sun Nov 30 19:09:05 2008
@@ -0,0 +1,28 @@
+package org.apache.archiva.metadata.model;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+/**
+ * Information about the repository as a whole.
+ */
+public class RepositoryMetadata
+{
+    // TODO
+}

Propchange: archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/RepositoryMetadata.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: archiva/branches/MRM-1025/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/RepositoryMetadata.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Propchange: archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Sun Nov 30 19:09:05 2008
@@ -0,0 +1,4 @@
+target
+.classpath
+.project
+.settings

Added: archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/pom.xml
URL: http://svn.apache.org/viewvc/archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/pom.xml?rev=721955&view=auto
==============================================================================
--- archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/pom.xml (added)
+++ archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/pom.xml Sun Nov 30 19:09:05 2008
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
+  ~
+  ~  http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  --><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <artifactId>metadata</artifactId>
+    <groupId>org.apache.archiva</groupId>
+    <version>1.2-SNAPSHOT</version>
+  </parent>
+  <artifactId>metadata-repository-api</artifactId>
+  <name>Archiva Metadata Repository API</name>
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.archiva</groupId>
+      <artifactId>metadata-model</artifactId>
+      <version>1.2-SNAPSHOT</version> <!--  TODO: dep mgmt -->
+    </dependency>
+  </dependencies>
+</project>

Propchange: archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/MetadataRepository.java
URL: http://svn.apache.org/viewvc/archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/MetadataRepository.java?rev=721955&view=auto
==============================================================================
--- archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/MetadataRepository.java (added)
+++ archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/MetadataRepository.java Sun Nov 30 19:09:05 2008
@@ -0,0 +1,33 @@
+package org.apache.archiva.metadata.repository;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.apache.archiva.metadata.model.ProjectMetadata;
+
+public interface MetadataRepository
+{
+
+    /**
+     * Update metadata for a particular project in the metadata repository, or create it if it does not already exist.
+     * @param project the project metadata to create or update
+     */
+    void update( ProjectMetadata project );
+
+}

Propchange: archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/MetadataRepository.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: archiva/branches/MRM-1025/archiva-modules/metadata/metadata-repository-api/src/main/java/org/apache/archiva/metadata/repository/MetadataRepository.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: archiva/branches/MRM-1025/archiva-modules/metadata/pom.xml
URL: http://svn.apache.org/viewvc/archiva/branches/MRM-1025/archiva-modules/metadata/pom.xml?rev=721955&view=auto
==============================================================================
--- archiva/branches/MRM-1025/archiva-modules/metadata/pom.xml (added)
+++ archiva/branches/MRM-1025/archiva-modules/metadata/pom.xml Sun Nov 30 19:09:05 2008
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
+  ~
+  ~  http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  --><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <artifactId>archiva-modules</artifactId>
+    <groupId>org.apache.archiva</groupId>
+    <version>1.2-SNAPSHOT</version>
+  </parent>
+  <artifactId>metadata</artifactId>
+  <name>Archiva Metadata</name>
+  <packaging>pom</packaging>
+  <modules>
+    <module>metadata-model</module>
+    <module>metadata-repository-api</module>
+  </modules>
+</project>
\ No newline at end of file

Propchange: archiva/branches/MRM-1025/archiva-modules/metadata/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: archiva/branches/MRM-1025/archiva-modules/plugins/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Sun Nov 30 19:09:05 2008
@@ -0,0 +1,4 @@
+.classpath
+.project
+.settings
+target

Propchange: archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Sun Nov 30 19:09:05 2008
@@ -0,0 +1,4 @@
+target
+.settings
+.classpath
+.project

Added: archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/pom.xml
URL: http://svn.apache.org/viewvc/archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/pom.xml?rev=721955&view=auto
==============================================================================
--- archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/pom.xml (added)
+++ archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/pom.xml Sun Nov 30 19:09:05 2008
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
+  ~
+  ~  http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <artifactId>plugins</artifactId>
+    <groupId>org.apache.archiva</groupId>
+    <version>1.2-SNAPSHOT</version>
+  </parent>
+  <artifactId>metadata-repository-file</artifactId>
+  <name>File System Backed Metadata Repository</name>
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.archiva</groupId>
+      <artifactId>metadata-repository-api</artifactId>
+      <version>1.2-SNAPSHOT</version>    
+    </dependency>
+    <dependency>
+      <groupId>commons-io</groupId>
+      <artifactId>commons-io</artifactId>
+    </dependency>
+  </dependencies>
+</project>
\ No newline at end of file

Propchange: archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java
URL: http://svn.apache.org/viewvc/archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java?rev=721955&view=auto
==============================================================================
--- archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java (added)
+++ archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java Sun Nov 30 19:09:05 2008
@@ -0,0 +1,75 @@
+package org.apache.archiva.metadata.repository.file;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.util.Properties;
+
+import org.apache.archiva.metadata.model.ProjectMetadata;
+import org.apache.archiva.metadata.repository.MetadataRepository;
+import org.apache.commons.io.IOUtils;
+
+public class FileMetadataRepository
+    implements MetadataRepository
+{
+    private File directory; 
+    
+    public FileMetadataRepository( File directory )
+    {
+        this.directory = directory;
+    }
+
+    public void update( ProjectMetadata project )
+    {
+        try
+        {
+            store( project );
+        }
+        catch ( IOException e )
+        {
+            // TODO!
+            e.printStackTrace();
+        }
+    }
+
+    private void store( ProjectMetadata project )
+        throws FileNotFoundException, IOException
+    {
+        // TODO: this is a more braindead implementation than we would normally expect, for prototyping purposes
+        
+        Properties properties = new Properties();
+        properties.put( "id", project.getId() );
+        File directory = new File( this.directory, project.getId() );
+        directory.mkdirs();
+        FileOutputStream os = new FileOutputStream( new File( directory, "metadata.xml" ) );
+        try
+        {
+            properties.storeToXML( os, null );
+        }
+        finally
+        {
+            IOUtils.closeQuietly( os );
+        }
+    }
+
+}

Propchange: archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: archiva/branches/MRM-1025/archiva-modules/plugins/metadata-repository-file/src/main/java/org/apache/archiva/metadata/repository/file/FileMetadataRepository.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: archiva/branches/MRM-1025/archiva-modules/plugins/pom.xml
URL: http://svn.apache.org/viewvc/archiva/branches/MRM-1025/archiva-modules/plugins/pom.xml?rev=721955&view=auto
==============================================================================
--- archiva/branches/MRM-1025/archiva-modules/plugins/pom.xml (added)
+++ archiva/branches/MRM-1025/archiva-modules/plugins/pom.xml Sun Nov 30 19:09:05 2008
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
+  ~
+  ~  http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  --><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <artifactId>archiva-modules</artifactId>
+    <groupId>org.apache.archiva</groupId>
+    <version>1.2-SNAPSHOT</version>
+  </parent>
+  <artifactId>plugins</artifactId>
+  <name>Archiva Core Plugins</name>
+  <packaging>pom</packaging>
+  <modules>
+    <module>metadata-repository-file</module>
+  </modules>
+</project>
\ No newline at end of file

Propchange: archiva/branches/MRM-1025/archiva-modules/plugins/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: archiva/branches/MRM-1025/archiva-modules/pom.xml
URL: http://svn.apache.org/viewvc/archiva/branches/MRM-1025/archiva-modules/pom.xml?rev=721955&r1=721954&r2=721955&view=diff
==============================================================================
--- archiva/branches/MRM-1025/archiva-modules/pom.xml (original)
+++ archiva/branches/MRM-1025/archiva-modules/pom.xml Sun Nov 30 19:09:05 2008
@@ -1,5 +1,4 @@
 <?xml version="1.0" encoding="UTF-8"?>
-
 <!--
   ~ Licensed to the Apache Software Foundation (ASF) under one
   ~ or more contributor license agreements.  See the NOTICE file
@@ -17,9 +16,7 @@
   ~ KIND, either express or implied.  See the License for the
   ~ specific language governing permissions and limitations
   ~ under the License.
-  -->
-
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  --><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
   <parent>
     <artifactId>archiva</artifactId>
     <groupId>org.apache.archiva</groupId>
@@ -36,6 +33,8 @@
     <module>archiva-reporting</module>
     <module>archiva-scheduled</module>
     <module>archiva-web</module>
+    <module>metadata</module>
+    <module>plugins</module>
   </modules>
   <reporting>
     <plugins>
@@ -204,4 +203,4 @@
       <url>${siteBaseDeployment}/ref/${project.version}</url>
     </site>
   </distributionManagement>
-</project>
+</project>
\ No newline at end of file