<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<title>commits@archiva.apache.org Archives</title>
<link rel="self" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/?format=atom"/>
<link href="http://mail-archives.apache.org/mod_mbox/archiva-commits/"/>
<id>http://mail-archives.apache.org/mod_mbox/archiva-commits/</id>
<updated>2013-06-18T06:26:39Z</updated>
<entry>
<title>svn commit: r1491787 - in /archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src: main/java/org/apache/archiva/metadata/repository/cassandra/ test/java/org/apache/archiva/metadata/repository/cassandra/</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130611131826.1540823888E7@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130611131826-1540823888E7@eris-apache-org%3e</id>
<updated>2013-06-11T13:18:25Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Tue Jun 11 13:18:25 2013&#010;New Revision: 1491787&#010;&#010;URL: http://svn.apache.org/r1491787&#010;Log:&#010;create cassandra entity manager only on start&#010;&#010;Modified:&#010;    archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraEntityManagerFactory.java&#010;    archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java&#010;    archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraRepositorySessionFactory.java&#010;    archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java&#010;    archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepositoryTest.java&#010;    archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/RepositoriesNamespaceTest.java&#010;&#010;Modified: archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraEntityManagerFactory.java&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraEntityManagerFactory.java?rev=1491787&amp;r1=1491786&amp;r2=1491787&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraEntityManagerFactory.java (original)&#010;+++ archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraEntityManagerFactory.java Tue Jun 11 13:18:25 2013&#010;@@ -20,6 +20,13 @@ package org.apache.archiva.metadata.repo&#010;  */&#010; &#010; import com.netflix.astyanax.Keyspace;&#010;+import com.netflix.astyanax.entitystore.EntityManager;&#010;+import org.apache.archiva.metadata.repository.cassandra.model.ArtifactMetadataModel;&#010;+import org.apache.archiva.metadata.repository.cassandra.model.MetadataFacetModel;&#010;+import org.apache.archiva.metadata.repository.cassandra.model.Namespace;&#010;+import org.apache.archiva.metadata.repository.cassandra.model.Project;&#010;+import org.apache.archiva.metadata.repository.cassandra.model.ProjectVersionMetadataModel;&#010;+import org.apache.archiva.metadata.repository.cassandra.model.Repository;&#010; &#010; /**&#010;  * @author Olivier Lamy&#010;@@ -28,4 +35,17 @@ public interface CassandraEntityManagerF&#010; {&#010;     Keyspace getKeyspace();&#010; &#010;+    EntityManager&lt;Repository, String&gt; getRepositoryEntityManager();&#010;+&#010;+    EntityManager&lt;Namespace, String&gt; getNamespaceEntityManager();&#010;+&#010;+    EntityManager&lt;Project, String&gt; getProjectEntityManager();&#010;+&#010;+    EntityManager&lt;ArtifactMetadataModel, String&gt; getArtifactMetadataModelEntityManager();&#010;+&#010;+    EntityManager&lt;MetadataFacetModel, String&gt; getMetadataFacetModelEntityManager();&#010;+&#010;+    EntityManager&lt;ProjectVersionMetadataModel, String&gt; getProjectVersionMetadataModelEntityManager();&#010;+&#010;+&#010; }&#010;&#010;Modified: archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java?rev=1491787&amp;r1=1491786&amp;r2=1491787&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java (original)&#010;+++ archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java Tue Jun 11 13:18:25 2013&#010;@@ -75,190 +75,46 @@ public class CassandraMetadataRepository&#010; &#010;     private final Map&lt;String, MetadataFacetFactory&gt; metadataFacetFactories;&#010; &#010;-    private Keyspace keyspace;&#010;-&#010;-    private EntityManager&lt;Repository, String&gt; repositoryEntityManager;&#010;-&#010;-    private EntityManager&lt;Namespace, String&gt; namespaceEntityManager;&#010;-&#010;-    private EntityManager&lt;Project, String&gt; projectEntityManager;&#010;-&#010;-    private EntityManager&lt;ArtifactMetadataModel, String&gt; artifactMetadataModelEntityManager;&#010;-&#010;-    private EntityManager&lt;MetadataFacetModel, String&gt; metadataFacetModelEntityManager;&#010;-&#010;-    private EntityManager&lt;ProjectVersionMetadataModel, String&gt; projectVersionMetadataModelEntityManager;&#010;+    private CassandraEntityManagerFactory cassandraEntityManagerFactory;&#010; &#010;     public CassandraMetadataRepository( Map&lt;String, MetadataFacetFactory&gt; metadataFacetFactories,&#010;-                                        ArchivaConfiguration configuration, Keyspace keyspace )&#010;+                                        ArchivaConfiguration configuration, CassandraEntityManagerFactory cassandraEntityManagerFactory )&#010;     {&#010;         this.metadataFacetFactories = metadataFacetFactories;&#010;         this.configuration = configuration;&#010;-&#010;-        this.keyspace = keyspace;&#010;-&#010;-        try&#010;-        {&#010;-            Properties properties = keyspace.getKeyspaceProperties();&#010;-            logger.info( "keyspace properties: {}", properties );&#010;-        }&#010;-        catch ( ConnectionException e )&#010;-        {&#010;-            // FIXME better logging !&#010;-            logger.warn( e.getMessage(), e );&#010;-        }&#010;-&#010;-        try&#010;-        {&#010;-            repositoryEntityManager =&#010;-                new DefaultEntityManager.Builder&lt;Repository, String&gt;().withEntityType( Repository.class ).withKeyspace(&#010;-                    keyspace ).build();&#010;-            boolean exists = columnFamilyExists( "repository" );&#010;-            // TODO very basic test we must test model change too&#010;-            if ( !exists )&#010;-            {&#010;-                repositoryEntityManager.createStorage( null );&#010;-            }&#010;-&#010;-            namespaceEntityManager =&#010;-                new DefaultEntityManager.Builder&lt;Namespace, String&gt;().withEntityType( Namespace.class ).withKeyspace(&#010;-                    keyspace ).build();&#010;-&#010;-            exists = columnFamilyExists( "namespace" );&#010;-            if ( !exists )&#010;-            {&#010;-                namespaceEntityManager.createStorage( null );&#010;-            }&#010;-&#010;-            projectEntityManager =&#010;-                new DefaultEntityManager.Builder&lt;Project, String&gt;().withEntityType( Project.class ).withKeyspace(&#010;-                    keyspace ).build();&#010;-&#010;-            exists = columnFamilyExists( "project" );&#010;-            if ( !exists )&#010;-            {&#010;-                projectEntityManager.createStorage( null );&#010;-            }&#010;-&#010;-            artifactMetadataModelEntityManager =&#010;-                new DefaultEntityManager.Builder&lt;ArtifactMetadataModel, String&gt;().withEntityType(&#010;-                    ArtifactMetadataModel.class ).withKeyspace( keyspace ).build();&#010;-&#010;-            exists = columnFamilyExists( "artifactmetadatamodel" );&#010;-            if ( !exists )&#010;-            {&#010;-                artifactMetadataModelEntityManager.createStorage( null );&#010;-            }&#010;-&#010;-            metadataFacetModelEntityManager =&#010;-                new DefaultEntityManager.Builder&lt;MetadataFacetModel, String&gt;().withEntityType(&#010;-                    MetadataFacetModel.class ).withKeyspace( keyspace ).build();&#010;-&#010;-            exists = columnFamilyExists( "metadatafacetmodel" );&#010;-            if ( !exists )&#010;-            {&#010;-                metadataFacetModelEntityManager.createStorage( null );&#010;-            }&#010;-&#010;-            projectVersionMetadataModelEntityManager =&#010;-                new DefaultEntityManager.Builder&lt;ProjectVersionMetadataModel, String&gt;().withEntityType(&#010;-                    ProjectVersionMetadataModel.class ).withKeyspace( keyspace ).build();&#010;-&#010;-            exists = columnFamilyExists( "projectversionmetadatamodel" );&#010;-            if ( !exists )&#010;-            {&#010;-                projectVersionMetadataModelEntityManager.createStorage( null );&#010;-            }&#010;-&#010;-        }&#010;-        catch ( PersistenceException e )&#010;-        {&#010;-            // FIXME report exception&#010;-            logger.error( e.getMessage(), e );&#010;-        }&#010;-        catch ( ConnectionException e )&#010;-        {&#010;-            // FIXME report exception&#010;-            logger.error( e.getMessage(), e );&#010;-        }&#010;+        this.cassandraEntityManagerFactory = cassandraEntityManagerFactory;&#010;     }&#010; &#010;-    private boolean columnFamilyExists( String columnFamilyName )&#010;-        throws ConnectionException&#010;-    {&#010;-        try&#010;-        {&#010;-            Properties properties = keyspace.getColumnFamilyProperties( columnFamilyName );&#010;-            logger.debug( "getColumnFamilyProperties for {}: {}", columnFamilyName, properties );&#010;-            return true;&#010;-        }&#010;-        catch ( NotFoundException e )&#010;-        {&#010;-            return false;&#010;-        }&#010;-    }&#010;+    &#010; &#010;     public EntityManager&lt;Repository, String&gt; getRepositoryEntityManager()&#010;     {&#010;-        return repositoryEntityManager;&#010;+        return this.cassandraEntityManagerFactory.getRepositoryEntityManager();&#010;     }&#010; &#010;     public EntityManager&lt;Namespace, String&gt; getNamespaceEntityManager()&#010;     {&#010;-        return namespaceEntityManager;&#010;-    }&#010;-&#010;-    public void setRepositoryEntityManager( EntityManager&lt;Repository, String&gt; repositoryEntityManager )&#010;-    {&#010;-        this.repositoryEntityManager = repositoryEntityManager;&#010;-    }&#010;-&#010;-    public void setNamespaceEntityManager( EntityManager&lt;Namespace, String&gt; namespaceEntityManager )&#010;-    {&#010;-        this.namespaceEntityManager = namespaceEntityManager;&#010;+        return this.cassandraEntityManagerFactory.getNamespaceEntityManager();&#010;     }&#010; &#010;     public EntityManager&lt;Project, String&gt; getProjectEntityManager()&#010;     {&#010;-        return projectEntityManager;&#010;-    }&#010;-&#010;-    public void setProjectEntityManager( EntityManager&lt;Project, String&gt; projectEntityManager )&#010;-    {&#010;-        this.projectEntityManager = projectEntityManager;&#010;+        return this.cassandraEntityManagerFactory.getProjectEntityManager();&#010;     }&#010; &#010;     public EntityManager&lt;ArtifactMetadataModel, String&gt; getArtifactMetadataModelEntityManager()&#010;     {&#010;-        return artifactMetadataModelEntityManager;&#010;-    }&#010;-&#010;-    public void setArtifactMetadataModelEntityManager(&#010;-        EntityManager&lt;ArtifactMetadataModel, String&gt; artifactMetadataModelEntityManager )&#010;-    {&#010;-        this.artifactMetadataModelEntityManager = artifactMetadataModelEntityManager;&#010;+        return cassandraEntityManagerFactory.getArtifactMetadataModelEntityManager();&#010;     }&#010; &#010;     public EntityManager&lt;MetadataFacetModel, String&gt; getMetadataFacetModelEntityManager()&#010;     {&#010;-        return metadataFacetModelEntityManager;&#010;-    }&#010;-&#010;-    public void setMetadataFacetModelEntityManager(&#010;-        EntityManager&lt;MetadataFacetModel, String&gt; metadataFacetModelEntityManager )&#010;-    {&#010;-        this.metadataFacetModelEntityManager = metadataFacetModelEntityManager;&#010;+        return this.cassandraEntityManagerFactory.getMetadataFacetModelEntityManager();&#010;     }&#010; &#010;     public EntityManager&lt;ProjectVersionMetadataModel, String&gt; getProjectVersionMetadataModelEntityManager()&#010;     {&#010;-        return projectVersionMetadataModelEntityManager;&#010;-    }&#010;-&#010;-    public void setProjectVersionMetadataModelEntityManager(&#010;-        EntityManager&lt;ProjectVersionMetadataModel, String&gt; projectVersionMetadataModelEntityManager )&#010;-    {&#010;-        this.projectVersionMetadataModelEntityManager = projectVersionMetadataModelEntityManager;&#010;+        return this.cassandraEntityManagerFactory.getProjectVersionMetadataModelEntityManager();&#010;     }&#010; &#010;     @Override&#010;@@ -274,24 +130,24 @@ public class CassandraMetadataRepository&#010;     {&#010;         try&#010;         {&#010;-            Repository repository = this.repositoryEntityManager.get( repositoryId );&#010;+            Repository repository = this.getRepositoryEntityManager().get( repositoryId );&#010; &#010;             if ( repository == null )&#010;             {&#010;                 repository = new Repository( repositoryId );&#010; &#010;                 Namespace namespace = new Namespace( namespaceId, repository );&#010;-                this.repositoryEntityManager.put( repository );&#010;+                this.getRepositoryEntityManager().put( repository );&#010; &#010;-                this.namespaceEntityManager.put( namespace );&#010;+                this.getNamespaceEntityManager().put( namespace );&#010;             }&#010;             // FIXME add a Namespace id builder&#010;-            Namespace namespace = namespaceEntityManager.get(&#010;+            Namespace namespace = getNamespaceEntityManager().get(&#010;                 new Namespace.KeyBuilder().withNamespace( namespaceId ).withRepositoryId( repositoryId ).build() );&#010;             if ( namespace == null )&#010;             {&#010;                 namespace = new Namespace( namespaceId, repository );&#010;-                namespaceEntityManager.put( namespace );&#010;+                getNamespaceEntityManager().put( namespace );&#010;             }&#010;             return namespace;&#010;         }&#010;@@ -309,11 +165,11 @@ public class CassandraMetadataRepository&#010;     {&#010;         try&#010;         {&#010;-            Namespace namespace = namespaceEntityManager.get(&#010;+            Namespace namespace = getNamespaceEntityManager().get(&#010;                 new Namespace.KeyBuilder().withNamespace( namespaceId ).withRepositoryId( repositoryId ).build() );&#010;             if ( namespace != null )&#010;             {&#010;-                namespaceEntityManager.remove( namespace );&#010;+                getNamespaceEntityManager().remove( namespace );&#010;             }&#010;         }&#010;         catch ( PersistenceException e )&#010;@@ -332,7 +188,7 @@ public class CassandraMetadataRepository&#010;             final List&lt;ArtifactMetadataModel&gt; artifactMetadataModels = new ArrayList&lt;ArtifactMetadataModel&gt;();&#010; &#010;             // remove data related to the repository&#010;-            this.artifactMetadataModelEntityManager.visitAll( new Function&lt;ArtifactMetadataModel, Boolean&gt;()&#010;+            this.getArtifactMetadataModelEntityManager().visitAll( new Function&lt;ArtifactMetadataModel, Boolean&gt;()&#010;             {&#010;                 @Override&#010;                 public Boolean apply( ArtifactMetadataModel artifactMetadataModel )&#010;@@ -348,11 +204,11 @@ public class CassandraMetadataRepository&#010;                 }&#010;             } );&#010; &#010;-            artifactMetadataModelEntityManager.remove( artifactMetadataModels );&#010;+            getArtifactMetadataModelEntityManager().remove( artifactMetadataModels );&#010; &#010;             final List&lt;Namespace&gt; namespaces = new ArrayList&lt;Namespace&gt;();&#010; &#010;-            namespaceEntityManager.visitAll( new Function&lt;Namespace, Boolean&gt;()&#010;+            getNamespaceEntityManager().visitAll( new Function&lt;Namespace, Boolean&gt;()&#010;             {&#010;                 @Override&#010;                 public Boolean apply( Namespace namespace )&#010;@@ -368,10 +224,10 @@ public class CassandraMetadataRepository&#010;                 }&#010;             } );&#010; &#010;-            namespaceEntityManager.remove( namespaces );&#010;+            getNamespaceEntityManager().remove( namespaces );&#010; &#010;             final List&lt;Project&gt; projects = new ArrayList&lt;Project&gt;();&#010;-            projectEntityManager.visitAll( new Function&lt;Project, Boolean&gt;()&#010;+            getProjectEntityManager().visitAll( new Function&lt;Project, Boolean&gt;()&#010;             {&#010;                 @Override&#010;                 public Boolean apply( Project project )&#010;@@ -387,16 +243,16 @@ public class CassandraMetadataRepository&#010;                 }&#010;             } );&#010; &#010;-            projectEntityManager.remove( projects );&#010;+            getProjectEntityManager().remove( projects );&#010; &#010;             // TODO  cleanup or not&#010;             //final List&lt;MetadataFacetModel&gt; metadataFacetModels = new ArrayList&lt;MetadataFacetModel&gt;(  );&#010;-            //metadataFacetModelEntityManager.visitAll( new Function&lt;MetadataFacetModel, Boolean&gt;()&#010;+            //getMetadataFacetModelEntityManager().visitAll( new Function&lt;MetadataFacetModel, Boolean&gt;()&#010; &#010;             final List&lt;ProjectVersionMetadataModel&gt; projectVersionMetadataModels =&#010;                 new ArrayList&lt;ProjectVersionMetadataModel&gt;();&#010; &#010;-            projectVersionMetadataModelEntityManager.visitAll( new Function&lt;ProjectVersionMetadataModel, Boolean&gt;()&#010;+            getProjectVersionMetadataModelEntityManager().visitAll( new Function&lt;ProjectVersionMetadataModel, Boolean&gt;()&#010;             {&#010;                 @Override&#010;                 public Boolean apply( ProjectVersionMetadataModel projectVersionMetadataModel )&#010;@@ -413,12 +269,12 @@ public class CassandraMetadataRepository&#010;                 }&#010;             } );&#010; &#010;-            projectVersionMetadataModelEntityManager.remove( projectVersionMetadataModels );&#010;+            getProjectVersionMetadataModelEntityManager().remove( projectVersionMetadataModels );&#010; &#010;-            Repository repository = repositoryEntityManager.get( repositoryId );&#010;+            Repository repository = getRepositoryEntityManager().get( repositoryId );&#010;             if ( repository != null )&#010;             {&#010;-                repositoryEntityManager.remove( repository );&#010;+                getRepositoryEntityManager().remove( repository );&#010;             }&#010; &#010;         }&#010;@@ -436,7 +292,7 @@ public class CassandraMetadataRepository&#010;         {&#010;             logger.debug( "getRepositories" );&#010; &#010;-            List&lt;Repository&gt; repositories = repositoryEntityManager.getAll();&#010;+            List&lt;Repository&gt; repositories = getRepositoryEntityManager().getAll();&#010;             if ( repositories == null )&#010;             {&#010;                 return Collections.emptyList();&#010;@@ -465,7 +321,7 @@ public class CassandraMetadataRepository&#010;         {&#010;             final Set&lt;String&gt; namespaces = new HashSet&lt;String&gt;();&#010; &#010;-            namespaceEntityManager.visitAll( new Function&lt;Namespace, Boolean&gt;()&#010;+            getNamespaceEntityManager().visitAll( new Function&lt;Namespace, Boolean&gt;()&#010;             {&#010;                 // @Nullable add dependency ?&#010;                 @Override&#010;@@ -500,7 +356,7 @@ public class CassandraMetadataRepository&#010;         {&#010;             final Set&lt;String&gt; namespaces = new HashSet&lt;String&gt;();&#010; &#010;-            namespaceEntityManager.visitAll( new Function&lt;Namespace, Boolean&gt;()&#010;+            getNamespaceEntityManager().visitAll( new Function&lt;Namespace, Boolean&gt;()&#010;             {&#010;                 // @Nullable add dependency ?&#010;                 @Override&#010;@@ -550,7 +406,7 @@ public class CassandraMetadataRepository&#010; &#010;             //List&lt;Repository&gt; namespaces = typedQuery.setParameter( "id", repoId ).getResultList();&#010; &#010;-            Repository repository = repositoryEntityManager.get( repoId );&#010;+            Repository repository = getRepositoryEntityManager().get( repoId );&#010; &#010;             if ( repository == null )&#010;             {&#010;@@ -560,11 +416,11 @@ public class CassandraMetadataRepository&#010;             // FIXME find correct cql query&#010;             //String query = "select * from namespace where repository.id = '" + repoId + "';";&#010; &#010;-            //List&lt;Namespace&gt; namespaces = namespaceEntityManager.find( query );&#010;+            //List&lt;Namespace&gt; namespaces = getNamespaceEntityManager().find( query );&#010; &#010;             final Set&lt;Namespace&gt; namespaces = new HashSet&lt;Namespace&gt;();&#010; &#010;-            namespaceEntityManager.visitAll( new Function&lt;Namespace, Boolean&gt;()&#010;+            getNamespaceEntityManager().visitAll( new Function&lt;Namespace, Boolean&gt;()&#010;             {&#010;                 // @Nullable add dependency ?&#010;                 @Override&#010;@@ -611,7 +467,7 @@ public class CassandraMetadataRepository&#010;         String projectKey = new Project.KeyBuilder().withProjectId( projectMetadata.getId() ).withNamespace(&#010;             new Namespace( projectMetadata.getNamespace(), new Repository( repositoryId ) ) ).build();&#010; &#010;-        Project project = projectEntityManager.get( projectKey );&#010;+        Project project = getProjectEntityManager().get( projectKey );&#010;         if ( project != null )&#010;         {&#010;             return;&#010;@@ -619,7 +475,7 @@ public class CassandraMetadataRepository&#010; &#010;         String namespaceKey = new Namespace.KeyBuilder().withRepositoryId( repositoryId ).withNamespace(&#010;             projectMetadata.getNamespace() ).build();&#010;-        Namespace namespace = namespaceEntityManager.get( namespaceKey );&#010;+        Namespace namespace = getNamespaceEntityManager().get( namespaceKey );&#010;         if ( namespace == null )&#010;         {&#010;             namespace = updateOrAddNamespace( repositoryId, projectMetadata.getNamespace() );&#010;@@ -629,7 +485,7 @@ public class CassandraMetadataRepository&#010; &#010;         try&#010;         {&#010;-            projectEntityManager.put( project );&#010;+            getProjectEntityManager().put( project );&#010;         }&#010;         catch ( PersistenceException e )&#010;         {&#010;@@ -646,7 +502,7 @@ public class CassandraMetadataRepository&#010;         // cleanup ArtifactMetadataModel&#010;         final List&lt;ArtifactMetadataModel&gt; artifactMetadataModels = new ArrayList&lt;ArtifactMetadataModel&gt;();&#010; &#010;-        artifactMetadataModelEntityManager.visitAll( new Function&lt;ArtifactMetadataModel, Boolean&gt;()&#010;+        getArtifactMetadataModelEntityManager().visitAll( new Function&lt;ArtifactMetadataModel, Boolean&gt;()&#010;         {&#010;             @Override&#010;             public Boolean apply( ArtifactMetadataModel artifactMetadataModel )&#010;@@ -664,14 +520,14 @@ public class CassandraMetadataRepository&#010;             }&#010;         } );&#010; &#010;-        artifactMetadataModelEntityManager.remove( artifactMetadataModels );&#010;+        getArtifactMetadataModelEntityManager().remove( artifactMetadataModels );&#010; &#010;         Namespace namespace = new Namespace( namespaceId, new Repository( repositoryId ) );&#010; &#010;         final List&lt;ProjectVersionMetadataModel&gt; projectVersionMetadataModels =&#010;             new ArrayList&lt;ProjectVersionMetadataModel&gt;();&#010; &#010;-        projectVersionMetadataModelEntityManager.visitAll( new Function&lt;ProjectVersionMetadataModel, Boolean&gt;()&#010;+        getProjectVersionMetadataModelEntityManager().visitAll( new Function&lt;ProjectVersionMetadataModel, Boolean&gt;()&#010;         {&#010;             @Override&#010;             public Boolean apply( ProjectVersionMetadataModel projectVersionMetadataModel )&#010;@@ -692,12 +548,12 @@ public class CassandraMetadataRepository&#010; &#010;         if ( !projectVersionMetadataModels.isEmpty() )&#010;         {&#010;-            projectVersionMetadataModelEntityManager.remove( projectVersionMetadataModels );&#010;+            getProjectVersionMetadataModelEntityManager().remove( projectVersionMetadataModels );&#010;         }&#010; &#010;         String key = new Project.KeyBuilder().withNamespace( namespace ).withProjectId( projectId ).build();&#010; &#010;-        Project project = projectEntityManager.get( key );&#010;+        Project project = getProjectEntityManager().get( key );&#010;         if ( project == null )&#010;         {&#010;             logger.debug( "removeProject notfound" );&#010;@@ -705,7 +561,7 @@ public class CassandraMetadataRepository&#010;         }&#010;         logger.debug( "removeProject {}", project );&#010; &#010;-        projectEntityManager.remove( project );&#010;+        getProjectEntityManager().remove( project );&#010;     }&#010; &#010;     @Override&#010;@@ -713,7 +569,7 @@ public class CassandraMetadataRepository&#010;         throws MetadataResolutionException&#010;     {&#010;         final Set&lt;String&gt; versions = new HashSet&lt;String&gt;();&#010;-        projectVersionMetadataModelEntityManager.visitAll( new Function&lt;ProjectVersionMetadataModel, Boolean&gt;()&#010;+        getProjectVersionMetadataModelEntityManager().visitAll( new Function&lt;ProjectVersionMetadataModel, Boolean&gt;()&#010;         {&#010;             @Override&#010;             public Boolean apply( ProjectVersionMetadataModel projectVersionMetadataModel )&#010;@@ -732,7 +588,7 @@ public class CassandraMetadataRepository&#010;             }&#010;         } );&#010;         // FIXME use cql query&#010;-        artifactMetadataModelEntityManager.visitAll( new Function&lt;ArtifactMetadataModel, Boolean&gt;()&#010;+        getArtifactMetadataModelEntityManager().visitAll( new Function&lt;ArtifactMetadataModel, Boolean&gt;()&#010;         {&#010;             @Override&#010;             public Boolean apply( ArtifactMetadataModel artifactMetadataModel )&#010;@@ -761,7 +617,7 @@ public class CassandraMetadataRepository&#010;         String namespaceKey =&#010;             new Namespace.KeyBuilder().withRepositoryId( repositoryId ).withNamespace( namespaceId ).build();&#010;         // create the namespace if not exists&#010;-        Namespace namespace = namespaceEntityManager.get( namespaceKey );&#010;+        Namespace namespace = getNamespaceEntityManager().get( namespaceKey );&#010;         if ( namespace == null )&#010;         {&#010;             namespace = updateOrAddNamespace( repositoryId, namespaceId );&#010;@@ -770,13 +626,13 @@ public class CassandraMetadataRepository&#010;         // create the project if not exist&#010;         String projectKey = new Project.KeyBuilder().withNamespace( namespace ).withProjectId( projectId ).build();&#010; &#010;-        Project project = projectEntityManager.get( projectKey );&#010;+        Project project = getProjectEntityManager().get( projectKey );&#010;         if ( project == null )&#010;         {&#010;             project = new Project( projectKey, projectId, namespace );&#010;             try&#010;             {&#010;-                projectEntityManager.put( project );&#010;+                getProjectEntityManager().put( project );&#010;             }&#010;             catch ( PersistenceException e )&#010;             {&#010;@@ -787,7 +643,7 @@ public class CassandraMetadataRepository&#010;         String key = new ArtifactMetadataModel.KeyBuilder().withNamespace( namespace ).withProject( projectId ).withId(&#010;             artifactMeta.getId() ).withProjectVersion( projectVersion ).build();&#010; &#010;-        ArtifactMetadataModel artifactMetadataModel = artifactMetadataModelEntityManager.get( key );&#010;+        ArtifactMetadataModel artifactMetadataModel = getArtifactMetadataModelEntityManager().get( key );&#010;         if ( artifactMetadataModel == null )&#010;         {&#010;             artifactMetadataModel = new ArtifactMetadataModel( key, artifactMeta.getId(), repositoryId, namespaceId,&#010;@@ -810,7 +666,7 @@ public class CassandraMetadataRepository&#010; &#010;         try&#010;         {&#010;-            artifactMetadataModelEntityManager.put( artifactMetadataModel );&#010;+            getArtifactMetadataModelEntityManager().put( artifactMetadataModel );&#010;         }&#010;         catch ( PersistenceException e )&#010;         {&#010;@@ -820,7 +676,7 @@ public class CassandraMetadataRepository&#010;         key = new ProjectVersionMetadataModel.KeyBuilder().withRepository( repositoryId ).withNamespace(&#010;             namespace ).withProjectId( projectId ).withId( projectVersion ).build();&#010; &#010;-        ProjectVersionMetadataModel projectVersionMetadataModel = projectVersionMetadataModelEntityManager.get( key );&#010;+        ProjectVersionMetadataModel projectVersionMetadataModel = getProjectVersionMetadataModelEntityManager().get( key );&#010; &#010;         if ( projectVersionMetadataModel == null )&#010;         {&#010;@@ -830,7 +686,7 @@ public class CassandraMetadataRepository&#010;             projectVersionMetadataModel.setId( projectVersion );&#010;             projectVersionMetadataModel.setNamespace( namespace );&#010; &#010;-            projectVersionMetadataModelEntityManager.put( projectVersionMetadataModel );&#010;+            getProjectVersionMetadataModelEntityManager().put( projectVersionMetadataModel );&#010; &#010;         }&#010; &#010;@@ -846,7 +702,7 @@ public class CassandraMetadataRepository&#010;     {&#010;         final Set&lt;String&gt; versions = new HashSet&lt;String&gt;();&#010;         // FIXME use cql query&#010;-        artifactMetadataModelEntityManager.visitAll( new Function&lt;ArtifactMetadataModel, Boolean&gt;()&#010;+        getArtifactMetadataModelEntityManager().visitAll( new Function&lt;ArtifactMetadataModel, Boolean&gt;()&#010;         {&#010;             @Override&#010;             public Boolean apply( ArtifactMetadataModel artifactMetadataModel )&#010;@@ -889,7 +745,7 @@ public class CassandraMetadataRepository&#010; &#010;             final List&lt;MetadataFacetModel&gt; metadataFacetModels = new ArrayList&lt;MetadataFacetModel&gt;();&#010; &#010;-            metadataFacetModelEntityManager.visitAll( new Function&lt;MetadataFacetModel, Boolean&gt;()&#010;+            getMetadataFacetModelEntityManager().visitAll( new Function&lt;MetadataFacetModel, Boolean&gt;()&#010;             {&#010;                 @Override&#010;                 public Boolean apply( MetadataFacetModel metadataFacetModel )&#010;@@ -906,7 +762,7 @@ public class CassandraMetadataRepository&#010;                 }&#010;             } );&#010; &#010;-            metadataFacetModelEntityManager.remove( metadataFacetModels );&#010;+            getMetadataFacetModelEntityManager().remove( metadataFacetModels );&#010; &#010;             Map&lt;String, String&gt; properties = metadataFacet.toProperties();&#010; &#010;@@ -923,7 +779,7 @@ public class CassandraMetadataRepository&#010;                 metadataFacetModelsToAdd.add( metadataFacetModel );&#010;             }&#010; &#010;-            metadataFacetModelEntityManager.put( metadataFacetModelsToAdd );&#010;+            getMetadataFacetModelEntityManager().put( metadataFacetModelsToAdd );&#010; &#010;         }&#010;     }&#010;@@ -935,7 +791,7 @@ public class CassandraMetadataRepository&#010;     {&#010;         String namespaceKey =&#010;             new Namespace.KeyBuilder().withRepositoryId( repositoryId ).withNamespace( namespaceId ).build();&#010;-        Namespace namespace = namespaceEntityManager.get( namespaceKey );&#010;+        Namespace namespace = getNamespaceEntityManager().get( namespaceKey );&#010;         if ( namespace == null )&#010;         {&#010;             namespace = updateOrAddNamespace( repositoryId, namespaceId );&#010;@@ -943,18 +799,18 @@ public class CassandraMetadataRepository&#010; &#010;         String key = new Project.KeyBuilder().withNamespace( namespace ).withProjectId( projectId ).build();&#010; &#010;-        Project project = projectEntityManager.get( key );&#010;+        Project project = getProjectEntityManager().get( key );&#010;         if ( project == null )&#010;         {&#010;             project = new Project( key, projectId, namespace );&#010;-            projectEntityManager.put( project );&#010;+            getProjectEntityManager().put( project );&#010;         }&#010; &#010;         // we don't test of repository and namespace really exist !&#010;         key = new ProjectVersionMetadataModel.KeyBuilder().withRepository( repositoryId ).withNamespace(&#010;             namespaceId ).withProjectId( projectId ).withId( versionMetadata.getId() ).build();&#010; &#010;-        ProjectVersionMetadataModel projectVersionMetadataModel = projectVersionMetadataModelEntityManager.get( key );&#010;+        ProjectVersionMetadataModel projectVersionMetadataModel = getProjectVersionMetadataModelEntityManager().get( key );&#010; &#010;         if ( projectVersionMetadataModel == null )&#010;         {&#010;@@ -976,7 +832,7 @@ public class CassandraMetadataRepository&#010; &#010;         try&#010;         {&#010;-            projectVersionMetadataModelEntityManager.put( projectVersionMetadataModel );&#010;+            getProjectVersionMetadataModelEntityManager().put( projectVersionMetadataModel );&#010; &#010;             ArtifactMetadataModel artifactMetadataModel = new ArtifactMetadataModel();&#010;             artifactMetadataModel.setArtifactMetadataModelId(&#010;@@ -1009,7 +865,7 @@ public class CassandraMetadataRepository&#010;     {&#010;         // FIXME use cql query !!&#010;         final List&lt;String&gt; facets = new ArrayList&lt;String&gt;();&#010;-        this.metadataFacetModelEntityManager.visitAll( new Function&lt;MetadataFacetModel, Boolean&gt;()&#010;+        this.getMetadataFacetModelEntityManager().visitAll( new Function&lt;MetadataFacetModel, Boolean&gt;()&#010;         {&#010;             @Override&#010;             public Boolean apply( MetadataFacetModel metadataFacetModel )&#010;@@ -1044,7 +900,7 @@ public class CassandraMetadataRepository&#010;     {&#010;         // FIXME use cql query !!&#010;         final List&lt;MetadataFacetModel&gt; facets = new ArrayList&lt;MetadataFacetModel&gt;();&#010;-        this.metadataFacetModelEntityManager.visitAll( new Function&lt;MetadataFacetModel, Boolean&gt;()&#010;+        this.getMetadataFacetModelEntityManager().visitAll( new Function&lt;MetadataFacetModel, Boolean&gt;()&#010;         {&#010;             @Override&#010;             public Boolean apply( MetadataFacetModel metadataFacetModel )&#010;@@ -1097,7 +953,7 @@ public class CassandraMetadataRepository&#010;         {&#010;             String key = new MetadataFacetModel.KeyBuilder().withRepositoryId( repositoryId ).withFacetId(&#010;                 metadataFacet.getFacetId() ).withName( metadataFacet.getName() ).build();&#010;-            MetadataFacetModel metadataFacetModel = metadataFacetModelEntityManager.get( key );&#010;+            MetadataFacetModel metadataFacetModel = getMetadataFacetModelEntityManager().get( key );&#010;             if ( metadataFacetModel == null )&#010;             {&#010;                 metadataFacetModel = new MetadataFacetModel();&#010;@@ -1112,7 +968,7 @@ public class CassandraMetadataRepository&#010; &#010;             try&#010;             {&#010;-                metadataFacetModelEntityManager.put( metadataFacetModel );&#010;+                getMetadataFacetModelEntityManager().put( metadataFacetModel );&#010;             }&#010;             catch ( PersistenceException e )&#010;             {&#010;@@ -1127,7 +983,7 @@ public class CassandraMetadataRepository&#010;                 String key = new MetadataFacetModel.KeyBuilder().withRepositoryId( repositoryId ).withFacetId(&#010;                     metadataFacet.getFacetId() ).withName( metadataFacet.getName() ).withKey( entry.getKey() ).build();&#010; &#010;-                MetadataFacetModel metadataFacetModel = metadataFacetModelEntityManager.get( key );&#010;+                MetadataFacetModel metadataFacetModel = getMetadataFacetModelEntityManager().get( key );&#010;                 if ( metadataFacetModel == null )&#010;                 {&#010;                     metadataFacetModel = new MetadataFacetModel();&#010;@@ -1143,7 +999,7 @@ public class CassandraMetadataRepository&#010;                 metadataFacetModel.setValue( entry.getValue() );&#010;                 try&#010;                 {&#010;-                    metadataFacetModelEntityManager.put( metadataFacetModel );&#010;+                    getMetadataFacetModelEntityManager().put( metadataFacetModel );&#010;                 }&#010;                 catch ( PersistenceException e )&#010;                 {&#010;@@ -1162,7 +1018,7 @@ public class CassandraMetadataRepository&#010;         final List&lt;MetadataFacetModel&gt; toRemove = new ArrayList&lt;MetadataFacetModel&gt;();&#010; &#010;         // FIXME cql query&#010;-        metadataFacetModelEntityManager.visitAll( new Function&lt;MetadataFacetModel, Boolean&gt;()&#010;+        getMetadataFacetModelEntityManager().visitAll( new Function&lt;MetadataFacetModel, Boolean&gt;()&#010;         {&#010;             @Override&#010;             public Boolean apply( MetadataFacetModel metadataFacetModel )&#010;@@ -1181,7 +1037,7 @@ public class CassandraMetadataRepository&#010;         } );&#010;         logger.debug( "removeMetadataFacets repositoryId: '{}', facetId: '{}', toRemove: {}", repositoryId, facetId,&#010;                       toRemove );&#010;-        metadataFacetModelEntityManager.remove( toRemove );&#010;+        getMetadataFacetModelEntityManager().remove( toRemove );&#010;     }&#010; &#010;     @Override&#010;@@ -1192,7 +1048,7 @@ public class CassandraMetadataRepository&#010;         final List&lt;MetadataFacetModel&gt; toRemove = new ArrayList&lt;MetadataFacetModel&gt;();&#010; &#010;         // FIXME cql query&#010;-        metadataFacetModelEntityManager.visitAll( new Function&lt;MetadataFacetModel, Boolean&gt;()&#010;+        getMetadataFacetModelEntityManager().visitAll( new Function&lt;MetadataFacetModel, Boolean&gt;()&#010;         {&#010;             @Override&#010;             public Boolean apply( MetadataFacetModel metadataFacetModel )&#010;@@ -1212,7 +1068,7 @@ public class CassandraMetadataRepository&#010;         } );&#010;         logger.debug( "removeMetadataFacets repositoryId: '{}', facetId: '{}', toRemove: {}", repositoryId, facetId,&#010;                       toRemove );&#010;-        metadataFacetModelEntityManager.remove( toRemove );&#010;+        getMetadataFacetModelEntityManager().remove( toRemove );&#010;     }&#010; &#010;     @Override&#010;@@ -1224,7 +1080,7 @@ public class CassandraMetadataRepository&#010;         final List&lt;ArtifactMetadataModel&gt; artifactMetadataModels = new ArrayList&lt;ArtifactMetadataModel&gt;();&#010; &#010;         // FIXME cql query&#010;-        artifactMetadataModelEntityManager.visitAll( new Function&lt;ArtifactMetadataModel, Boolean&gt;()&#010;+        getArtifactMetadataModelEntityManager().visitAll( new Function&lt;ArtifactMetadataModel, Boolean&gt;()&#010;         {&#010;             @Override&#010;             public Boolean apply( ArtifactMetadataModel artifactMetadataModel )&#010;@@ -1269,7 +1125,7 @@ public class CassandraMetadataRepository&#010;     {&#010;         final List&lt;MetadataFacetModel&gt; metadataFacetModels = new ArrayList&lt;MetadataFacetModel&gt;();&#010; &#010;-        metadataFacetModelEntityManager.visitAll( new Function&lt;MetadataFacetModel, Boolean&gt;()&#010;+        getMetadataFacetModelEntityManager().visitAll( new Function&lt;MetadataFacetModel, Boolean&gt;()&#010;         {&#010;             @Override&#010;             public Boolean apply( MetadataFacetModel metadataFacetModel )&#010;@@ -1329,11 +1185,11 @@ public class CassandraMetadataRepository&#010; &#010;         if ( logger.isDebugEnabled() )&#010;         {&#010;-            logger.debug( "all ArtifactMetadataModel: {}", artifactMetadataModelEntityManager.getAll() );&#010;+            logger.debug( "all ArtifactMetadataModel: {}", getArtifactMetadataModelEntityManager().getAll() );&#010;         }&#010; &#010;         // FIXME cql query&#010;-        artifactMetadataModelEntityManager.visitAll( new Function&lt;ArtifactMetadataModel, Boolean&gt;()&#010;+        getArtifactMetadataModelEntityManager().visitAll( new Function&lt;ArtifactMetadataModel, Boolean&gt;()&#010;         {&#010;             @Override&#010;             public Boolean apply( ArtifactMetadataModel artifactMetadataModel )&#010;@@ -1384,7 +1240,7 @@ public class CassandraMetadataRepository&#010;         ArtifactMetadataModel artifactMetadataModel = new ArtifactMetadataModel();&#010;         artifactMetadataModel.setArtifactMetadataModelId( key );&#010; &#010;-        artifactMetadataModelEntityManager.remove( artifactMetadataModel );&#010;+        getArtifactMetadataModelEntityManager().remove( artifactMetadataModel );&#010; &#010;         key =&#010;             new ProjectVersionMetadataModel.KeyBuilder().withId( version ).withRepository( repositoryId ).withNamespace(&#010;@@ -1393,7 +1249,7 @@ public class CassandraMetadataRepository&#010;         ProjectVersionMetadataModel projectVersionMetadataModel = new ProjectVersionMetadataModel();&#010;         projectVersionMetadataModel.setRowId( key );&#010; &#010;-        projectVersionMetadataModelEntityManager.remove( projectVersionMetadataModel );&#010;+        getProjectVersionMetadataModelEntityManager().remove( projectVersionMetadataModel );&#010;     }&#010; &#010;     @Override&#010;@@ -1411,7 +1267,7 @@ public class CassandraMetadataRepository&#010;         ArtifactMetadataModel artifactMetadataModel = new ArtifactMetadataModel();&#010;         artifactMetadataModel.setArtifactMetadataModelId( key );&#010; &#010;-        artifactMetadataModelEntityManager.remove( artifactMetadataModel );&#010;+        getArtifactMetadataModelEntityManager().remove( artifactMetadataModel );&#010;     }&#010; &#010;     @Override&#010;@@ -1420,7 +1276,7 @@ public class CassandraMetadataRepository&#010;         throws MetadataRepositoryException&#010;     {&#010;         final List&lt;ArtifactMetadataModel&gt; artifactMetadataModels = new ArrayList&lt;ArtifactMetadataModel&gt;();&#010;-        artifactMetadataModelEntityManager.visitAll( new Function&lt;ArtifactMetadataModel, Boolean&gt;()&#010;+        getArtifactMetadataModelEntityManager().visitAll( new Function&lt;ArtifactMetadataModel, Boolean&gt;()&#010;         {&#010;             @Override&#010;             public Boolean apply( ArtifactMetadataModel artifactMetadataModel )&#010;@@ -1438,9 +1294,9 @@ public class CassandraMetadataRepository&#010;                 return Boolean.TRUE;&#010;             }&#010;         } );&#010;-        artifactMetadataModelEntityManager.remove( artifactMetadataModels );&#010;+        getArtifactMetadataModelEntityManager().remove( artifactMetadataModels );&#010;         /*&#010;-        metadataFacetModelEntityManager.visitAll( new Function&lt;MetadataFacetModel, Boolean&gt;()&#010;+        getMetadataFacetModelEntityManager().visitAll( new Function&lt;MetadataFacetModel, Boolean&gt;()&#010;         {&#010;             @Override&#010;             public Boolean apply( MetadataFacetModel metadataFacetModel )&#010;@@ -1466,7 +1322,7 @@ public class CassandraMetadataRepository&#010;                 return Boolean.TRUE;&#010;             }&#010;         } );&#010;-        metadataFacetModelEntityManager.remove( metadataFacetModels );&#010;+        getMetadataFacetModelEntityManager().remove( metadataFacetModels );&#010;         */&#010;     }&#010; &#010;@@ -1477,7 +1333,7 @@ public class CassandraMetadataRepository&#010;     {&#010;         final List&lt;ArtifactMetadataModel&gt; artifactMetadataModels = new ArrayList&lt;ArtifactMetadataModel&gt;();&#010;         // FIXME use cql query !&#010;-        artifactMetadataModelEntityManager.visitAll( new Function&lt;ArtifactMetadataModel, Boolean&gt;()&#010;+        getArtifactMetadataModelEntityManager().visitAll( new Function&lt;ArtifactMetadataModel, Boolean&gt;()&#010;         {&#010;             @Override&#010;             public Boolean apply( ArtifactMetadataModel artifactMetadataModel )&#010;@@ -1515,7 +1371,7 @@ public class CassandraMetadataRepository&#010; &#010;         final BooleanHolder booleanHolder = new BooleanHolder();&#010; &#010;-        projectEntityManager.visitAll( new Function&lt;Project, Boolean&gt;()&#010;+        getProjectEntityManager().visitAll( new Function&lt;Project, Boolean&gt;()&#010;         {&#010;             @Override&#010;             public Boolean apply( Project project )&#010;@@ -1556,7 +1412,7 @@ public class CassandraMetadataRepository&#010;         String key = new ProjectVersionMetadataModel.KeyBuilder().withRepository( repoId ).withNamespace(&#010;             namespace ).withProjectId( projectId ).withId( projectVersion ).build();&#010; &#010;-        ProjectVersionMetadataModel projectVersionMetadataModel = projectVersionMetadataModelEntityManager.get( key );&#010;+        ProjectVersionMetadataModel projectVersionMetadataModel = getProjectVersionMetadataModelEntityManager().get( key );&#010; &#010;         if ( projectVersionMetadataModel == null )&#010;         {&#010;@@ -1582,7 +1438,7 @@ public class CassandraMetadataRepository&#010;         // facets&#010;         final List&lt;MetadataFacetModel&gt; metadataFacetModels = new ArrayList&lt;MetadataFacetModel&gt;();&#010;         // FIXME use cql query&#010;-        metadataFacetModelEntityManager.visitAll( new Function&lt;MetadataFacetModel, Boolean&gt;()&#010;+        getMetadataFacetModelEntityManager().visitAll( new Function&lt;MetadataFacetModel, Boolean&gt;()&#010;         {&#010;             @Override&#010;             public Boolean apply( MetadataFacetModel metadataFacetModel )&#010;@@ -1649,7 +1505,7 @@ public class CassandraMetadataRepository&#010;         final Set&lt;String&gt; projects = new HashSet&lt;String&gt;();&#010; &#010;         // FIXME use cql query&#010;-        projectEntityManager.visitAll( new Function&lt;Project, Boolean&gt;()&#010;+        getProjectEntityManager().visitAll( new Function&lt;Project, Boolean&gt;()&#010;         {&#010;             @Override&#010;             public Boolean apply( Project project )&#010;@@ -1667,7 +1523,7 @@ public class CassandraMetadataRepository&#010;         } );&#010;         /*&#010; &#010;-        artifactMetadataModelEntityManager.visitAll( new Function&lt;ArtifactMetadataModel, Boolean&gt;()&#010;+        getArtifactMetadataModelEntityManager().visitAll( new Function&lt;ArtifactMetadataModel, Boolean&gt;()&#010;         {&#010;             @Override&#010;             public Boolean apply( ArtifactMetadataModel artifactMetadataModel )&#010;@@ -1698,7 +1554,7 @@ public class CassandraMetadataRepository&#010; &#010;         // FIXME use cql query&#010; &#010;-        artifactMetadataModelEntityManager.visitAll( new Function&lt;ArtifactMetadataModel, Boolean&gt;()&#010;+        getArtifactMetadataModelEntityManager().visitAll( new Function&lt;ArtifactMetadataModel, Boolean&gt;()&#010;         {&#010;             @Override&#010;             public Boolean apply( ArtifactMetadataModel artifactMetadataModel )&#010;@@ -1723,7 +1579,7 @@ public class CassandraMetadataRepository&#010;             return;&#010;         }&#010; &#010;-        artifactMetadataModelEntityManager.remove( artifactMetadataModels );&#010;+        getArtifactMetadataModelEntityManager().remove( artifactMetadataModels );&#010; &#010;         String key = new ProjectVersionMetadataModel.KeyBuilder().withProjectId( projectId ).withId(&#010;             projectVersion ).withRepository( repoId ).withNamespace( namespace ).build();&#010;@@ -1731,7 +1587,7 @@ public class CassandraMetadataRepository&#010;         ProjectVersionMetadataModel projectVersionMetadataModel = new ProjectVersionMetadataModel();&#010;         projectVersionMetadataModel.setRowId( key );&#010; &#010;-        projectVersionMetadataModelEntityManager.remove( projectVersionMetadataModel );&#010;+        getProjectVersionMetadataModelEntityManager().remove( projectVersionMetadataModel );&#010;     }&#010; &#010;     @Override&#010;@@ -1741,7 +1597,7 @@ public class CassandraMetadataRepository&#010;     {&#010;         final List&lt;ArtifactMetadataModel&gt; artifactMetadataModels = new ArrayList&lt;ArtifactMetadataModel&gt;();&#010;         // FIXME use cql query !&#010;-        artifactMetadataModelEntityManager.visitAll( new Function&lt;ArtifactMetadataModel, Boolean&gt;()&#010;+        getArtifactMetadataModelEntityManager().visitAll( new Function&lt;ArtifactMetadataModel, Boolean&gt;()&#010;         {&#010;             @Override&#010;             public Boolean apply( ArtifactMetadataModel artifactMetadataModel )&#010;@@ -1772,7 +1628,7 @@ public class CassandraMetadataRepository&#010; &#010;         // retrieve facets&#010;         final List&lt;MetadataFacetModel&gt; metadataFacetModels = new ArrayList&lt;MetadataFacetModel&gt;();&#010;-        metadataFacetModelEntityManager.visitAll( new Function&lt;MetadataFacetModel, Boolean&gt;()&#010;+        getMetadataFacetModelEntityManager().visitAll( new Function&lt;MetadataFacetModel, Boolean&gt;()&#010;         {&#010;             @Override&#010;             public Boolean apply( MetadataFacetModel metadataFacetModel )&#010;&#010;Modified: archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraRepositorySessionFactory.java&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraRepositorySessionFactory.java?rev=1491787&amp;r1=1491786&amp;r2=1491787&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraRepositorySessionFactory.java (original)&#010;+++ archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraRepositorySessionFactory.java Tue Jun 11 13:18:25 2013&#010;@@ -37,7 +37,7 @@ import java.util.Map;&#010; /**&#010;  * @author Olivier Lamy&#010;  */&#010;-@Service( "repositorySessionFactory#cassandra" )&#010;+@Service("repositorySessionFactory#cassandra")&#010; public class CassandraRepositorySessionFactory&#010;     implements RepositorySessionFactory&#010; {&#010;@@ -45,7 +45,7 @@ public class CassandraRepositorySessionF&#010;     private Map&lt;String, MetadataFacetFactory&gt; metadataFacetFactories;&#010; &#010;     @Inject&#010;-    @Named( value = "archivaConfiguration#default" )&#010;+    @Named(value = "archivaConfiguration#default")&#010;     private ArchivaConfiguration configuration;&#010; &#010;     @Inject&#010;@@ -79,8 +79,7 @@ public class CassandraRepositorySessionF&#010;     public RepositorySession createSession()&#010;     {&#010;         CassandraMetadataRepository metadataRepository =&#010;-            new CassandraMetadataRepository( metadataFacetFactories, configuration,&#010;-                                             cassandraEntityManagerFactory.getKeyspace() );&#010;+            new CassandraMetadataRepository( metadataFacetFactories, configuration, cassandraEntityManagerFactory );&#010;         return new RepositorySession( metadataRepository, metadataResolver );&#010;     }&#010; &#010;&#010;Modified: archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java?rev=1491787&amp;r1=1491786&amp;r2=1491787&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java (original)&#010;+++ archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java Tue Jun 11 13:18:25 2013&#010;@@ -24,17 +24,30 @@ import com.netflix.astyanax.AstyanaxCont&#010; import com.netflix.astyanax.Keyspace;&#010; import com.netflix.astyanax.connectionpool.NodeDiscoveryType;&#010; import com.netflix.astyanax.connectionpool.exceptions.ConnectionException;&#010;+import com.netflix.astyanax.connectionpool.exceptions.NotFoundException;&#010; import com.netflix.astyanax.connectionpool.impl.ConnectionPoolConfigurationImpl;&#010; import com.netflix.astyanax.connectionpool.impl.ConnectionPoolType;&#010; import com.netflix.astyanax.connectionpool.impl.CountingConnectionPoolMonitor;&#010; import com.netflix.astyanax.ddl.KeyspaceDefinition;&#010;+import com.netflix.astyanax.entitystore.DefaultEntityManager;&#010;+import com.netflix.astyanax.entitystore.EntityManager;&#010; import com.netflix.astyanax.impl.AstyanaxConfigurationImpl;&#010; import com.netflix.astyanax.thrift.ThriftFamilyFactory;&#010;+import org.apache.archiva.metadata.repository.cassandra.model.ArtifactMetadataModel;&#010;+import org.apache.archiva.metadata.repository.cassandra.model.MetadataFacetModel;&#010;+import org.apache.archiva.metadata.repository.cassandra.model.Namespace;&#010;+import org.apache.archiva.metadata.repository.cassandra.model.Project;&#010;+import org.apache.archiva.metadata.repository.cassandra.model.ProjectVersionMetadataModel;&#010;+import org.apache.archiva.metadata.repository.cassandra.model.Repository;&#010;+import org.slf4j.Logger;&#010;+import org.slf4j.LoggerFactory;&#010; import org.springframework.context.ApplicationContext;&#010; import org.springframework.stereotype.Service;&#010; &#010; import javax.annotation.PostConstruct;&#010; import javax.inject.Inject;&#010;+import javax.persistence.PersistenceException;&#010;+import java.util.Properties;&#010; &#010; /**&#010;  * FIXME make all configuration not hardcoded :-)&#010;@@ -46,6 +59,8 @@ public class DefaultCassandraEntityManag&#010;     implements CassandraEntityManagerFactory&#010; {&#010; &#010;+    private Logger logger = LoggerFactory.getLogger( getClass() );&#010;+&#010;     @Inject&#010;     private ApplicationContext applicationContext;&#010; &#010;@@ -53,9 +68,21 @@ public class DefaultCassandraEntityManag&#010; &#010;     private static final String KEYSPACE_NAME = "ArchivaKeySpace";&#010; &#010;+    private AstyanaxContext&lt;Keyspace&gt; keyspaceContext;&#010;+&#010;     private Keyspace keyspace;&#010; &#010;-    private AstyanaxContext&lt;Keyspace&gt; keyspaceContext;&#010;+    private EntityManager&lt;Repository, String&gt; repositoryEntityManager;&#010;+&#010;+    private EntityManager&lt;Namespace, String&gt; namespaceEntityManager;&#010;+&#010;+    private EntityManager&lt;Project, String&gt; projectEntityManager;&#010;+&#010;+    private EntityManager&lt;ArtifactMetadataModel, String&gt; artifactMetadataModelEntityManager;&#010;+&#010;+    private EntityManager&lt;MetadataFacetModel, String&gt; metadataFacetModelEntityManager;&#010;+&#010;+    private EntityManager&lt;ProjectVersionMetadataModel, String&gt; projectVersionMetadataModelEntityManager;&#010; &#010; &#010;     @PostConstruct&#010;@@ -104,6 +131,106 @@ public class DefaultCassandraEntityManag&#010;         }&#010; &#010; &#010;+&#010;+        try&#010;+        {&#010;+            Properties properties = keyspace.getKeyspaceProperties();&#010;+            logger.info( "keyspace properties: {}", properties );&#010;+        }&#010;+        catch ( ConnectionException e )&#010;+        {&#010;+            // FIXME better logging !&#010;+            logger.warn( e.getMessage(), e );&#010;+        }&#010;+&#010;+        try&#010;+        {&#010;+            repositoryEntityManager =&#010;+                new DefaultEntityManager.Builder&lt;Repository, String&gt;().withEntityType( Repository.class ).withKeyspace(&#010;+                    keyspace ).build();&#010;+            boolean exists = columnFamilyExists( "repository" );&#010;+            // TODO very basic test we must test model change too&#010;+            if ( !exists )&#010;+            {&#010;+                repositoryEntityManager.createStorage( null );&#010;+            }&#010;+&#010;+            namespaceEntityManager =&#010;+                new DefaultEntityManager.Builder&lt;Namespace, String&gt;().withEntityType( Namespace.class ).withKeyspace(&#010;+                    keyspace ).build();&#010;+&#010;+            exists = columnFamilyExists( "namespace" );&#010;+            if ( !exists )&#010;+            {&#010;+                namespaceEntityManager.createStorage( null );&#010;+            }&#010;+&#010;+            projectEntityManager =&#010;+                new DefaultEntityManager.Builder&lt;Project, String&gt;().withEntityType( Project.class ).withKeyspace(&#010;+                    keyspace ).build();&#010;+&#010;+            exists = columnFamilyExists( "project" );&#010;+            if ( !exists )&#010;+            {&#010;+                projectEntityManager.createStorage( null );&#010;+            }&#010;+&#010;+            artifactMetadataModelEntityManager =&#010;+                new DefaultEntityManager.Builder&lt;ArtifactMetadataModel, String&gt;().withEntityType(&#010;+                    ArtifactMetadataModel.class ).withKeyspace( keyspace ).build();&#010;+&#010;+            exists = columnFamilyExists( "artifactmetadatamodel" );&#010;+            if ( !exists )&#010;+            {&#010;+                artifactMetadataModelEntityManager.createStorage( null );&#010;+            }&#010;+&#010;+            metadataFacetModelEntityManager =&#010;+                new DefaultEntityManager.Builder&lt;MetadataFacetModel, String&gt;().withEntityType(&#010;+                    MetadataFacetModel.class ).withKeyspace( keyspace ).build();&#010;+&#010;+            exists = columnFamilyExists( "metadatafacetmodel" );&#010;+            if ( !exists )&#010;+            {&#010;+                metadataFacetModelEntityManager.createStorage( null );&#010;+            }&#010;+&#010;+            projectVersionMetadataModelEntityManager =&#010;+                new DefaultEntityManager.Builder&lt;ProjectVersionMetadataModel, String&gt;().withEntityType(&#010;+                    ProjectVersionMetadataModel.class ).withKeyspace( keyspace ).build();&#010;+&#010;+            exists = columnFamilyExists( "projectversionmetadatamodel" );&#010;+            if ( !exists )&#010;+            {&#010;+                projectVersionMetadataModelEntityManager.createStorage( null );&#010;+            }&#010;+&#010;+        }&#010;+        catch ( PersistenceException e )&#010;+        {&#010;+            // FIXME report exception&#010;+            logger.error( e.getMessage(), e );&#010;+        }&#010;+        catch ( ConnectionException e )&#010;+        {&#010;+            // FIXME report exception&#010;+            logger.error( e.getMessage(), e );&#010;+        }&#010;+    }&#010;+&#010;+    private boolean columnFamilyExists( String columnFamilyName )&#010;+        throws ConnectionException&#010;+    {&#010;+        try&#010;+        {&#010;+            Properties properties = keyspace.getColumnFamilyProperties( columnFamilyName );&#010;+            logger.debug( "getColumnFamilyProperties for {}: {}", columnFamilyName, properties );&#010;+            return true;&#010;+        }&#010;+        catch ( NotFoundException e )&#010;+        {&#010;+            return false;&#010;+        }&#010;     }&#010; &#010; &#010;@@ -112,4 +239,67 @@ public class DefaultCassandraEntityManag&#010;     {&#010;         return keyspace;&#010;     }&#010;+&#010;+    public EntityManager&lt;Repository, String&gt; getRepositoryEntityManager()&#010;+    {&#010;+        return repositoryEntityManager;&#010;+    }&#010;+&#010;+    public void setRepositoryEntityManager( EntityManager&lt;Repository, String&gt; repositoryEntityManager )&#010;+    {&#010;+        this.repositoryEntityManager = repositoryEntityManager;&#010;+    }&#010;+&#010;+    public EntityManager&lt;Namespace, String&gt; getNamespaceEntityManager()&#010;+    {&#010;+        return namespaceEntityManager;&#010;+    }&#010;+&#010;+    public void setNamespaceEntityManager( EntityManager&lt;Namespace, String&gt; namespaceEntityManager )&#010;+    {&#010;+        this.namespaceEntityManager = namespaceEntityManager;&#010;+    }&#010;+&#010;+    public EntityManager&lt;Project, String&gt; getProjectEntityManager()&#010;+    {&#010;+        return projectEntityManager;&#010;+    }&#010;+&#010;+    public void setProjectEntityManager( EntityManager&lt;Project, String&gt; projectEntityManager )&#010;+    {&#010;+        this.projectEntityManager = projectEntityManager;&#010;+    }&#010;+&#010;+    public EntityManager&lt;ArtifactMetadataModel, String&gt; getArtifactMetadataModelEntityManager()&#010;+    {&#010;+        return artifactMetadataModelEntityManager;&#010;+    }&#010;+&#010;+    public void setArtifactMetadataModelEntityManager(&#010;+        EntityManager&lt;ArtifactMetadataModel, String&gt; artifactMetadataModelEntityManager )&#010;+    {&#010;+        this.artifactMetadataModelEntityManager = artifactMetadataModelEntityManager;&#010;+    }&#010;+&#010;+    public EntityManager&lt;MetadataFacetModel, String&gt; getMetadataFacetModelEntityManager()&#010;+    {&#010;+        return metadataFacetModelEntityManager;&#010;+    }&#010;+&#010;+    public void setMetadataFacetModelEntityManager(&#010;+        EntityManager&lt;MetadataFacetModel, String&gt; metadataFacetModelEntityManager )&#010;+    {&#010;+        this.metadataFacetModelEntityManager = metadataFacetModelEntityManager;&#010;+    }&#010;+&#010;+    public EntityManager&lt;ProjectVersionMetadataModel, String&gt; getProjectVersionMetadataModelEntityManager()&#010;+    {&#010;+        return projectVersionMetadataModelEntityManager;&#010;+    }&#010;+&#010;+    public void setProjectVersionMetadataModelEntityManager(&#010;+        EntityManager&lt;ProjectVersionMetadataModel, String&gt; projectVersionMetadataModelEntityManager )&#010;+    {&#010;+        this.projectVersionMetadataModelEntityManager = projectVersionMetadataModelEntityManager;&#010;+    }&#010; }&#010;&#010;Modified: archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepositoryTest.java&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepositoryTest.java?rev=1491787&amp;r1=1491786&amp;r2=1491787&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepositoryTest.java (original)&#010;+++ archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepositoryTest.java Tue Jun 11 13:18:25 2013&#010;@@ -67,7 +67,7 @@ public class CassandraMetadataRepository&#010; &#010;         Map&lt;String, MetadataFacetFactory&gt; factories = createTestMetadataFacetFactories();&#010; &#010;-        this.cmr = new CassandraMetadataRepository( factories, null, cassandraEntityManagerFactory.getKeyspace() );&#010;+        this.cmr = new CassandraMetadataRepository( factories, null, cassandraEntityManagerFactory );&#010;         this.repository = this.cmr;&#010; &#010;         clearReposAndNamespace();&#010;&#010;Modified: archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/RepositoriesNamespaceTest.java&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/RepositoriesNamespaceTest.java?rev=1491787&amp;r1=1491786&amp;r2=1491787&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/RepositoriesNamespaceTest.java (original)&#010;+++ archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/RepositoriesNamespaceTest.java Tue Jun 11 13:18:25 2013&#010;@@ -58,7 +58,7 @@ public class RepositoriesNamespaceTest&#010;         throws Exception&#010;     {&#010; &#010;-        cmr = new CassandraMetadataRepository( null, null, cassandraEntityManagerFactory.getKeyspace() );&#010;+        cmr = new CassandraMetadataRepository( null, null, cassandraEntityManagerFactory );&#010;         clearReposAndNamespace();&#010; &#010;     }&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491777 - in /archiva/trunk/archiva-modules/archiva-web/archiva-webapp: pom.xml src/main/webapp/WEB-INF/applicationContext.xml</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130611125833.22E8C23888E7@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130611125833-22E8C23888E7@eris-apache-org%3e</id>
<updated>2013-06-11T12:58:33Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Tue Jun 11 12:58:32 2013&#010;New Revision: 1491777&#010;&#010;URL: http://svn.apache.org/r1491777&#010;Log:&#010;comment metadata repo cassandra to ease testing&#010;&#010;Modified:&#010;    archiva/trunk/archiva-modules/archiva-web/archiva-webapp/pom.xml&#010;    archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/applicationContext.xml&#010;&#010;Modified: archiva/trunk/archiva-modules/archiva-web/archiva-webapp/pom.xml&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp/pom.xml?rev=1491777&amp;r1=1491776&amp;r2=1491777&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/archiva-web/archiva-webapp/pom.xml (original)&#010;+++ archiva/trunk/archiva-modules/archiva-web/archiva-webapp/pom.xml Tue Jun 11 12:58:32 2013&#010;@@ -118,10 +118,17 @@&#010;       &lt;groupId&gt;org.apache.archiva&lt;/groupId&gt;&#010;       &lt;artifactId&gt;metadata-repository-api&lt;/artifactId&gt;&#010;     &lt;/dependency&gt;&#010;+&#010;     &lt;dependency&gt;&#010;       &lt;groupId&gt;org.apache.archiva&lt;/groupId&gt;&#010;       &lt;artifactId&gt;metadata-store-jcr&lt;/artifactId&gt;&#010;     &lt;/dependency&gt;&#010;+    &lt;!--&#010;+    &lt;dependency&gt;&#010;+      &lt;groupId&gt;org.apache.archiva&lt;/groupId&gt;&#010;+      &lt;artifactId&gt;metadata-store-cassandra&lt;/artifactId&gt;&#010;+    &lt;/dependency&gt;&#010;+    --&gt;&#010;     &lt;dependency&gt;&#010;       &lt;groupId&gt;org.apache.jackrabbit&lt;/groupId&gt;&#010;       &lt;artifactId&gt;jackrabbit-jcr-commons&lt;/artifactId&gt;&#010;@@ -1018,6 +1025,8 @@&#010;             not needed as we use asyncLogger in configuration&#010;             &lt;Log4jContextSelector&gt;org.apache.logging.log4j.core.async.AsyncLoggerContextSelector&lt;/Log4jContextSelector&gt;&#010;             --&gt;&#010;+            &lt;cassandraHost&gt;localhost&lt;/cassandraHost&gt;&#010;+            &lt;cassandraPort&gt;9160&lt;/cassandraPort&gt;&#010;           &lt;/systemProperties&gt;&#010;           &lt;additionalClasspathDirs&gt;&#010;             &lt;additionalClasspathDir&gt;${basedir}/src/test/tomcat&lt;/additionalClasspathDir&gt;&#010;&#010;Modified: archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/applicationContext.xml&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/applicationContext.xml?rev=1491777&amp;r1=1491776&amp;r2=1491777&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/applicationContext.xml&#010;(original)&#010;+++ archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/WEB-INF/applicationContext.xml&#010;Tue Jun 11 12:58:32 2013&#010;@@ -37,6 +37,9 @@&#010;   &lt;alias name="repositoryStatisticsManager#default" alias="repositoryStatisticsManager"/&gt;&#010;   &lt;!-- TODO olamy need to find a more dynamic way if using jcr impl --&gt;&#010;   &lt;alias name="repositorySessionFactory#jcr" alias="repositorySessionFactory"/&gt;&#010;+  &lt;!--&#010;+  &lt;alias name="repositorySessionFactory#cassandra" alias="repositorySessionFactory"/&gt;&#010;+  --&gt;&#010; &#010;   &lt;alias name="environmentCheck#archiva-locked-admin-check" alias="environmentCheck#locked-admin-check"/&gt;&#010;   &lt;alias name="userManager#archiva" alias="userManager#default"/&gt;&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491776 - /archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130611125813.411E523889FD@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130611125813-411E523889FD@eris-apache-org%3e</id>
<updated>2013-06-11T12:58:13Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Tue Jun 11 12:58:12 2013&#010;New Revision: 1491776&#010;&#010;URL: http://svn.apache.org/r1491776&#010;Log:&#010;remove unused import&#010;&#010;Modified:&#010;    archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java&#010;&#010;Modified: archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java?rev=1491776&amp;r1=1491775&amp;r2=1491776&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java&#010;(original)&#010;+++ archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java&#010;Tue Jun 11 12:58:12 2013&#010;@@ -23,7 +23,6 @@ import com.google.common.collect.Immutab&#010; import com.netflix.astyanax.AstyanaxContext;&#010; import com.netflix.astyanax.Keyspace;&#010; import com.netflix.astyanax.connectionpool.NodeDiscoveryType;&#010;-import com.netflix.astyanax.connectionpool.exceptions.BadRequestException;&#010; import com.netflix.astyanax.connectionpool.exceptions.ConnectionException;&#010; import com.netflix.astyanax.connectionpool.impl.ConnectionPoolConfigurationImpl;&#010; import com.netflix.astyanax.connectionpool.impl.ConnectionPoolType;&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491774 - /archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130611125747.9097C23889FA@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130611125747-9097C23889FA@eris-apache-org%3e</id>
<updated>2013-06-11T12:57:47Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Tue Jun 11 12:57:47 2013&#010;New Revision: 1491774&#010;&#010;URL: http://svn.apache.org/r1491774&#010;Log:&#010;use dynamic ports for all cassandra ports&#010;&#010;Modified:&#010;    archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml&#010;&#010;Modified: archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml?rev=1491774&amp;r1=1491773&amp;r2=1491774&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml (original)&#010;+++ archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml Tue Jun 11 12:57:47&#010;2013&#010;@@ -229,6 +229,7 @@&#010;                 com.netflix.astyanax.connectionpool.impl,&#010;                 com.netflix.astyanax.entitystore,&#010;                 com.netflix.astyanax.impl,&#010;+                com.netflix.astyanax.ddl,&#010;                 com.netflix.astyanax.thrift,&#010;                 net.sf.beanlib.provider.replicator,&#010;                 org.apache.archiva.metadata.model;version=${project.version},&#010;@@ -255,6 +256,8 @@&#010;             &lt;configuration&gt;&#010;               &lt;portNames&gt;&#010;                 &lt;portName&gt;cassandraPort&lt;/portName&gt;&#010;+                &lt;portName&gt;cassandra.storagePort&lt;/portName&gt;&#010;+                &lt;portName&gt;cassandra.stopPort&lt;/portName&gt;&#010;               &lt;/portNames&gt;&#010;             &lt;/configuration&gt;&#010;           &lt;/execution&gt;&#010;@@ -275,6 +278,8 @@&#010;             &lt;/goals&gt;&#010;             &lt;configuration&gt;&#010;               &lt;rpcPort&gt;${cassandraPort}&lt;/rpcPort&gt;&#010;+              &lt;storagePort&gt;${cassandra.storagePort}&lt;/storagePort&gt;&#010;+              &lt;stopPort&gt;${cassandra.stopPort}&lt;/stopPort&gt;&#010;               &lt;addMainClasspath&gt;false&lt;/addMainClasspath&gt;&#010;               &lt;addTestClasspath&gt;false&lt;/addTestClasspath&gt;&#010;             &lt;/configuration&gt;&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491773 - /archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130611125732.C2B6523888E7@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130611125732-C2B6523888E7@eris-apache-org%3e</id>
<updated>2013-06-11T12:57:32Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Tue Jun 11 12:57:32 2013&#010;New Revision: 1491773&#010;&#010;URL: http://svn.apache.org/r1491773&#010;Log:&#010;exclude servlet-api&#010;&#010;Modified:&#010;    archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml&#010;&#010;Modified: archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml?rev=1491773&amp;r1=1491772&amp;r2=1491773&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml (original)&#010;+++ archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml Tue Jun 11 12:57:32&#010;2013&#010;@@ -133,6 +133,10 @@&#010;           &lt;groupId&gt;org.apache.cassandra&lt;/groupId&gt;&#010;           &lt;artifactId&gt;cassandra-thrift&lt;/artifactId&gt;&#010;         &lt;/exclusion&gt;&#010;+        &lt;exclusion&gt;&#010;+          &lt;groupId&gt;javax.servlet&lt;/groupId&gt;&#010;+          &lt;artifactId&gt;servlet-api&lt;/artifactId&gt;&#010;+        &lt;/exclusion&gt;&#010;       &lt;/exclusions&gt;&#010;     &lt;/dependency&gt;&#010; &#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491772 - /archiva/trunk/pom.xml</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130611125717.BA4D023889ED@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130611125717-BA4D023889ED@eris-apache-org%3e</id>
<updated>2013-06-11T12:57:17Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Tue Jun 11 12:57:17 2013&#010;New Revision: 1491772&#010;&#010;URL: http://svn.apache.org/r1491772&#010;Log:&#010;add metadata-store-cassandra in deptMngt in top pom&#010;&#010;Modified:&#010;    archiva/trunk/pom.xml&#010;&#010;Modified: archiva/trunk/pom.xml&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/pom.xml?rev=1491772&amp;r1=1491771&amp;r2=1491772&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/pom.xml (original)&#010;+++ archiva/trunk/pom.xml Tue Jun 11 12:57:17 2013&#010;@@ -211,6 +211,11 @@&#010;       &lt;/dependency&gt;&#010;       &lt;dependency&gt;&#010;         &lt;groupId&gt;org.apache.archiva&lt;/groupId&gt;&#010;+        &lt;artifactId&gt;metadata-store-cassandra&lt;/artifactId&gt;&#010;+        &lt;version&gt;${project.version}&lt;/version&gt;&#010;+      &lt;/dependency&gt;&#010;+      &lt;dependency&gt;&#010;+        &lt;groupId&gt;org.apache.archiva&lt;/groupId&gt;&#010;         &lt;artifactId&gt;repository-statistics&lt;/artifactId&gt;&#010;         &lt;version&gt;${project.version}&lt;/version&gt;&#010;       &lt;/dependency&gt;&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491771 - /archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130611125702.3C41023888E7@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130611125702-3C41023888E7@eris-apache-org%3e</id>
<updated>2013-06-11T12:57:02Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Tue Jun 11 12:57:01 2013&#010;New Revision: 1491771&#010;&#010;URL: http://svn.apache.org/r1491771&#010;Log:&#010;do not create keyspace if exists&#010;&#010;Modified:&#010;    archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java&#010;&#010;Modified: archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java?rev=1491771&amp;r1=1491770&amp;r2=1491771&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java&#010;(original)&#010;+++ archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java&#010;Tue Jun 11 12:57:01 2013&#010;@@ -23,10 +23,12 @@ import com.google.common.collect.Immutab&#010; import com.netflix.astyanax.AstyanaxContext;&#010; import com.netflix.astyanax.Keyspace;&#010; import com.netflix.astyanax.connectionpool.NodeDiscoveryType;&#010;+import com.netflix.astyanax.connectionpool.exceptions.BadRequestException;&#010; import com.netflix.astyanax.connectionpool.exceptions.ConnectionException;&#010; import com.netflix.astyanax.connectionpool.impl.ConnectionPoolConfigurationImpl;&#010; import com.netflix.astyanax.connectionpool.impl.ConnectionPoolType;&#010; import com.netflix.astyanax.connectionpool.impl.CountingConnectionPoolMonitor;&#010;+import com.netflix.astyanax.ddl.KeyspaceDefinition;&#010; import com.netflix.astyanax.impl.AstyanaxConfigurationImpl;&#010; import com.netflix.astyanax.thrift.ThriftFamilyFactory;&#010; import org.springframework.context.ApplicationContext;&#010;@@ -40,7 +42,7 @@ import javax.inject.Inject;&#010;  *&#010;  * @author Olivier Lamy&#010;  */&#010;-@Service("archivaEntityManagerFactory#cassandra")&#010;+@Service( "archivaEntityManagerFactory#cassandra" )&#010; public class DefaultCassandraEntityManagerFactory&#010;     implements CassandraEntityManagerFactory&#010; {&#010;@@ -82,7 +84,26 @@ public class DefaultCassandraEntityManag&#010;                                                                                         &#010;      "1" ).build() ).put(&#010;             "strategy_class", "SimpleStrategy" ).build();&#010; &#010;-        keyspace.createKeyspace( options );&#010;+        // test if the namespace already exists if exception or null create it&#010;+        boolean keyspaceExists = false;&#010;+        try&#010;+        {&#010;+            KeyspaceDefinition keyspaceDefinition = keyspace.describeKeyspace();&#010;+            if ( keyspaceDefinition != null )&#010;+            {&#010;+                keyspaceExists = true;&#010;+            }&#010;+&#010;+        }&#010;+        catch ( ConnectionException e )&#010;+        {&#010;+        }&#010;+&#010;+        if ( !keyspaceExists )&#010;+        {&#010;+            keyspace.createKeyspace( options );&#010;+        }&#010;+&#010; &#010;     }&#010; &#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491750 - /archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130611113830.C566223888E3@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130611113830-C566223888E3@eris-apache-org%3e</id>
<updated>2013-06-11T11:38:30Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Tue Jun 11 11:38:30 2013&#010;New Revision: 1491750&#010;&#010;URL: http://svn.apache.org/r1491750&#010;Log:&#010;remove commented code&#010;&#010;Modified:&#010;    archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java&#010;&#010;Modified: archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java?rev=1491750&amp;r1=1491749&amp;r2=1491750&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java&#010;(original)&#010;+++ archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java&#010;Tue Jun 11 11:38:30 2013&#010;@@ -250,12 +250,10 @@ public abstract class AbstractMetadataRe&#010; &#010;         Assertions.assertThat( mailingLists ).isNotNull().isNotEmpty().hasSize( 1 );&#010; &#010;-        //assertEquals( 1, metadata.getMailingLists().size() );&#010;         mailingList = metadata.getMailingLists().get( 0 );&#010;         assertEquals( "Foo List", mailingList.getName() );&#010; &#010;         List&lt;String&gt; others = mailingList.getOtherArchives();&#010;-        //assertEquals( Collections.&lt;String&gt;emptyList(), mailingList.getOtherArchives()&#010;);&#010;         Assertions.assertThat( others ).isNotNull().isEmpty();&#010;     }&#010; &#010;@@ -451,7 +449,7 @@ public abstract class AbstractMetadataRe&#010;         repository.updateProjectVersion( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT, metadata&#010;);&#010; &#010;         metadata = repository.getProjectVersion( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT,&#010;TEST_PROJECT_VERSION );&#010;-        //assertEquals( Collections.singleton( TEST_FACET_ID ), metadata.getFacetIds() );&#010;+&#010;         Assertions.assertThat( metadata.getFacetIds() ).isNotNull().isNotEmpty().hasSize(&#010;1 ).contains( TEST_FACET_ID );&#010; &#010;         TestMetadataFacet testFacet = (TestMetadataFacet) metadata.getFacet( TEST_FACET_ID&#010;);&#010;@@ -467,7 +465,7 @@ public abstract class AbstractMetadataRe&#010;         repository.updateProjectVersion( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT, metadata&#010;);&#010; &#010;         metadata = repository.getProjectVersion( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT,&#010;TEST_PROJECT_VERSION );&#010;-        //assertEquals( Collections.singleton( TEST_FACET_ID ), metadata.getFacetIds() );&#010;+&#010;         Assertions.assertThat( metadata.getFacetIds() ).isNotNull().isNotEmpty().hasSize(&#010;1 ).contains( TEST_FACET_ID );&#010;         testFacet = (TestMetadataFacet) metadata.getFacet( TEST_FACET_ID );&#010;         assertFalse( testFacet.toProperties().containsKey( "deleteKey" ) );&#010;@@ -520,10 +518,10 @@ public abstract class AbstractMetadataRe&#010; &#010;         Collection&lt;ArtifactMetadata&gt; artifacts =&#010;             repository.getArtifacts( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT, TEST_PROJECT_VERSION&#010;);&#010;-        //assertEquals( 1, artifacts.size() );&#010;+&#010;         Assertions.assertThat( artifacts ).isNotNull().isNotEmpty().hasSize( 1 );&#010;         metadata = artifacts.iterator().next();&#010;-        //assertEquals( Collections.singleton( TEST_FACET_ID ), metadata.getFacetIds() );&#010;+&#010;         Collection&lt;String&gt; ids = metadata.getFacetIds();&#010;         Assertions.assertThat( ids ).isNotNull().isNotEmpty().hasSize( 1 ).contains( TEST_FACET_ID&#010;);&#010; &#010;@@ -540,15 +538,15 @@ public abstract class AbstractMetadataRe&#010;         repository.updateArtifact( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT, TEST_PROJECT_VERSION,&#010;metadata );&#010; &#010;         artifacts = repository.getArtifacts( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT,&#010;TEST_PROJECT_VERSION );&#010;-        //assertEquals( 1, artifacts.size() );&#010;+&#010;         Assertions.assertThat( artifacts ).isNotNull().isNotEmpty().hasSize( 1 );&#010;         metadata = artifacts.iterator().next();&#010;-        //assertEquals( Collections.singleton( TEST_FACET_ID ), metadata.getFacetIds() );&#010;+&#010;         ids = metadata.getFacetIds();&#010;         Assertions.assertThat( ids ).isNotNull().isNotEmpty().hasSize( 1 ).contains( TEST_FACET_ID&#010;);&#010; &#010;         testFacet = (TestMetadataFacet) metadata.getFacet( TEST_FACET_ID );&#010;-        //assertFalse( testFacet.toProperties().containsKey( "deleteKey" ) );&#010;+&#010;         Map&lt;String, String&gt; props = testFacet.toProperties();&#010;         Assertions.assertThat( props ).isNotNull().doesNotContainKey( "deleteKey" );&#010;     }&#010;@@ -842,7 +840,6 @@ public abstract class AbstractMetadataRe&#010; &#010;         Assertions.assertThat( versions ).isNotNull().isNotEmpty().hasSize( 1 ).containsExactly(&#010;TEST_PROJECT_VERSION );&#010; &#010;-        //assertEquals( Collections.singleton( TEST_PROJECT_VERSION ), versions );&#010;     }&#010; &#010;     @Test&#010;@@ -945,8 +942,6 @@ public abstract class AbstractMetadataRe&#010; &#010;         List&lt;ArtifactMetadata&gt; artifacts = repository.getArtifactsByDateRange( TEST_REPO_ID,&#010;null, upper );&#010; &#010;-        //assertTrue( .isEmpty() );&#010;-&#010;         Assertions.assertThat( artifacts ).isNotNull().isEmpty();&#010;     }&#010; &#010;@@ -1030,18 +1025,14 @@ public abstract class AbstractMetadataRe&#010; &#010;         Collection&lt;String&gt; namespaces = repository.getRootNamespaces( TEST_REPO_ID&#010;);&#010; &#010;-        //assertEquals( Arrays.asList( "org" ), repository.getRootNamespaces( TEST_REPO_ID&#010;) );&#010;         Assertions.assertThat( namespaces ).isNotNull().isNotEmpty().hasSize( 1 ).contains(&#010;"org" );&#010; &#010;-        //assertEquals( Arrays.asList( "apache" ), repository.getNamespaces( TEST_REPO_ID,&#010;"org" ) );&#010;         namespaces = repository.getNamespaces( TEST_REPO_ID, "org" );&#010;         Assertions.assertThat( namespaces ).isNotNull().isNotEmpty().hasSize( 1 ).contains(&#010;"apache" );&#010; &#010;-        //assertEquals( Arrays.asList( "maven" ), repository.getNamespaces( TEST_REPO_ID,&#010;"org.apache" ) );&#010;         namespaces = repository.getNamespaces( TEST_REPO_ID, "org.apache" );&#010;         Assertions.assertThat( namespaces ).isNotNull().isNotEmpty().hasSize( 1 ).contains(&#010;"maven" );&#010; &#010;-        //assertEquals( Arrays.asList( "shared" ), repository.getNamespaces( TEST_REPO_ID,&#010;"org.apache.maven" ) );&#010;         namespaces = repository.getNamespaces( TEST_REPO_ID, "org.apache.maven" );&#010;         Assertions.assertThat( namespaces ).isNotNull().isNotEmpty().hasSize( 1 ).contains(&#010;"shared" );&#010;     }&#010;@@ -1061,7 +1052,6 @@ public abstract class AbstractMetadataRe&#010; &#010;         Assertions.assertThat( namespaces ).isNotNull().isEmpty();&#010; &#010;-        //assertEquals( Collections.&lt;String&gt;emptyList(),  );&#010;     }&#010; &#010;     @Test&#010;@@ -1344,9 +1334,6 @@ public abstract class AbstractMetadataRe&#010; &#010;         log.info( "artifactMetadatas: {}", artifactMetadatas );&#010; &#010;-        //assertEquals( Collections.singletonList( artifact ), new ArrayList&lt;ArtifactMetadata&gt;(&#010;-        //    repository.getArtifacts( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT, "2.0-SNAPSHOT"&#010;) ) );&#010;-&#010;         repository.removeArtifact( artifactOne, "2.0-SNAPSHOT" );&#010; &#010;         artifactMetadatas = repository.getArtifacts( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT,&#010;"2.0-SNAPSHOT" );&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491747 - /archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130611112912.C48752388900@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130611112912-C48752388900@eris-apache-org%3e</id>
<updated>2013-06-11T11:29:12Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Tue Jun 11 11:29:12 2013&#010;New Revision: 1491747&#010;&#010;URL: http://svn.apache.org/r1491747&#010;Log:&#010;fix cassandra plugin version&#010;&#010;Modified:&#010;    archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml&#010;&#010;Modified: archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml?rev=1491747&amp;r1=1491746&amp;r2=1491747&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml (original)&#010;+++ archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml Tue Jun 11 11:29:12&#010;2013&#010;@@ -261,7 +261,7 @@&#010;       &lt;plugin&gt;&#010;         &lt;groupId&gt;org.codehaus.mojo&lt;/groupId&gt;&#010;         &lt;artifactId&gt;cassandra-maven-plugin&lt;/artifactId&gt;&#010;-        &lt;version&gt;1.2.1-2-SNAPSHOT&lt;/version&gt;&#010;+        &lt;version&gt;1.2.5-1-SNAPSHOT&lt;/version&gt;&#010;         &lt;executions&gt;&#010;           &lt;execution&gt;&#010;             &lt;id&gt;start-cassandra&lt;/id&gt;&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491740 - /archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130611111631.B520023888D2@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130611111631-B520023888D2@eris-apache-org%3e</id>
<updated>2013-06-11T11:16:31Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Tue Jun 11 11:16:31 2013&#010;New Revision: 1491740&#010;&#010;URL: http://svn.apache.org/r1491740&#010;Log:&#010;use slf4j-simple to have cassandra server logging&#010;&#010;Modified:&#010;    archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml&#010;&#010;Modified: archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml?rev=1491740&amp;r1=1491739&amp;r2=1491740&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml (original)&#010;+++ archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml Tue Jun 11 11:16:31&#010;2013&#010;@@ -156,10 +156,7 @@&#010;       &lt;/exclusions&gt;&#010;     &lt;/dependency&gt;&#010; &#010;-    &lt;dependency&gt;&#010;-      &lt;groupId&gt;org.apache.logging.log4j&lt;/groupId&gt;&#010;-      &lt;artifactId&gt;log4j-jcl&lt;/artifactId&gt;&#010;-    &lt;/dependency&gt;&#010;+&#010;     &lt;dependency&gt;&#010;       &lt;groupId&gt;org.springframework&lt;/groupId&gt;&#010;       &lt;artifactId&gt;spring-test&lt;/artifactId&gt;&#010;@@ -274,6 +271,8 @@&#010;             &lt;/goals&gt;&#010;             &lt;configuration&gt;&#010;               &lt;rpcPort&gt;${cassandraPort}&lt;/rpcPort&gt;&#010;+              &lt;addMainClasspath&gt;false&lt;/addMainClasspath&gt;&#010;+              &lt;addTestClasspath&gt;false&lt;/addTestClasspath&gt;&#010;             &lt;/configuration&gt;&#010;           &lt;/execution&gt;&#010;           &lt;execution&gt;&#010;@@ -284,6 +283,13 @@&#010;             &lt;/goals&gt;&#010;           &lt;/execution&gt;&#010;         &lt;/executions&gt;&#010;+        &lt;dependencies&gt;&#010;+          &lt;dependency&gt;&#010;+            &lt;groupId&gt;org.slf4j&lt;/groupId&gt;&#010;+            &lt;artifactId&gt;slf4j-simple&lt;/artifactId&gt;&#010;+            &lt;version&gt;${slf4j.version}&lt;/version&gt;&#010;+          &lt;/dependency&gt;&#010;+        &lt;/dependencies&gt;&#010;       &lt;/plugin&gt;&#010;     &lt;/plugins&gt;&#010;     &lt;pluginManagement&gt;&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491730 - /archiva/trunk/pom.xml</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130611104347.8C35923889ED@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130611104347-8C35923889ED@eris-apache-org%3e</id>
<updated>2013-06-11T10:43:47Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Tue Jun 11 10:43:47 2013&#010;New Revision: 1491730&#010;&#010;URL: http://svn.apache.org/r1491730&#010;Log:&#010;add codehaus mojo snapshot repository&#010;&#010;Modified:&#010;    archiva/trunk/pom.xml&#010;&#010;Modified: archiva/trunk/pom.xml&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/pom.xml?rev=1491730&amp;r1=1491729&amp;r2=1491730&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/pom.xml (original)&#010;+++ archiva/trunk/pom.xml Tue Jun 11 10:43:47 2013&#010;@@ -1879,6 +1879,17 @@&#010;         &lt;enabled&gt;true&lt;/enabled&gt;&#010;       &lt;/snapshots&gt;&#010;     &lt;/pluginRepository&gt;&#010;+    &lt;pluginRepository&gt;&#010;+      &lt;id&gt;mojo.snapshots&lt;/id&gt;&#010;+      &lt;name&gt;Codehaus Mojo Snapshots&lt;/name&gt;&#010;+      &lt;url&gt;https://nexus.codehaus.org/content/repositories/snapshots&lt;/url&gt;&#010;+      &lt;releases&gt;&#010;+        &lt;enabled&gt;false&lt;/enabled&gt;&#010;+      &lt;/releases&gt;&#010;+      &lt;snapshots&gt;&#010;+        &lt;enabled&gt;true&lt;/enabled&gt;&#010;+      &lt;/snapshots&gt;&#010;+    &lt;/pluginRepository&gt;&#010;   &lt;/pluginRepositories&gt;&#010; &#010; &lt;/project&gt;&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491729 - /archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130611104333.21F9723889BB@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130611104333-21F9723889BB@eris-apache-org%3e</id>
<updated>2013-06-11T10:43:33Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Tue Jun 11 10:43:32 2013&#010;New Revision: 1491729&#010;&#010;URL: http://svn.apache.org/r1491729&#010;Log:&#010;not anymore needed repository&#010;&#010;Modified:&#010;    archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml&#010;&#010;Modified: archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml?rev=1491729&amp;r1=1491728&amp;r2=1491729&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml (original)&#010;+++ archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml Tue Jun 11 10:43:32&#010;2013&#010;@@ -301,17 +301,4 @@&#010;     &lt;/pluginManagement&gt;&#010;   &lt;/build&gt;&#010; &#010;-  &lt;repositories&gt;&#010;-    &lt;repository&gt;&#010;-      &lt;id&gt;archiva.snapshots&lt;/id&gt;&#010;-      &lt;url&gt;https://archiva-repository.apache.org/archiva/repository/snapshots/&lt;/url&gt;&#010;-      &lt;releases&gt;&#010;-        &lt;enabled&gt;false&lt;/enabled&gt;&#010;-      &lt;/releases&gt;&#010;-      &lt;snapshots&gt;&#010;-        &lt;enabled&gt;true&lt;/enabled&gt;&#010;-      &lt;/snapshots&gt;&#010;-    &lt;/repository&gt;&#010;-  &lt;/repositories&gt;&#010;-&#010; &lt;/project&gt;&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491728 - /archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130611103911.7D37B23889BB@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130611103911-7D37B23889BB@eris-apache-org%3e</id>
<updated>2013-06-11T10:39:11Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Tue Jun 11 10:39:11 2013&#010;New Revision: 1491728&#010;&#010;URL: http://svn.apache.org/r1491728&#010;Log:&#010;cassandra-maven-plugin version 1.2.1-2-SNAPSHOT to fix MCASSANDRA-26&#010;&#010;Modified:&#010;    archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml&#010;&#010;Modified: archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml?rev=1491728&amp;r1=1491727&amp;r2=1491728&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml (original)&#010;+++ archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml Tue Jun 11 10:39:11&#010;2013&#010;@@ -264,7 +264,7 @@&#010;       &lt;plugin&gt;&#010;         &lt;groupId&gt;org.codehaus.mojo&lt;/groupId&gt;&#010;         &lt;artifactId&gt;cassandra-maven-plugin&lt;/artifactId&gt;&#010;-        &lt;version&gt;1.2.1-1&lt;/version&gt;&#010;+        &lt;version&gt;1.2.1-2-SNAPSHOT&lt;/version&gt;&#010;         &lt;executions&gt;&#010;           &lt;execution&gt;&#010;             &lt;id&gt;start-cassandra&lt;/id&gt;&#010;@@ -284,13 +284,6 @@&#010;             &lt;/goals&gt;&#010;           &lt;/execution&gt;&#010;         &lt;/executions&gt;&#010;-        &lt;dependencies&gt;&#010;-          &lt;dependency&gt;&#010;-            &lt;groupId&gt;org.apache.cassandra&lt;/groupId&gt;&#010;-            &lt;artifactId&gt;cassandra-all&lt;/artifactId&gt;&#010;-            &lt;version&gt;${cassandraVersion}&lt;/version&gt;&#010;-          &lt;/dependency&gt;&#010;-        &lt;/dependencies&gt;&#010;       &lt;/plugin&gt;&#010;     &lt;/plugins&gt;&#010;     &lt;pluginManagement&gt;&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491675 - /archiva/parent/pom.xml</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130611022407.9415023888E7@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130611022407-9415023888E7@eris-apache-org%3e</id>
<updated>2013-06-11T02:24:07Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Tue Jun 11 02:24:07 2013&#010;New Revision: 1491675&#010;&#010;URL: http://svn.apache.org/r1491675&#010;Log:&#010;use surefire 2.15&#010;&#010;Modified:&#010;    archiva/parent/pom.xml&#010;&#010;Modified: archiva/parent/pom.xml&#010;URL: http://svn.apache.org/viewvc/archiva/parent/pom.xml?rev=1491675&amp;r1=1491674&amp;r2=1491675&amp;view=diff&#010;==============================================================================&#010;--- archiva/parent/pom.xml (original)&#010;+++ archiva/parent/pom.xml Tue Jun 11 02:24:07 2013&#010;@@ -64,7 +64,7 @@&#010;     &lt;releaseDeployId&gt;archiva-repository.releases&lt;/releaseDeployId&gt;&#010;     &lt;gpg.useagent&gt;true&lt;/gpg.useagent&gt;&#010; &#010;-    &lt;surefireVersion&gt;2.14.1&lt;/surefireVersion&gt;&#010;+    &lt;surefireVersion&gt;2.15&lt;/surefireVersion&gt;&#010; &#010;     &lt;!-- svnsubpub configuration --&gt;&#010; &#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491572 - /archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml</title>
<author><name>skygo@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130610193102.307F1238889B@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130610193102-307F1238889B@eris-apache-org%3e</id>
<updated>2013-06-10T19:31:02Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: skygo&#010;Date: Mon Jun 10 19:31:01 2013&#010;New Revision: 1491572&#010;&#010;URL: http://svn.apache.org/r1491572&#010;Log:&#010;fill Import package section  to make clean install pass. (Not sure if done correct)&#010;&#010;Modified:&#010;    archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml&#010;&#010;Modified: archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml?rev=1491572&amp;r1=1491571&amp;r2=1491572&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml (original)&#010;+++ archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/pom.xml Mon Jun 10 19:31:01&#010;2013&#010;@@ -217,7 +217,26 @@&#010;               org.apache.archiva.metadata.repository.cassandra;version=${project.version};-split-package:=merge-first&#010;             &lt;/Export-Package&gt;&#010;             &lt;Import-Package&gt;&#010;-&#010;+                javax.annotation,&#010;+                javax.inject,&#010;+                javax.persistence,&#010;+                com.google.common.base,&#010;+                com.google.common.collect,&#010;+                com.netflix.astyanax,&#010;+                com.netflix.astyanax.connectionpool,&#010;+                com.netflix.astyanax.connectionpool.exceptions,&#010;+                com.netflix.astyanax.connectionpool.impl,&#010;+                com.netflix.astyanax.entitystore,&#010;+                com.netflix.astyanax.impl,&#010;+                com.netflix.astyanax.thrift,&#010;+                net.sf.beanlib.provider.replicator,&#010;+                org.apache.archiva.metadata.model;version=${project.version},&#010;+                org.apache.archiva.metadata.repository;version=${project.version},&#010;+                org.apache.archiva.configuration,&#010;+                org.apache.commons.lang;version="[2.4,3)",&#010;+                org.slf4j;resolution:=optional,&#010;+                org.springframework.context,&#010;+                org.springframework.stereotype&#010;             &lt;/Import-Package&gt;&#010;           &lt;/instructions&gt;&#010;         &lt;/configuration&gt;&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491416 - /archiva/trunk/archiva-modules/plugins/pom.xml</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130610111717.8A2CE2388900@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130610111717-8A2CE2388900@eris-apache-org%3e</id>
<updated>2013-06-10T11:17:17Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Mon Jun 10 11:17:17 2013&#010;New Revision: 1491416&#010;&#010;URL: http://svn.apache.org/r1491416&#010;Log:&#010;enable metadata-store-cassandra module&#010;&#010;Modified:&#010;    archiva/trunk/archiva-modules/plugins/pom.xml&#010;&#010;Modified: archiva/trunk/archiva-modules/plugins/pom.xml&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/pom.xml?rev=1491416&amp;r1=1491415&amp;r2=1491416&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/plugins/pom.xml (original)&#010;+++ archiva/trunk/archiva-modules/plugins/pom.xml Mon Jun 10 11:17:17 2013&#010;@@ -39,5 +39,6 @@&#010;     &lt;module&gt;stage-repository-merge&lt;/module&gt;&#010;     &lt;module&gt;generic-metadata-support&lt;/module&gt;&#010;     &lt;module&gt;metadata-store-jcr&lt;/module&gt;&#010;+    &lt;module&gt;metadata-store-cassandra&lt;/module&gt;&#010;   &lt;/modules&gt;&#010; &lt;/project&gt;&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491410 - in /archiva: sandbox/trunk/metadata-store-cassandra/ trunk/archiva-modules/plugins/metadata-store-cassandra/</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130610105920.5593A2388A2C@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130610105920-5593A2388A2C@eris-apache-org%3e</id>
<updated>2013-06-10T10:59:20Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Mon Jun 10 10:59:20 2013&#010;New Revision: 1491410&#010;&#010;URL: http://svn.apache.org/r1491410&#010;Log:&#010;all tests pass so move out metadata-store-cassandra from sandbox&#010;&#010;&#010;Added:&#010;    archiva/trunk/archiva-modules/plugins/metadata-store-cassandra/&#010;      - copied from r1491408, archiva/sandbox/trunk/metadata-store-cassandra/&#010;Removed:&#010;    archiva/sandbox/trunk/metadata-store-cassandra/&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491405 - /archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130610104425.E09882388B71@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130610104425-E09882388B71@eris-apache-org%3e</id>
<updated>2013-06-10T10:44:25Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Mon Jun 10 10:44:25 2013&#010;New Revision: 1491405&#010;&#010;URL: http://svn.apache.org/r1491405&#010;Log:&#010;cassandra host from system property&#010;&#010;Modified:&#010;    archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java&#010;&#010;Modified: archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java&#010;URL: http://svn.apache.org/viewvc/archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java?rev=1491405&amp;r1=1491404&amp;r2=1491405&amp;view=diff&#010;==============================================================================&#010;--- archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java&#010;(original)&#010;+++ archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java&#010;Mon Jun 10 10:44:25 2013&#010;@@ -37,6 +37,7 @@ import javax.inject.Inject;&#010; &#010; /**&#010;  * FIXME make all configuration not hardcoded :-)&#010;+ *&#010;  * @author Olivier Lamy&#010;  */&#010; @Service("archivaEntityManagerFactory#cassandra")&#010;@@ -60,6 +61,7 @@ public class DefaultCassandraEntityManag&#010;     public void initialize()&#010;         throws ConnectionException&#010;     {&#010;+        String cassandraHost = System.getProperty( "cassandraHost", "localhost" );&#010;         String cassandraPort = System.getProperty( "cassandraPort" );&#010;         keyspaceContext = new AstyanaxContext.Builder().forCluster( CLUSTER_NAME ).forKeyspace(&#010;             KEYSPACE_NAME ).withAstyanaxConfiguration(&#010;@@ -67,8 +69,8 @@ public class DefaultCassandraEntityManag&#010;                 ConnectionPoolType.TOKEN_AWARE ) ).withConnectionPoolConfiguration(&#010;             new ConnectionPoolConfigurationImpl( CLUSTER_NAME + "_" + KEYSPACE_NAME ).setSocketTimeout(&#010;                 30000 ).setMaxTimeoutWhenExhausted( 2000 ).setMaxConnsPerHost( 20 ).setInitConnsPerHost(&#010;10 ).setSeeds(&#010;-                "localhost:"+ cassandraPort ) ).withConnectionPoolMonitor( new CountingConnectionPoolMonitor()&#010;).buildKeyspace(&#010;-            ThriftFamilyFactory.getInstance() );&#010;+                cassandraHost + ":" + cassandraPort ) ).withConnectionPoolMonitor(&#010;+            new CountingConnectionPoolMonitor() ).buildKeyspace( ThriftFamilyFactory.getInstance()&#010;);&#010; &#010;         keyspaceContext.start();&#010; &#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491404 - in /archiva/sandbox/trunk/metadata-store-cassandra: pom.xml src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130610104406.E9EDA2388A2C@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130610104406-E9EDA2388A2C@eris-apache-org%3e</id>
<updated>2013-06-10T10:44:06Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Mon Jun 10 10:44:06 2013&#010;New Revision: 1491404&#010;&#010;URL: http://svn.apache.org/r1491404&#010;Log:&#010;use dynamic port for cassandra testing&#010;&#010;Modified:&#010;    archiva/sandbox/trunk/metadata-store-cassandra/pom.xml&#010;    archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java&#010;&#010;Modified: archiva/sandbox/trunk/metadata-store-cassandra/pom.xml&#010;URL: http://svn.apache.org/viewvc/archiva/sandbox/trunk/metadata-store-cassandra/pom.xml?rev=1491404&amp;r1=1491403&amp;r2=1491404&amp;view=diff&#010;==============================================================================&#010;--- archiva/sandbox/trunk/metadata-store-cassandra/pom.xml (original)&#010;+++ archiva/sandbox/trunk/metadata-store-cassandra/pom.xml Mon Jun 10 10:44:06 2013&#010;@@ -222,6 +222,24 @@&#010;           &lt;/instructions&gt;&#010;         &lt;/configuration&gt;&#010;       &lt;/plugin&gt;&#010;+      &lt;plugin&gt;&#010;+        &lt;groupId&gt;org.codehaus.mojo&lt;/groupId&gt;&#010;+        &lt;artifactId&gt;build-helper-maven-plugin&lt;/artifactId&gt;&#010;+        &lt;executions&gt;&#010;+          &lt;execution&gt;&#010;+            &lt;id&gt;reserve-ports&lt;/id&gt;&#010;+            &lt;phase&gt;process-test-resources&lt;/phase&gt;&#010;+            &lt;goals&gt;&#010;+              &lt;goal&gt;reserve-network-port&lt;/goal&gt;&#010;+            &lt;/goals&gt;&#010;+            &lt;configuration&gt;&#010;+              &lt;portNames&gt;&#010;+                &lt;portName&gt;cassandraPort&lt;/portName&gt;&#010;+              &lt;/portNames&gt;&#010;+            &lt;/configuration&gt;&#010;+          &lt;/execution&gt;&#010;+        &lt;/executions&gt;&#010;+      &lt;/plugin&gt;&#010;       &lt;!-- TODO use dynamic port --&gt;&#010; &#010;       &lt;plugin&gt;&#010;@@ -235,6 +253,9 @@&#010;             &lt;goals&gt;&#010;               &lt;goal&gt;start&lt;/goal&gt;&#010;             &lt;/goals&gt;&#010;+            &lt;configuration&gt;&#010;+              &lt;rpcPort&gt;${cassandraPort}&lt;/rpcPort&gt;&#010;+            &lt;/configuration&gt;&#010;           &lt;/execution&gt;&#010;           &lt;execution&gt;&#010;             &lt;id&gt;stop-cassandra&lt;/id&gt;&#010;@@ -253,6 +274,19 @@&#010;         &lt;/dependencies&gt;&#010;       &lt;/plugin&gt;&#010;     &lt;/plugins&gt;&#010;+    &lt;pluginManagement&gt;&#010;+      &lt;plugins&gt;&#010;+        &lt;plugin&gt;&#010;+          &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt;&#010;+          &lt;artifactId&gt;maven-surefire-plugin&lt;/artifactId&gt;&#010;+          &lt;configuration&gt;&#010;+            &lt;systemPropertyVariables&gt;&#010;+              &lt;cassandraPort&gt;${cassandraPort}&lt;/cassandraPort&gt;&#010;+            &lt;/systemPropertyVariables&gt;&#010;+          &lt;/configuration&gt;&#010;+        &lt;/plugin&gt;&#010;+      &lt;/plugins&gt;&#010;+    &lt;/pluginManagement&gt;&#010;   &lt;/build&gt;&#010; &#010;   &lt;repositories&gt;&#010;&#010;Modified: archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java&#010;URL: http://svn.apache.org/viewvc/archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java?rev=1491404&amp;r1=1491403&amp;r2=1491404&amp;view=diff&#010;==============================================================================&#010;--- archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java&#010;(original)&#010;+++ archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/DefaultCassandraEntityManagerFactory.java&#010;Mon Jun 10 10:44:06 2013&#010;@@ -60,14 +60,14 @@ public class DefaultCassandraEntityManag&#010;     public void initialize()&#010;         throws ConnectionException&#010;     {&#010;-&#010;+        String cassandraPort = System.getProperty( "cassandraPort" );&#010;         keyspaceContext = new AstyanaxContext.Builder().forCluster( CLUSTER_NAME ).forKeyspace(&#010;             KEYSPACE_NAME ).withAstyanaxConfiguration(&#010;             new AstyanaxConfigurationImpl().setDiscoveryType( NodeDiscoveryType.RING_DESCRIBE&#010;).setConnectionPoolType(&#010;                 ConnectionPoolType.TOKEN_AWARE ) ).withConnectionPoolConfiguration(&#010;             new ConnectionPoolConfigurationImpl( CLUSTER_NAME + "_" + KEYSPACE_NAME ).setSocketTimeout(&#010;                 30000 ).setMaxTimeoutWhenExhausted( 2000 ).setMaxConnsPerHost( 20 ).setInitConnsPerHost(&#010;10 ).setSeeds(&#010;-                "localhost:9160" ) ).withConnectionPoolMonitor( new CountingConnectionPoolMonitor()&#010;).buildKeyspace(&#010;+                "localhost:"+ cassandraPort ) ).withConnectionPoolMonitor( new CountingConnectionPoolMonitor()&#010;).buildKeyspace(&#010;             ThriftFamilyFactory.getInstance() );&#010; &#010;         keyspaceContext.start();&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491403 - in /archiva/sandbox/trunk/metadata-store-cassandra/src/main/resources/META-INF: persistence.xml spring-context.xml</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130610104346.3CEFD2388ABA@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130610104346-3CEFD2388ABA@eris-apache-org%3e</id>
<updated>2013-06-10T10:43:46Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Mon Jun 10 10:43:45 2013&#010;New Revision: 1491403&#010;&#010;URL: http://svn.apache.org/r1491403&#010;Log:&#010;remove non needed file&#010;&#010;Removed:&#010;    archiva/sandbox/trunk/metadata-store-cassandra/src/main/resources/META-INF/persistence.xml&#010;Modified:&#010;    archiva/sandbox/trunk/metadata-store-cassandra/src/main/resources/META-INF/spring-context.xml&#010;&#010;Modified: archiva/sandbox/trunk/metadata-store-cassandra/src/main/resources/META-INF/spring-context.xml&#010;URL: http://svn.apache.org/viewvc/archiva/sandbox/trunk/metadata-store-cassandra/src/main/resources/META-INF/spring-context.xml?rev=1491403&amp;r1=1491402&amp;r2=1491403&amp;view=diff&#010;==============================================================================&#010;--- archiva/sandbox/trunk/metadata-store-cassandra/src/main/resources/META-INF/spring-context.xml&#010;(original)&#010;+++ archiva/sandbox/trunk/metadata-store-cassandra/src/main/resources/META-INF/spring-context.xml&#010;Mon Jun 10 10:43:45 2013&#010;@@ -30,6 +30,4 @@&#010;   &lt;context:annotation-config/&gt;&#010;   &lt;context:component-scan base-package="org.apache.archiva.metadata.repository.cassandra"/&gt;&#010; &#010;-&#010;-&#010; &lt;/beans&gt;&#010;\ No newline at end of file&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491402 - /archiva/sandbox/trunk/metadata-store-cassandra/pom.xml</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130610104331.5FFCE2388A2C@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130610104331-5FFCE2388A2C@eris-apache-org%3e</id>
<updated>2013-06-10T10:43:31Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Mon Jun 10 10:43:31 2013&#010;New Revision: 1491402&#010;&#010;URL: http://svn.apache.org/r1491402&#010;Log:&#010;move cassandra version to a property&#010;&#010;Modified:&#010;    archiva/sandbox/trunk/metadata-store-cassandra/pom.xml&#010;&#010;Modified: archiva/sandbox/trunk/metadata-store-cassandra/pom.xml&#010;URL: http://svn.apache.org/viewvc/archiva/sandbox/trunk/metadata-store-cassandra/pom.xml?rev=1491402&amp;r1=1491401&amp;r2=1491402&amp;view=diff&#010;==============================================================================&#010;--- archiva/sandbox/trunk/metadata-store-cassandra/pom.xml (original)&#010;+++ archiva/sandbox/trunk/metadata-store-cassandra/pom.xml Mon Jun 10 10:43:31 2013&#010;@@ -30,6 +30,10 @@&#010;   &lt;packaging&gt;bundle&lt;/packaging&gt;&#010;   &lt;name&gt;Archiva Core Plugins :: Cassandra JPA Storage for Metadata&lt;/name&gt;&#010; &#010;+  &lt;properties&gt;&#010;+    &lt;cassandraVersion&gt;1.2.5&lt;/cassandraVersion&gt;&#010;+  &lt;/properties&gt;&#010;+&#010;   &lt;dependencies&gt;&#010;     &lt;dependency&gt;&#010;       &lt;groupId&gt;commons-lang&lt;/groupId&gt;&#010;@@ -135,7 +139,7 @@&#010;     &lt;dependency&gt;&#010;       &lt;groupId&gt;org.apache.cassandra&lt;/groupId&gt;&#010;       &lt;artifactId&gt;cassandra-all&lt;/artifactId&gt;&#010;-      &lt;version&gt;1.2.5&lt;/version&gt;&#010;+      &lt;version&gt;${cassandraVersion}&lt;/version&gt;&#010;       &lt;exclusions&gt;&#010;         &lt;exclusion&gt;&#010;           &lt;groupId&gt;log4j&lt;/groupId&gt;&#010;@@ -240,6 +244,13 @@&#010;             &lt;/goals&gt;&#010;           &lt;/execution&gt;&#010;         &lt;/executions&gt;&#010;+        &lt;dependencies&gt;&#010;+          &lt;dependency&gt;&#010;+            &lt;groupId&gt;org.apache.cassandra&lt;/groupId&gt;&#010;+            &lt;artifactId&gt;cassandra-all&lt;/artifactId&gt;&#010;+            &lt;version&gt;${cassandraVersion}&lt;/version&gt;&#010;+          &lt;/dependency&gt;&#010;+        &lt;/dependencies&gt;&#010;       &lt;/plugin&gt;&#010;     &lt;/plugins&gt;&#010;   &lt;/build&gt;&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491401 - /archiva/sandbox/trunk/metadata-store-cassandra/pom.xml</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130610104320.5719E23888E7@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130610104320-5719E23888E7@eris-apache-org%3e</id>
<updated>2013-06-10T10:43:20Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Mon Jun 10 10:43:19 2013&#010;New Revision: 1491401&#010;&#010;URL: http://svn.apache.org/r1491401&#010;Log:&#010;fix pom&#010;&#010;Modified:&#010;    archiva/sandbox/trunk/metadata-store-cassandra/pom.xml&#010;&#010;Modified: archiva/sandbox/trunk/metadata-store-cassandra/pom.xml&#010;URL: http://svn.apache.org/viewvc/archiva/sandbox/trunk/metadata-store-cassandra/pom.xml?rev=1491401&amp;r1=1491400&amp;r2=1491401&amp;view=diff&#010;==============================================================================&#010;--- archiva/sandbox/trunk/metadata-store-cassandra/pom.xml (original)&#010;+++ archiva/sandbox/trunk/metadata-store-cassandra/pom.xml Mon Jun 10 10:43:19 2013&#010;@@ -77,33 +77,6 @@&#010;       &lt;/exclusions&gt;&#010;     &lt;/dependency&gt;&#010; &#010;-    &lt;!--&#010;-    &lt;dependency&gt;&#010;-      &lt;groupId&gt;com.impetus.client&lt;/groupId&gt;&#010;-      &lt;artifactId&gt;kundera-cassandra&lt;/artifactId&gt;&#010;-      &lt;version&gt;2.6-SNAPSHOT&lt;/version&gt;&#010;-      &lt;exclusions&gt;&#010;-        &lt;exclusion&gt;&#010;-          &lt;groupId&gt;log4j&lt;/groupId&gt;&#010;-          &lt;artifactId&gt;log4j&lt;/artifactId&gt;&#010;-        &lt;/exclusion&gt;&#010;-        &lt;exclusion&gt;&#010;-          &lt;groupId&gt;javax.transaction&lt;/groupId&gt;&#010;-          &lt;artifactId&gt;jta&lt;/artifactId&gt;&#010;-        &lt;/exclusion&gt;&#010;-        &lt;exclusion&gt;&#010;-          &lt;groupId&gt;org.hibernate&lt;/groupId&gt;&#010;-          &lt;artifactId&gt;hibernate-core&lt;/artifactId&gt;&#010;-        &lt;/exclusion&gt;&#010;-&#010;-        &lt;exclusion&gt;&#010;-          &lt;groupId&gt;org.slf4j&lt;/groupId&gt;&#010;-          &lt;artifactId&gt;slf4j-log4j12&lt;/artifactId&gt;&#010;-        &lt;/exclusion&gt;&#010;-      &lt;/exclusions&gt;&#010;-    &lt;/dependency&gt;&#010;-    --&gt;&#010;-&#010;     &lt;dependency&gt;&#010;       &lt;groupId&gt;org.apache.geronimo.specs&lt;/groupId&gt;&#010;       &lt;artifactId&gt;geronimo-jpa_2.0_spec&lt;/artifactId&gt;&#010;@@ -219,11 +192,7 @@&#010;       &lt;artifactId&gt;jackson-mapper-asl&lt;/artifactId&gt;&#010;       &lt;scope&gt;test&lt;/scope&gt;&#010;     &lt;/dependency&gt;&#010;-    &lt;!--dependency&gt;&#010;-      &lt;groupId&gt;org.apache.archiva&lt;/groupId&gt;&#010;-      &lt;artifactId&gt;maven2-repository&lt;/artifactId&gt;&#010;-      &lt;scope&gt;test&lt;/scope&gt;&#010;-    &lt;/dependency--&gt;&#010;+&#010;   &lt;/dependencies&gt;&#010;   &lt;build&gt;&#010;     &lt;testResources&gt;&#010;@@ -241,7 +210,7 @@&#010;             &lt;Bundle-SymbolicName&gt;org.apache.archiva.metadata.repository.cassandra&lt;/Bundle-SymbolicName&gt;&#010;             &lt;Bundle-Version&gt;${project.version}&lt;/Bundle-Version&gt;&#010;             &lt;Export-Package&gt;&#010;-              org.apache.archiva.metadata.repository.jpa;version=${project.version};-split-package:=merge-first&#010;+              org.apache.archiva.metadata.repository.cassandra;version=${project.version};-split-package:=merge-first&#010;             &lt;/Export-Package&gt;&#010;             &lt;Import-Package&gt;&#010; &#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491363 - in /archiva/sandbox/trunk/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra: CassandraMetadataRepositoryTest.java RepositoriesNamespaceTest.java</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130610075859.053D423888E7@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130610075859-053D423888E7@eris-apache-org%3e</id>
<updated>2013-06-10T07:58:58Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Mon Jun 10 07:58:58 2013&#010;New Revision: 1491363&#010;&#010;URL: http://svn.apache.org/r1491363&#010;Log:&#010;fix unit test&#010;&#010;Modified:&#010;    archiva/sandbox/trunk/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepositoryTest.java&#010;    archiva/sandbox/trunk/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/RepositoriesNamespaceTest.java&#010;&#010;Modified: archiva/sandbox/trunk/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepositoryTest.java&#010;URL: http://svn.apache.org/viewvc/archiva/sandbox/trunk/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepositoryTest.java?rev=1491363&amp;r1=1491362&amp;r2=1491363&amp;view=diff&#010;==============================================================================&#010;--- archiva/sandbox/trunk/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepositoryTest.java&#010;(original)&#010;+++ archiva/sandbox/trunk/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepositoryTest.java&#010;Mon Jun 10 07:58:58 2013&#010;@@ -70,7 +70,7 @@ public class CassandraMetadataRepository&#010;         this.cmr = new CassandraMetadataRepository( factories, null, cassandraEntityManagerFactory.getKeyspace()&#010;);&#010;         this.repository = this.cmr;&#010; &#010;-        //clearReposAndNamespace();&#010;+        clearReposAndNamespace();&#010;     }&#010; &#010; &#010;&#010;Modified: archiva/sandbox/trunk/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/RepositoriesNamespaceTest.java&#010;URL: http://svn.apache.org/viewvc/archiva/sandbox/trunk/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/RepositoriesNamespaceTest.java?rev=1491363&amp;r1=1491362&amp;r2=1491363&amp;view=diff&#010;==============================================================================&#010;--- archiva/sandbox/trunk/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/RepositoriesNamespaceTest.java&#010;(original)&#010;+++ archiva/sandbox/trunk/metadata-store-cassandra/src/test/java/org/apache/archiva/metadata/repository/cassandra/RepositoriesNamespaceTest.java&#010;Mon Jun 10 07:58:58 2013&#010;@@ -91,7 +91,7 @@ public class RepositoriesNamespaceTest&#010;             Assertions.assertThat( cmr.getRepositories() ).isNotEmpty().hasSize( 1 );&#010;             Assertions.assertThat( cmr.getNamespaces( "release" ) ).isNotEmpty().hasSize(&#010;1 );&#010; &#010;-            n = cmr.getNamespaceEntityManager().get( "org" + "-" + "release" );&#010;+            n = cmr.getNamespaceEntityManager().get( "release" + "-" + "org" );&#010; &#010;             Assertions.assertThat( n ).isNotNull();&#010;             Assertions.assertThat( n.getRepository() ).isNotNull();&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491360 - /archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/model/ProjectVersionMetadataModel.java</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130610074408.EDC3A2388A32@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130610074408-EDC3A2388A32@eris-apache-org%3e</id>
<updated>2013-06-10T07:44:08Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Mon Jun 10 07:44:08 2013&#010;New Revision: 1491360&#010;&#010;URL: http://svn.apache.org/r1491360&#010;Log:&#010;fix typo which fix test :-)&#010;&#010;Modified:&#010;    archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/model/ProjectVersionMetadataModel.java&#010;&#010;Modified: archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/model/ProjectVersionMetadataModel.java&#010;URL: http://svn.apache.org/viewvc/archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/model/ProjectVersionMetadataModel.java?rev=1491360&amp;r1=1491359&amp;r2=1491360&amp;view=diff&#010;==============================================================================&#010;--- archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/model/ProjectVersionMetadataModel.java&#010;(original)&#010;+++ archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/model/ProjectVersionMetadataModel.java&#010;Mon Jun 10 07:44:08 2013&#010;@@ -73,7 +73,7 @@ public class ProjectVersionMetadataModel&#010;     @Column(name = "scm")&#010;     private Scm scm;&#010; &#010;-    @Column(name = "issueManagement")&#010;+    @Column(name = "ciManagement")&#010;     private CiManagement ciManagement;&#010; &#010;     // FIXME store those values in a separate table&#010;@@ -240,6 +240,7 @@ public class ProjectVersionMetadataModel&#010;         this.dependencies = dependencies;&#010;     }&#010; &#010;+&#010;     @Override&#010;     public String toString()&#010;     {&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491359 - in /archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra: CassandraMetadataRepository.java model/ProjectVersionMetadataModel.java</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130610074340.3E00223888D2@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130610074340-3E00223888D2@eris-apache-org%3e</id>
<updated>2013-06-10T07:43:40Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Mon Jun 10 07:43:39 2013&#010;New Revision: 1491359&#010;&#010;URL: http://svn.apache.org/r1491359&#010;Log:&#010;fix collection for ProjectVersionMetadataModel&#010;&#010;Modified:&#010;    archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java&#010;    archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/model/ProjectVersionMetadataModel.java&#010;&#010;Modified: archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java&#010;URL: http://svn.apache.org/viewvc/archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java?rev=1491359&amp;r1=1491358&amp;r2=1491359&amp;view=diff&#010;==============================================================================&#010;--- archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java&#010;(original)&#010;+++ archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java&#010;Mon Jun 10 07:43:39 2013&#010;@@ -829,8 +829,9 @@ public class CassandraMetadataRepository&#010;             projectVersionMetadataModel.setProjectId( projectId );&#010;             projectVersionMetadataModel.setId( projectVersion );&#010;             projectVersionMetadataModel.setNamespace( namespace );&#010;+&#010;             projectVersionMetadataModelEntityManager.put( projectVersionMetadataModel );&#010;-            // FIXME collections  ???&#010;+&#010;         }&#010; &#010;         // now facets&#010;@@ -967,7 +968,11 @@ public class CassandraMetadataRepository&#010;         projectVersionMetadataModel.setIssueManagement( versionMetadata.getIssueManagement()&#010;);&#010;         projectVersionMetadataModel.setOrganization( versionMetadata.getOrganization() );&#010;         projectVersionMetadataModel.setScm( versionMetadata.getScm() );&#010;-        // FIXME collections !!&#010;+&#010;+        projectVersionMetadataModel.setMailingLists( versionMetadata.getMailingLists() );&#010;+        projectVersionMetadataModel.setDependencies( versionMetadata.getDependencies() );&#010;+        projectVersionMetadataModel.setLicenses( versionMetadata.getLicenses() );&#010;+&#010; &#010;         try&#010;         {&#010;&#010;Modified: archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/model/ProjectVersionMetadataModel.java&#010;URL: http://svn.apache.org/viewvc/archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/model/ProjectVersionMetadataModel.java?rev=1491359&amp;r1=1491358&amp;r2=1491359&amp;view=diff&#010;==============================================================================&#010;--- archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/model/ProjectVersionMetadataModel.java&#010;(original)&#010;+++ archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/model/ProjectVersionMetadataModel.java&#010;Mon Jun 10 07:43:39 2013&#010;@@ -20,13 +20,18 @@ package org.apache.archiva.metadata.repo&#010;  */&#010; &#010; import org.apache.archiva.metadata.model.CiManagement;&#010;+import org.apache.archiva.metadata.model.Dependency;&#010; import org.apache.archiva.metadata.model.IssueManagement;&#010;+import org.apache.archiva.metadata.model.License;&#010;+import org.apache.archiva.metadata.model.MailingList;&#010; import org.apache.archiva.metadata.model.Organization;&#010; import org.apache.archiva.metadata.model.Scm;&#010; &#010; import javax.persistence.Column;&#010; import javax.persistence.Entity;&#010; import javax.persistence.Id;&#010;+import java.util.ArrayList;&#010;+import java.util.List;&#010; &#010; /**&#010;  * @author Olivier Lamy&#010;@@ -72,11 +77,14 @@ public class ProjectVersionMetadataModel&#010;     private CiManagement ciManagement;&#010; &#010;     // FIXME store those values in a separate table&#010;-    //private List&lt;License&gt; licenses = new ArrayList&lt;License&gt;();&#010;+    @Column(name = "licenses")&#010;+    private List&lt;License&gt; licenses = new ArrayList&lt;License&gt;();&#010; &#010;-    //private List&lt;MailingList&gt; mailingLists = new ArrayList&lt;MailingList&gt;();&#010;+    @Column(name = "mailingLists")&#010;+    private List&lt;MailingList&gt; mailingLists = new ArrayList&lt;MailingList&gt;();&#010; &#010;-    //private List&lt;Dependency&gt; dependencies = new ArrayList&lt;Dependency&gt;();&#010;+    @Column(name = "dependencies")&#010;+    private List&lt;Dependency&gt; dependencies = new ArrayList&lt;Dependency&gt;();&#010; &#010;     @Column(name = "incomplete")&#010;     private boolean incomplete;&#010;@@ -202,6 +210,36 @@ public class ProjectVersionMetadataModel&#010;         this.namespace = namespace;&#010;     }&#010; &#010;+    public List&lt;License&gt; getLicenses()&#010;+    {&#010;+        return licenses;&#010;+    }&#010;+&#010;+    public void setLicenses( List&lt;License&gt; licenses )&#010;+    {&#010;+        this.licenses = licenses;&#010;+    }&#010;+&#010;+    public List&lt;MailingList&gt; getMailingLists()&#010;+    {&#010;+        return mailingLists;&#010;+    }&#010;+&#010;+    public void setMailingLists( List&lt;MailingList&gt; mailingLists )&#010;+    {&#010;+        this.mailingLists = mailingLists;&#010;+    }&#010;+&#010;+    public List&lt;Dependency&gt; getDependencies()&#010;+    {&#010;+        return dependencies;&#010;+    }&#010;+&#010;+    public void setDependencies( List&lt;Dependency&gt; dependencies )&#010;+    {&#010;+        this.dependencies = dependencies;&#010;+    }&#010;+&#010;     @Override&#010;     public String toString()&#010;     {&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491357 - in /archiva/trunk/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model: CiManagement.java IssueManagement.java Organization.java Scm.java</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130610074014.A0C2823888D2@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130610074014-A0C2823888D2@eris-apache-org%3e</id>
<updated>2013-06-10T07:40:14Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Mon Jun 10 07:40:14 2013&#010;New Revision: 1491357&#010;&#010;URL: http://svn.apache.org/r1491357&#010;Log:&#010;those beans are not entity so remove annotation&#010;&#010;Modified:&#010;    archiva/trunk/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/CiManagement.java&#010;    archiva/trunk/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/IssueManagement.java&#010;    archiva/trunk/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/Organization.java&#010;    archiva/trunk/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/Scm.java&#010;&#010;Modified: archiva/trunk/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/CiManagement.java&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/CiManagement.java?rev=1491357&amp;r1=1491356&amp;r2=1491357&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/CiManagement.java&#010;(original)&#010;+++ archiva/trunk/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/CiManagement.java&#010;Mon Jun 10 07:40:14 2013&#010;@@ -29,7 +29,6 @@ import java.io.Serializable;&#010;  * @todo considering moving this to a facet - avoid referring to it externally&#010;  */&#010; @XmlRootElement(name = "ciManagement")&#010;-@Entity&#010; public class CiManagement&#010;     implements Serializable&#010; {&#010;&#010;Modified: archiva/trunk/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/IssueManagement.java&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/IssueManagement.java?rev=1491357&amp;r1=1491356&amp;r2=1491357&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/IssueManagement.java&#010;(original)&#010;+++ archiva/trunk/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/IssueManagement.java&#010;Mon Jun 10 07:40:14 2013&#010;@@ -29,7 +29,6 @@ import java.io.Serializable;&#010;  * @todo considering moving this to a facet - avoid referring to it externally&#010;  */&#010; @XmlRootElement(name = "issueManagement")&#010;-@Entity&#010; public class IssueManagement&#010;     implements Serializable&#010; {&#010;@@ -62,4 +61,5 @@ public class IssueManagement&#010;     {&#010;         this.system = system;&#010;     }&#010;+&#010; }&#010;&#010;Modified: archiva/trunk/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/Organization.java&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/Organization.java?rev=1491357&amp;r1=1491356&amp;r2=1491357&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/Organization.java&#010;(original)&#010;+++ archiva/trunk/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/Organization.java&#010;Mon Jun 10 07:40:14 2013&#010;@@ -24,7 +24,6 @@ import javax.xml.bind.annotation.XmlRoot&#010; import java.io.Serializable;&#010; &#010; @XmlRootElement(name = "organization")&#010;-@Entity&#010; public class Organization&#010;     implements Serializable&#010; {&#010;&#010;Modified: archiva/trunk/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/Scm.java&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/Scm.java?rev=1491357&amp;r1=1491356&amp;r2=1491357&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/Scm.java&#010;(original)&#010;+++ archiva/trunk/archiva-modules/metadata/metadata-model/src/main/java/org/apache/archiva/metadata/model/Scm.java&#010;Mon Jun 10 07:40:14 2013&#010;@@ -24,7 +24,6 @@ import javax.xml.bind.annotation.XmlRoot&#010; import java.io.Serializable;&#010; &#010; @XmlRootElement(name = "scm")&#010;-@Entity&#010; public class Scm&#010;     implements Serializable&#010; {&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491212 - /archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130609130724.7D5AF23888FE@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130609130724-7D5AF23888FE@eris-apache-org%3e</id>
<updated>2013-06-09T13:07:24Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Sun Jun  9 13:07:24 2013&#010;New Revision: 1491212&#010;&#010;URL: http://svn.apache.org/r1491212&#010;Log:&#010;use fest assert to prevent issue with different collection impl&#010;&#010;Modified:&#010;    archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java&#010;&#010;Modified: archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java?rev=1491212&amp;r1=1491211&amp;r2=1491212&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java&#010;(original)&#010;+++ archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java&#010;Sun Jun  9 13:07:24 2013&#010;@@ -271,8 +271,8 @@ public abstract class AbstractMetadataRe&#010; &#010;         MailingList mailingList = new MailingList();&#010;         mailingList.setName( "Foo List" );&#010;-        mailingList.setOtherArchives( Collections.singletonList( "other archive" ) );&#010;-        metadata.setMailingLists( Collections.singletonList( mailingList ) );&#010;+        mailingList.setOtherArchives( Arrays.asList( "other archive" ) );&#010;+        metadata.setMailingLists(  Arrays.asList( mailingList ) );&#010; &#010;         Scm scm = new Scm();&#010;         scm.setConnection( "connection" );&#010;@@ -322,7 +322,8 @@ public abstract class AbstractMetadataRe&#010;         assertEquals( 1, metadata.getMailingLists().size() );&#010;         mailingList = metadata.getMailingLists().get( 0 );&#010;         assertEquals( "Foo List", mailingList.getName() );&#010;-        assertEquals( Collections.singletonList( "other archive" ), mailingList.getOtherArchives()&#010;);&#010;+        //assertEquals( Collections.singletonList( "other archive" ), mailingList.getOtherArchives()&#010;);&#010;+        Assertions.assertThat( mailingList.getOtherArchives() ).isNotNull().isNotEmpty().hasSize(&#010;1 ).contains( "other archive" );&#010; &#010;         assertEquals( "connection", metadata.getScm().getConnection() );&#010;         assertEquals( "dev conn", metadata.getScm().getDeveloperConnection() );&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491204 - /archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130609124428.A257323889FA@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130609124428-A257323889FA@eris-apache-org%3e</id>
<updated>2013-06-09T12:44:28Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Sun Jun  9 12:44:28 2013&#010;New Revision: 1491204&#010;&#010;URL: http://svn.apache.org/r1491204&#010;Log:&#010;use fest assert to prevent issue with different collection impl&#010;&#010;Modified:&#010;    archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java&#010;&#010;Modified: archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java?rev=1491204&amp;r1=1491203&amp;r2=1491204&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java&#010;(original)&#010;+++ archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java&#010;Sun Jun  9 12:44:28 2013&#010;@@ -240,15 +240,23 @@ public abstract class AbstractMetadataRe&#010;         MailingList mailingList = new MailingList();&#010;         mailingList.setName( "Foo List" );&#010;         mailingList.setOtherArchives( Collections.&lt;String&gt;emptyList() );&#010;-        metadata.setMailingLists( Collections.singletonList( mailingList ) );&#010;+        metadata.setMailingLists( Arrays.asList( mailingList ) );&#010;         repository.updateProjectVersion( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT, metadata&#010;);&#010; &#010;         metadata = repository.getProjectVersion( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT,&#010;TEST_PROJECT_VERSION );&#010;         assertEquals( TEST_PROJECT_VERSION, metadata.getId() );&#010;-        assertEquals( 1, metadata.getMailingLists().size() );&#010;+&#010;+        List&lt;MailingList&gt; mailingLists = metadata.getMailingLists();&#010;+&#010;+        Assertions.assertThat( mailingLists ).isNotNull().isNotEmpty().hasSize( 1 );&#010;+&#010;+        //assertEquals( 1, metadata.getMailingLists().size() );&#010;         mailingList = metadata.getMailingLists().get( 0 );&#010;         assertEquals( "Foo List", mailingList.getName() );&#010;-        assertEquals( Collections.&lt;String&gt;emptyList(), mailingList.getOtherArchives()&#010;);&#010;+&#010;+        List&lt;String&gt; others = mailingList.getOtherArchives();&#010;+        //assertEquals( Collections.&lt;String&gt;emptyList(), mailingList.getOtherArchives()&#010;);&#010;+        Assertions.assertThat( others ).isNotNull().isEmpty();&#010;     }&#010; &#010;     @Test&#010;@@ -540,7 +548,7 @@ public abstract class AbstractMetadataRe&#010; &#010;         testFacet = (TestMetadataFacet) metadata.getFacet( TEST_FACET_ID );&#010;         //assertFalse( testFacet.toProperties().containsKey( "deleteKey" ) );&#010;-        Map&lt;String,String&gt; props = testFacet.toProperties();&#010;+        Map&lt;String, String&gt; props = testFacet.toProperties();&#010;         Assertions.assertThat( props ).isNotNull().doesNotContainKey( "deleteKey" );&#010;     }&#010; &#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491199 - /archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130609122634.42EDB23888E7@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130609122634-42EDB23888E7@eris-apache-org%3e</id>
<updated>2013-06-09T12:26:34Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Sun Jun  9 12:26:33 2013&#010;New Revision: 1491199&#010;&#010;URL: http://svn.apache.org/r1491199&#010;Log:&#010;fix retrieve facets when searching artifact&#010;&#010;Modified:&#010;    archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java&#010;&#010;Modified: archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java&#010;URL: http://svn.apache.org/viewvc/archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java?rev=1491199&amp;r1=1491198&amp;r2=1491199&amp;view=diff&#010;==============================================================================&#010;--- archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java&#010;(original)&#010;+++ archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java&#010;Sun Jun  9 12:26:33 2013&#010;@@ -20,6 +20,8 @@ package org.apache.archiva.metadata.repo&#010;  */&#010; &#010; import com.google.common.base.Function;&#010;+import com.google.common.base.Predicate;&#010;+import com.google.common.collect.Iterables;&#010; import com.netflix.astyanax.Keyspace;&#010; import com.netflix.astyanax.connectionpool.exceptions.ConnectionException;&#010; import com.netflix.astyanax.connectionpool.exceptions.NotFoundException;&#010;@@ -54,6 +56,7 @@ import java.util.Collections;&#010; import java.util.Date;&#010; import java.util.HashMap;&#010; import java.util.HashSet;&#010;+import java.util.Iterator;&#010; import java.util.List;&#010; import java.util.Map;&#010; import java.util.Properties;&#010;@@ -1762,6 +1765,87 @@ public class CassandraMetadataRepository&#010;             artifactMetadatas.add( artifactMetadata );&#010;         }&#010; &#010;+        // retrieve facets&#010;+        final List&lt;MetadataFacetModel&gt; metadataFacetModels = new ArrayList&lt;MetadataFacetModel&gt;();&#010;+        metadataFacetModelEntityManager.visitAll( new Function&lt;MetadataFacetModel, Boolean&gt;()&#010;+        {&#010;+            @Override&#010;+            public Boolean apply( MetadataFacetModel metadataFacetModel )&#010;+            {&#010;+                if ( metadataFacetModel != null )&#010;+                {&#010;+                    if ( StringUtils.equals( repoId, metadataFacetModel.getArtifactMetadataModel().getRepositoryId()&#010;)&#010;+                        &amp;&amp; StringUtils.equals( namespace, metadataFacetModel.getArtifactMetadataModel().getNamespace()&#010;)&#010;+                        &amp;&amp; StringUtils.equals( projectId, metadataFacetModel.getArtifactMetadataModel().getProject()&#010;)&#010;+                        &amp;&amp; StringUtils.equals( projectVersion,&#010;+                                               metadataFacetModel.getArtifactMetadataModel().getProjectVersion()&#010;) )&#010;+                    {&#010;+                        metadataFacetModels.add( metadataFacetModel );&#010;+                    }&#010;+&#010;+                }&#010;+                return Boolean.TRUE;&#010;+            }&#010;+        } );&#010;+&#010;+        // rebuild MetadataFacet for artifacts&#010;+&#010;+        for ( final ArtifactMetadata artifactMetadata : artifactMetadatas )&#010;+        {&#010;+            Iterable&lt;MetadataFacetModel&gt; metadataFacetModelIterable =&#010;+                Iterables.filter( metadataFacetModels, new Predicate&lt;MetadataFacetModel&gt;()&#010;+                {&#010;+                    @Override&#010;+                    public boolean apply( MetadataFacetModel metadataFacetModel )&#010;+                    {&#010;+                        if ( metadataFacetModel != null )&#010;+                        {&#010;+                            return StringUtils.equals( artifactMetadata.getVersion(),&#010;+                                                       metadataFacetModel.getArtifactMetadataModel().getVersion()&#010;);&#010;+                        }&#010;+                        return false;&#010;+                    }&#010;+                } );&#010;+            Iterator&lt;MetadataFacetModel&gt; iterator = metadataFacetModelIterable.iterator();&#010;+            Map&lt;String, List&lt;MetadataFacetModel&gt;&gt; metadataFacetValuesPerFacetId&#010;=&#010;+                new HashMap&lt;String, List&lt;MetadataFacetModel&gt;&gt;();&#010;+            while ( iterator.hasNext() )&#010;+            {&#010;+                MetadataFacetModel metadataFacetModel = iterator.next();&#010;+                List&lt;MetadataFacetModel&gt; values = metadataFacetValuesPerFacetId.get(&#010;metadataFacetModel.getName() );&#010;+                if ( values == null )&#010;+                {&#010;+                    values = new ArrayList&lt;MetadataFacetModel&gt;();&#010;+                    metadataFacetValuesPerFacetId.put( metadataFacetModel.getFacetId(), values&#010;);&#010;+                }&#010;+                values.add( metadataFacetModel );&#010;+&#010;+            }&#010;+&#010;+            for ( Map.Entry&lt;String, List&lt;MetadataFacetModel&gt;&gt; entry : metadataFacetValuesPerFacetId.entrySet()&#010;)&#010;+            {&#010;+                MetadataFacetFactory metadataFacetFactory = metadataFacetFactories.get( entry.getKey()&#010;);&#010;+                if ( metadataFacetFactory != null )&#010;+                {&#010;+                    List&lt;MetadataFacetModel&gt; facetModels = entry.getValue();&#010;+                    if ( !facetModels.isEmpty() )&#010;+                    {&#010;+                        MetadataFacet metadataFacet =&#010;+                            metadataFacetFactory.createMetadataFacet( repoId, facetModels.get(&#010;0 ).getName() );&#010;+                        Map&lt;String, String&gt; props = new HashMap&lt;String, String&gt;(&#010;facetModels.size() );&#010;+                        for ( MetadataFacetModel metadataFacetModel : facetModels )&#010;+                        {&#010;+                            props.put( metadataFacetModel.getKey(), metadataFacetModel.getValue()&#010;);&#010;+                        }&#010;+                        metadataFacet.fromProperties( props );&#010;+                        artifactMetadata.addFacet( metadataFacet );&#010;+                    }&#010;+                }&#010;+            }&#010;+&#010;+&#010;+        }&#010;+&#010;         return artifactMetadatas;&#010;     }&#010; &#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491198 - /archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130609122546.1D30123889FA@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130609122546-1D30123889FA@eris-apache-org%3e</id>
<updated>2013-06-09T12:25:46Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Sun Jun  9 12:25:45 2013&#010;New Revision: 1491198&#010;&#010;URL: http://svn.apache.org/r1491198&#010;Log:&#010;fix storage of metadatafacet&#010;&#010;Modified:&#010;    archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java&#010;&#010;Modified: archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java&#010;URL: http://svn.apache.org/viewvc/archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java?rev=1491198&amp;r1=1491197&amp;r2=1491198&amp;view=diff&#010;==============================================================================&#010;--- archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java&#010;(original)&#010;+++ archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java&#010;Sun Jun  9 12:25:45 2013&#010;@@ -1130,7 +1130,7 @@ public class CassandraMetadataRepository&#010;                     metadataFacetModel.setId( key );&#010;                     metadataFacetModel.setKey( entry.getKey() );&#010;                     metadataFacetModel.setFacetId( metadataFacet.getFacetId() );&#010;-                    metadataFacetModel.setName( metadataFacetModel.getName() );&#010;+                    metadataFacetModel.setName( metadataFacet.getName() );&#010;                 }&#010;                 metadataFacetModel.setValue( entry.getValue() );&#010;                 try&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491197 - /archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130609122449.E9D2623888E7@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130609122449-E9D2623888E7@eris-apache-org%3e</id>
<updated>2013-06-09T12:24:49Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Sun Jun  9 12:24:49 2013&#010;New Revision: 1491197&#010;&#010;URL: http://svn.apache.org/r1491197&#010;Log:&#010;fix storage of metadatafacet&#010;&#010;Modified:&#010;    archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java&#010;&#010;Modified: archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java&#010;URL: http://svn.apache.org/viewvc/archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java?rev=1491197&amp;r1=1491196&amp;r2=1491197&amp;view=diff&#010;==============================================================================&#010;--- archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java&#010;(original)&#010;+++ archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java&#010;Sun Jun  9 12:24:49 2013&#010;@@ -1100,7 +1100,7 @@ public class CassandraMetadataRepository&#010;             metadataFacetModel.setArtifactMetadataModel( artifactMetadataModel );&#010;             metadataFacetModel.setId( key );&#010;             metadataFacetModel.setFacetId( metadataFacet.getFacetId() );&#010;-            metadataFacetModel.setName( metadataFacetModel.getName() );&#010;+            metadataFacetModel.setName( metadataFacet.getName() );&#010; &#010;             try&#010;             {&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491196 - /archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130609122356.F38F323888E7@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130609122356-F38F323888E7@eris-apache-org%3e</id>
<updated>2013-06-09T12:23:56Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Sun Jun  9 12:23:56 2013&#010;New Revision: 1491196&#010;&#010;URL: http://svn.apache.org/r1491196&#010;Log:&#010;fix storing MetadataFacet at repository level with empty values&#010;&#010;Modified:&#010;    archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java&#010;&#010;Modified: archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java&#010;URL: http://svn.apache.org/viewvc/archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java?rev=1491196&amp;r1=1491195&amp;r2=1491196&amp;view=diff&#010;==============================================================================&#010;--- archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java&#010;(original)&#010;+++ archiva/sandbox/trunk/metadata-store-cassandra/src/main/java/org/apache/archiva/metadata/repository/cassandra/CassandraMetadataRepository.java&#010;Sun Jun  9 12:23:56 2013&#010;@@ -1080,30 +1080,28 @@ public class CassandraMetadataRepository&#010;         throws MetadataRepositoryException&#010;     {&#010; &#010;-        if ( metadataFacet == null || metadataFacet.toProperties() == null || metadataFacet.toProperties().isEmpty()&#010;)&#010;+        if ( metadataFacet == null )&#010;         {&#010;             return;&#010;         }&#010;-        for ( Map.Entry&lt;String, String&gt; entry : metadataFacet.toProperties().entrySet()&#010;)&#010;-        {&#010; &#010;+        if ( metadataFacet.toProperties().isEmpty() )&#010;+        {&#010;             String key = new MetadataFacetModel.KeyBuilder().withRepositoryId( repositoryId&#010;).withFacetId(&#010;-                metadataFacet.getFacetId() ).withName( metadataFacet.getName() ).withKey(&#010;entry.getKey() ).build();&#010;-&#010;+                metadataFacet.getFacetId() ).withName( metadataFacet.getName() ).build();&#010;             MetadataFacetModel metadataFacetModel = metadataFacetModelEntityManager.get(&#010;key );&#010;             if ( metadataFacetModel == null )&#010;             {&#010;                 metadataFacetModel = new MetadataFacetModel();&#010;-                // we need to store the repositoryId&#010;-                ArtifactMetadataModel artifactMetadataModel = new ArtifactMetadataModel();&#010;-                artifactMetadataModel.setRepositoryId( repositoryId );&#010;-                metadataFacetModel.setArtifactMetadataModel( artifactMetadataModel );&#010;-                metadataFacetModel.setId( key );&#010;-                metadataFacetModel.setKey( entry.getKey() );&#010;-                metadataFacetModel.setFacetId( metadataFacet.getFacetId() );&#010;-                metadataFacetModel.setName( metadataFacetModel.getName() );&#010;             }&#010;-            metadataFacetModel.setValue( entry.getValue() );&#010;+            // we need to store the repositoryId&#010;+            ArtifactMetadataModel artifactMetadataModel = new ArtifactMetadataModel();&#010;+            artifactMetadataModel.setRepositoryId( repositoryId );&#010;+            metadataFacetModel.setArtifactMetadataModel( artifactMetadataModel );&#010;+            metadataFacetModel.setId( key );&#010;+            metadataFacetModel.setFacetId( metadataFacet.getFacetId() );&#010;+            metadataFacetModel.setName( metadataFacetModel.getName() );&#010;+&#010;             try&#010;             {&#010;                 metadataFacetModelEntityManager.put( metadataFacetModel );&#010;@@ -1112,7 +1110,39 @@ public class CassandraMetadataRepository&#010;             {&#010;                 throw new MetadataRepositoryException( e.getMessage(), e );&#010;             }&#010;+        }&#010;+        else&#010;+        {&#010;+            for ( Map.Entry&lt;String, String&gt; entry : metadataFacet.toProperties().entrySet()&#010;)&#010;+            {&#010;+&#010;+                String key = new MetadataFacetModel.KeyBuilder().withRepositoryId( repositoryId&#010;).withFacetId(&#010;+                    metadataFacet.getFacetId() ).withName( metadataFacet.getName() ).withKey(&#010;entry.getKey() ).build();&#010; &#010;+                MetadataFacetModel metadataFacetModel = metadataFacetModelEntityManager.get(&#010;key );&#010;+                if ( metadataFacetModel == null )&#010;+                {&#010;+                    metadataFacetModel = new MetadataFacetModel();&#010;+                    // we need to store the repositoryId&#010;+                    ArtifactMetadataModel artifactMetadataModel = new ArtifactMetadataModel();&#010;+                    artifactMetadataModel.setRepositoryId( repositoryId );&#010;+                    metadataFacetModel.setArtifactMetadataModel( artifactMetadataModel );&#010;+                    metadataFacetModel.setId( key );&#010;+                    metadataFacetModel.setKey( entry.getKey() );&#010;+                    metadataFacetModel.setFacetId( metadataFacet.getFacetId() );&#010;+                    metadataFacetModel.setName( metadataFacetModel.getName() );&#010;+                }&#010;+                metadataFacetModel.setValue( entry.getValue() );&#010;+                try&#010;+                {&#010;+                    metadataFacetModelEntityManager.put( metadataFacetModel );&#010;+                }&#010;+                catch ( PersistenceException e )&#010;+                {&#010;+                    throw new MetadataRepositoryException( e.getMessage(), e );&#010;+                }&#010;+&#010;+            }&#010;         }&#010;     }&#010; &#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491195 - /archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130609122230.9235823888E7@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130609122230-9235823888E7@eris-apache-org%3e</id>
<updated>2013-06-09T12:22:30Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Sun Jun  9 12:22:30 2013&#010;New Revision: 1491195&#010;&#010;URL: http://svn.apache.org/r1491195&#010;Log:&#010;use fest assert&#010;&#010;Modified:&#010;    archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java&#010;&#010;Modified: archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java?rev=1491195&amp;r1=1491194&amp;r2=1491195&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java&#010;(original)&#010;+++ archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java&#010;Sun Jun  9 12:22:30 2013&#010;@@ -511,9 +511,12 @@ public abstract class AbstractMetadataRe&#010; &#010;         Collection&lt;ArtifactMetadata&gt; artifacts =&#010;             repository.getArtifacts( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT, TEST_PROJECT_VERSION&#010;);&#010;-        assertEquals( 1, artifacts.size() );&#010;+        //assertEquals( 1, artifacts.size() );&#010;+        Assertions.assertThat( artifacts ).isNotNull().isNotEmpty().hasSize( 1 );&#010;         metadata = artifacts.iterator().next();&#010;-        assertEquals( Collections.singleton( TEST_FACET_ID ), metadata.getFacetIds() );&#010;+        //assertEquals( Collections.singleton( TEST_FACET_ID ), metadata.getFacetIds() );&#010;+        Collection&lt;String&gt; ids = metadata.getFacetIds();&#010;+        Assertions.assertThat( ids ).isNotNull().isNotEmpty().hasSize( 1 ).contains( TEST_FACET_ID&#010;);&#010; &#010;         TestMetadataFacet testFacet = (TestMetadataFacet) metadata.getFacet( TEST_FACET_ID&#010;);&#010;         Map&lt;String, String&gt; facetProperties = testFacet.toProperties();&#010;@@ -528,11 +531,17 @@ public abstract class AbstractMetadataRe&#010;         repository.updateArtifact( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT, TEST_PROJECT_VERSION,&#010;metadata );&#010; &#010;         artifacts = repository.getArtifacts( TEST_REPO_ID, TEST_NAMESPACE, TEST_PROJECT,&#010;TEST_PROJECT_VERSION );&#010;-        assertEquals( 1, artifacts.size() );&#010;+        //assertEquals( 1, artifacts.size() );&#010;+        Assertions.assertThat( artifacts ).isNotNull().isNotEmpty().hasSize( 1 );&#010;         metadata = artifacts.iterator().next();&#010;-        assertEquals( Collections.singleton( TEST_FACET_ID ), metadata.getFacetIds() );&#010;+        //assertEquals( Collections.singleton( TEST_FACET_ID ), metadata.getFacetIds() );&#010;+        ids = metadata.getFacetIds();&#010;+        Assertions.assertThat( ids ).isNotNull().isNotEmpty().hasSize( 1 ).contains( TEST_FACET_ID&#010;);&#010;+&#010;         testFacet = (TestMetadataFacet) metadata.getFacet( TEST_FACET_ID );&#010;-        assertFalse( testFacet.toProperties().containsKey( "deleteKey" ) );&#010;+        //assertFalse( testFacet.toProperties().containsKey( "deleteKey" ) );&#010;+        Map&lt;String,String&gt; props = testFacet.toProperties();&#010;+        Assertions.assertThat( props ).isNotNull().doesNotContainKey( "deleteKey" );&#010;     }&#010; &#010;     @Test&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491194 - /archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130609122134.EAAC823889FA@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130609122134-EAAC823889FA@eris-apache-org%3e</id>
<updated>2013-06-09T12:21:34Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Sun Jun  9 12:21:34 2013&#010;New Revision: 1491194&#010;&#010;URL: http://svn.apache.org/r1491194&#010;Log:&#010;to ease debugging&#010;&#010;Modified:&#010;    archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java&#010;&#010;Modified: archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java?rev=1491194&amp;r1=1491193&amp;r2=1491194&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java&#010;(original)&#010;+++ archiva/trunk/archiva-modules/metadata/metadata-repository-api/src/test/java/org/apache/archiva/metadata/repository/AbstractMetadataRepositoryTest.java&#010;Sun Jun  9 12:21:34 2013&#010;@@ -611,8 +611,9 @@ public abstract class AbstractMetadataRe&#010;     {&#010;         repository.addMetadataFacet( TEST_REPO_ID, new TestMetadataFacet( null ) );&#010; &#010;-        assertEquals( new TestMetadataFacet( TEST_METADATA_VALUE ),&#010;-                      repository.getMetadataFacet( TEST_REPO_ID, TEST_FACET_ID, TEST_NAME&#010;) );&#010;+        MetadataFacet metadataFacet = repository.getMetadataFacet( TEST_REPO_ID, TEST_FACET_ID,&#010;TEST_NAME );&#010;+&#010;+        assertEquals( new TestMetadataFacet( TEST_METADATA_VALUE ), metadataFacet );&#010;     }&#010; &#010;     @Test&#010;@@ -1009,7 +1010,7 @@ public abstract class AbstractMetadataRe&#010;     {&#010;         repository.updateNamespace( TEST_REPO_ID, "org.apache.maven.shared" );&#010; &#010;-        Collection&lt;String&gt; namespaces =  repository.getRootNamespaces( TEST_REPO_ID&#010;);&#010;+        Collection&lt;String&gt; namespaces = repository.getRootNamespaces( TEST_REPO_ID&#010;);&#010; &#010;         //assertEquals( Arrays.asList( "org" ), repository.getRootNamespaces( TEST_REPO_ID&#010;) );&#010;         Assertions.assertThat( namespaces ).isNotNull().isNotEmpty().hasSize( 1 ).contains(&#010;"org" );&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491144 - /archiva/trunk/pom.xml</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130609062221.BD798238889B@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130609062221-BD798238889B@eris-apache-org%3e</id>
<updated>2013-06-09T06:22:21Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Sun Jun  9 06:22:21 2013&#010;New Revision: 1491144&#010;&#010;URL: http://svn.apache.org/r1491144&#010;Log:&#010;last log4j2 beta7&#010;&#010;Modified:&#010;    archiva/trunk/pom.xml&#010;&#010;Modified: archiva/trunk/pom.xml&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/pom.xml?rev=1491144&amp;r1=1491143&amp;r2=1491144&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/pom.xml (original)&#010;+++ archiva/trunk/pom.xml Sun Jun  9 06:22:21 2013&#010;@@ -74,7 +74,7 @@&#010;     &lt;redback.spring-utils.version&gt;2.0&lt;/redback.spring-utils.version&gt;&#010;     &lt;redback.taskqueue.version&gt;2.0&lt;/redback.taskqueue.version&gt;&#010;     &lt;slf4j.version&gt;1.7.5&lt;/slf4j.version&gt;&#010;-    &lt;log4j.version&gt;2.0-beta6&lt;/log4j.version&gt;&#010;+    &lt;log4j.version&gt;2.0-beta7&lt;/log4j.version&gt;&#010; &#010;     &lt;spring.version&gt;3.2.3.RELEASE&lt;/spring.version&gt;&#010; &#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1491062 - /archiva/trunk/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/WebDriverBrowseTest.java</title>
<author><name>skygo@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130608211908.AB1DE238889B@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130608211908-AB1DE238889B@eris-apache-org%3e</id>
<updated>2013-06-08T21:19:08Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: skygo&#010;Date: Sat Jun  8 21:19:08 2013&#010;New Revision: 1491062&#010;&#010;URL: http://svn.apache.org/r1491062&#010;Log:&#010;more work on test // need to feed fake artifact for testing MRM1766 and others&#010;&#010;Added:&#010;    archiva/trunk/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/WebDriverBrowseTest.java&#010;      - copied, changed from r1490987, archiva/trunk/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/WebDriverTest.java&#010;&#010;Copied: archiva/trunk/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/WebDriverBrowseTest.java&#010;(from r1490987, archiva/trunk/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/WebDriverTest.java)&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/WebDriverBrowseTest.java?p2=archiva/trunk/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/WebDriverBrowseTest.java&amp;p1=archiva/trunk/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/WebDriverTest.java&amp;r1=1490987&amp;r2=1491062&amp;rev=1491062&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/WebDriverTest.java&#010;(original)&#010;+++ archiva/trunk/archiva-modules/archiva-web/archiva-webapp-test/src/test/java/org/apache/archiva/web/test/WebDriverBrowseTest.java&#010;Sat Jun  8 21:19:08 2013&#010;@@ -23,6 +23,7 @@ import org.apache.commons.lang3.StringUt&#010; import org.fluentlenium.adapter.FluentTest;&#010; import org.fluentlenium.core.domain.FluentList;&#010; import org.fluentlenium.core.domain.FluentWebElement;&#010;+import static org.fest.assertions.Assertions.assertThat;&#010; import org.junit.Test;&#010; import org.openqa.selenium.WebDriver;&#010; import org.openqa.selenium.WebElement;&#010;@@ -43,8 +44,8 @@ import org.junit.Before;&#010; /**&#010;  * @author Olivier Lamy&#010;  */&#010;-public class WebDriverTest&#010;-    extends FluentTest&#010;+public class WebDriverBrowseTest&#010;+        extends FluentTest&#010; {&#010; &#010;     @Override&#010;@@ -63,36 +64,66 @@ public class WebDriverTest&#010;         }&#010;         return super.takeScreenShot( fileName );&#010;     }&#010;-    &#010;+&#010;     @Before&#010;     public void init()&#010;     {&#010;         setSnapshotMode( Mode.TAKE_SNAPSHOT_ON_FAIL );&#010;         setSnapshotPath( new File( "target", "errorshtmlsnap" ).getAbsolutePath() );&#010;     }&#010;-    &#010;+&#010;     @Test&#010;     public void simpletest()&#010;-        throws Exception&#010;+            throws Exception&#010;     {&#010;-        &#010;+        Properties p = new Properties();&#010;+        p.load( this.getClass().getClassLoader().getResourceAsStream( "test.properties" )&#010;);&#010;+&#010;         Properties tomcatPortProperties = new Properties();&#010;         tomcatPortProperties.load(&#010;-            new FileInputStream( new File( System.getProperty( "tomcat.propertiesPortFilePath"&#010;) ) ) );&#010;+                new FileInputStream( new File( System.getProperty( "tomcat.propertiesPortFilePath"&#010;) ) ) );&#010; &#010;         int tomcatPort = Integer.parseInt( tomcatPortProperties.getProperty( "tomcat.maven.http.port"&#010;) );&#010; &#010;         goTo( "http://localhost:" + tomcatPort + "/archiva/index.html?request_lang=en" );&#010;-        &#010;+&#010;         // wait until topbar-menu-container is feeded&#010;-        await().atMost(5, TimeUnit.SECONDS).until("#topbar-menu").isPresent();&#010;-        &#010;+        await().atMost( 5, TimeUnit.SECONDS ).until( "#topbar-menu" ).isPresent();&#010;+&#010;         FluentList&lt;FluentWebElement&gt; elements = find( "#create-admin-link-a" );&#010; &#010;         if ( !elements.isEmpty() &amp;&amp; elements.get( 0 ).isDisplayed() )&#010;         {&#010;             WebElement webElement = elements.get( 0 ).getElement();&#010;             Assert.assertEquals( "Create Admin User", webElement.getText() );&#010;+&#010;+            webElement.click();&#010;+            await().atMost( 2, TimeUnit.SECONDS ).until( "#user-create" ).isPresent();&#010;+            assertThat( find( "#username" ).getValue().equals( "admin" ) );&#010;+            assertThat( find( "#password" ).getValue().isEmpty() );&#010;+            assertThat( find( "#confirmPassword" ).getValue().isEmpty() );&#010;+            assertThat( find( "#email" ).getValue().isEmpty() );&#010;+&#010;+            fill( "#fullname" ).with( p.getProperty( "ADMIN_FULLNAME" ) );&#010;+            fill( "#email" ).with( p.getProperty( "ADMIN_EMAIL" ) );&#010;+            fill( "#password" ).with( p.getProperty( "ADMIN_PASSWORD" ) );&#010;+            fill( "#confirmPassword" ).with( p.getProperty( "ADMIN_PASSWORD" ) );&#010;+            find( "#user-create-form-register-button" ).click();&#010;+&#010;+            await().atMost( 2, TimeUnit.SECONDS ).until( "#logout-link" ).isPresent();&#010;+&#010;+            FluentList&lt;FluentWebElement&gt; elementss = find( "#menu-find-browse-a" );&#010;+            WebElement webElsement = elementss.get( 0 ).getElement();&#010;+            webElsement.click();&#010;+            await().atMost( 2, TimeUnit.SECONDS ).until( "#main_browse_result" ).isPresent();&#010;+            // give me search page :( not  browse page&#010;+&#010;+            takeScreenShot( "search" );&#010;+&#010;+            goTo( "http://localhost:" + tomcatPort + "/archiva/index.html#browse?request_lang=en"&#010;);&#010;+            takeScreenShot( "browse" );&#010;+            // give me a browse page&#010;+            &#010;         }&#010;         else&#010;         {&#010;@@ -122,7 +153,7 @@ public class WebDriverTest&#010;         {&#010;             return new InternetExplorerDriver();&#010;         }&#010;-&#010;+        &#010;         return new FirefoxDriver();&#010; &#010;     }&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1490988 - /archiva/trunk/doap_Archiva.rdf</title>
<author><name>skygo@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130608141937.04FB423888E3@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130608141937-04FB423888E3@eris-apache-org%3e</id>
<updated>2013-06-08T14:19:36Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: skygo&#010;Date: Sat Jun  8 14:19:36 2013&#010;New Revision: 1490988&#010;&#010;URL: http://svn.apache.org/r1490988&#010;Log:&#010;Update doap file version &#010;  1.3.6 info and path&#010;  1.4M4 info and path&#010;&#010;Modified:&#010;    archiva/trunk/doap_Archiva.rdf&#010;&#010;Modified: archiva/trunk/doap_Archiva.rdf&#010;URL: http://svn.apache.org/viewvc/archiva/trunk/doap_Archiva.rdf?rev=1490988&amp;r1=1490987&amp;r2=1490988&amp;view=diff&#010;==============================================================================&#010;--- archiva/trunk/doap_Archiva.rdf (original)&#010;+++ archiva/trunk/doap_Archiva.rdf Sat Jun  8 14:19:36 2013&#010;@@ -37,20 +37,20 @@ security access management, build artifa&#010;     &lt;category rdf:resource="http://projects.apache.org/category/build-management" /&gt;&#010;     &lt;release&gt;&#010;       &lt;Version&gt;&#010;-        &lt;name&gt;Apache Archiva 1.3.5&lt;/name&gt;&#010;-        &lt;created&gt;2011-05-17&lt;/created&gt;&#010;-        &lt;revision&gt;1.3.5&lt;/revision&gt;&#010;-        &lt;file-release&gt;http://www.us.apache.org/dist/archiva/1.3.5/binaries/apache-archiva-1.3.5-bin.zip&lt;/file-release&gt;&#010;-        &lt;file-release&gt;http://www.us.apache.org/dist/archiva/1.3.5/war/apache-archiva-1.3.5.war&lt;/file-release&gt;&#010;+        &lt;name&gt;Apache Archiva 1.3.6&lt;/name&gt;&#010;+        &lt;created&gt;2013-01-07&lt;/created&gt;&#010;+        &lt;revision&gt;1.3.6&lt;/revision&gt;&#010;+        &lt;file-release&gt;http://www.us.apache.org/dist/archiva/1.3.6/binaries/apache-archiva-1.3.6-bin.zip&lt;/file-release&gt;&#010;+        &lt;file-release&gt;http://www.us.apache.org/dist/archiva/1.3.6/binaries/apache-archiva-1.3.6.war&lt;/file-release&gt;&#010;       &lt;/Version&gt;&#010;     &lt;/release&gt;&#010;     &lt;release&gt;&#010;       &lt;Version&gt;&#010;-        &lt;name&gt;Apache Archiva 1.4-M3&lt;/name&gt;&#010;-        &lt;created&gt;2012-10-07&lt;/created&gt;&#010;-        &lt;revision&gt;1.4-M3&lt;/revision&gt;&#010;-        &lt;file-release&gt;http://www.us.apache.org/dist/archiva/1.4-M3/binaries/apache-archiva-1.4-M3-js-bin.zip&lt;/file-release&gt;&#010;-        &lt;file-release&gt;http://www.us.apache.org/dist/archiva/1.4-M3/binaries/apache-archiva-1.4-M3.war&lt;/file-release&gt;&#010;+        &lt;name&gt;Apache Archiva 1.4-M4&lt;/name&gt;&#010;+        &lt;created&gt;2013-05-27&lt;/created&gt;&#010;+        &lt;revision&gt;1.4-M4&lt;/revision&gt;&#010;+        &lt;file-release&gt;http://www.us.apache.org/dist/archiva/1.4-M4/binaries/apache-archiva-1.4-M4-bin.zip&lt;/file-release&gt;&#010;+        &lt;file-release&gt;http://www.us.apache.org/dist/archiva/1.4-M4/binaries/apache-archiva-1.4-M4.war&lt;/file-release&gt;&#010;       &lt;/Version&gt;&#010;     &lt;/release&gt;&#010;     &lt;repository&gt;&#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1490981 [2/3] - in /archiva/site-content: ./ developers/ errors/ jsui/</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130608140530.2709A23889EB@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130608140530-2709A23889EB@eris-apache-org%3e</id>
<updated>2013-06-08T14:05:28Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Modified: archiva/site-content/index.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/index.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/index.html (original)&#010;+++ archiva/site-content/index.html Sat Jun  8 14:05:28 2013&#010;@@ -9,7 +9,7 @@&#010;     &lt;meta charset="UTF-8" /&gt;&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;     &lt;meta name="author" content="Brett Porter" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - &#010;     The Build Artifact Repository Manager&lt;/title&gt;&#010;@@ -207,7 +207,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -233,97 +233,151 @@&#010;   ~ specific language governing permissions and limitations&#010;   ~ under the License. --&gt;&#010;   &#010;-    &lt;div class="newsBox"&gt;&#010;-    &lt;div class="hero-unit"&gt;&#010;+    &#010;+&lt;div class="newsBox"&gt;&#010;+    &#010;+&lt;div class="hero-unit"&gt;&#010;       &lt;span class="bignumber badge badge-warning"&gt;NEW&lt;/span&gt;&#010;-      &lt;p&gt;&lt;b&gt;1st Jun 2013 release of 1.4-M4 with user management new features see screenshots below&#010;+      &#010;+&lt;p&gt;&lt;b&gt;1st Jun 2013 release of 1.4-M4 with user management new features see screenshots below&#010;         and &lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/adminguide/redback-runtime-configuration.html"&gt;documentation&lt;/a&gt;&lt;/b&gt;&lt;/p&gt;&#010;     &lt;/div&gt;&#010;     &lt;/div&gt;&#010; &#010;-    &lt;div id="carousel-main"&gt;&#010;+    &#010;+&lt;div id="carousel-main"&gt;&#010; &#010;-        &lt;div id="screenshots-carousel" class="carousel slide span10"&gt;&#010;+        &#010;+&lt;div id="screenshots-carousel" class="carousel slide span10"&gt;&#010;           &lt;!-- Carousel items --&gt;&#010;-          &lt;div class="carousel-inner"&gt;&#010;-            &lt;div class="item active"&gt;&#010;+          &#010;+&lt;div class="carousel-inner"&gt;&#010;+            &#010;+&lt;div class="item active"&gt;&#010;               &lt;img src="http://archiva.apache.org/docs/1.4-M4/images/ldap-configuration.png" alt="" height="120px" /&gt;&#010;-              &lt;div class="carousel-caption"&gt;&#010;-                &lt;p&gt;Dynamic LDAP Configuration.&lt;/p&gt;&#010;-                &lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/adminguide/redback-runtime-configuration.html"&gt;View all.&lt;/a&gt;&lt;/p&gt;&#010;+              &#010;+&lt;div class="carousel-caption"&gt;&#010;+                &#010;+&lt;p&gt;Dynamic LDAP Configuration.&lt;/p&gt;&#010;+                &#010;+&lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/adminguide/redback-runtime-configuration.html"&gt;View all.&lt;/a&gt;&lt;/p&gt;&#010;               &lt;/div&gt;&#010;             &lt;/div&gt;&#010;-            &lt;div class="item"&gt;&#010;+            &#010;+&lt;div class="item"&gt;&#010;               &lt;img src="http://archiva.apache.org/docs/1.4-M4/images/ldap-group-roles-mapping.png" alt="" /&gt;&#010;-              &lt;div class="carousel-caption"&gt;&#010;-                &lt;p&gt;Dynamic LDAP Group-Roles mapping Configuration.&lt;/p&gt;&#010;-                &lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/adminguide/redback-runtime-configuration.html"&gt;View all.&lt;/a&gt;&lt;/p&gt;&#010;+              &#010;+&lt;div class="carousel-caption"&gt;&#010;+                &#010;+&lt;p&gt;Dynamic LDAP Group-Roles mapping Configuration.&lt;/p&gt;&#010;+                &#010;+&lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/adminguide/redback-runtime-configuration.html"&gt;View all.&lt;/a&gt;&lt;/p&gt;&#010;               &lt;/div&gt;&#010;             &lt;/div&gt;&#010;-            &lt;div class="item"&gt;&#010;+            &#010;+&lt;div class="item"&gt;&#010;               &lt;img src="http://archiva.apache.org/docs/1.4-M4/images/tour/project-info.png" alt="" /&gt;&#010;-              &lt;div class="carousel-caption"&gt;&#010;-                &lt;p&gt;Informative display for artifacts stored in the repository.&lt;/p&gt;&#010;-                &lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/tour/index.html"&gt;View all.&lt;/a&gt;&lt;/p&gt;&#010;-                &lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/index.html"&gt;View new documentation.&lt;/a&gt;&lt;/p&gt;&#010;+              &#010;+&lt;div class="carousel-caption"&gt;&#010;+                &#010;+&lt;p&gt;Informative display for artifacts stored in the repository.&lt;/p&gt;&#010;+                &#010;+&lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/tour/index.html"&gt;View all.&lt;/a&gt;&lt;/p&gt;&#010;+                &#010;+&lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/index.html"&gt;View new documentation.&lt;/a&gt;&lt;/p&gt;&#010;               &lt;/div&gt;&#010;             &lt;/div&gt;&#010;-            &lt;div class="item"&gt;&#010;+            &#010;+&lt;div class="item"&gt;&#010;               &lt;img src="http://archiva.apache.org/docs/1.4-M4/images/tour/search-form.png" alt="" /&gt;&#010;-              &lt;div class="carousel-caption"&gt;&#010;-                &lt;p&gt;User-friendly browsing interface, and powerful search functionalities.&lt;/p&gt;&#010;-                &lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/tour/index.html"&gt;View all.&lt;/a&gt;&lt;/p&gt;&#010;-                &lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/index.html"&gt;View new documentation.&lt;/a&gt;&lt;/p&gt;&#010;+              &#010;+&lt;div class="carousel-caption"&gt;&#010;+                &#010;+&lt;p&gt;User-friendly browsing interface, and powerful search functionalities.&lt;/p&gt;&#010;+                &#010;+&lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/tour/index.html"&gt;View all.&lt;/a&gt;&lt;/p&gt;&#010;+                &#010;+&lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/index.html"&gt;View new documentation.&lt;/a&gt;&lt;/p&gt;&#010;               &lt;/div&gt;&#010;             &lt;/div&gt;&#010;-            &lt;div class="item"&gt;&#010;+            &#010;+&lt;div class="item"&gt;&#010;               &lt;img src="http://archiva.apache.org/docs/1.4-M4/images/tour/search-results.png" alt="" /&gt;&#010;-              &lt;div class="carousel-caption"&gt;&#010;-                &lt;p&gt;Filterable search results.&lt;/p&gt;&#010;-                &lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/tour/index.html"&gt;View all.&lt;/a&gt;&lt;/p&gt;&#010;-                &lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/index.html"&gt;View new documentation.&lt;/a&gt;&lt;/p&gt;&#010;+              &#010;+&lt;div class="carousel-caption"&gt;&#010;+                &#010;+&lt;p&gt;Filterable search results.&lt;/p&gt;&#010;+                &#010;+&lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/tour/index.html"&gt;View all.&lt;/a&gt;&lt;/p&gt;&#010;+                &#010;+&lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/index.html"&gt;View new documentation.&lt;/a&gt;&lt;/p&gt;&#010;               &lt;/div&gt;&#010;             &lt;/div&gt;&#010;-            &lt;div class="item"&gt;&#010;+            &#010;+&lt;div class="item"&gt;&#010;               &lt;img src="http://archiva.apache.org/docs/1.4-M4/images/tour/browse.png" alt="" /&gt;&#010;-              &lt;div class="carousel-caption"&gt;&#010;-                &lt;p&gt;Browse interface.&lt;/p&gt;&#010;-                &lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/tour/index.html"&gt;View all.&lt;/a&gt;&lt;/p&gt;&#010;-                &lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/index.html"&gt;View new documentation.&lt;/a&gt;&lt;/p&gt;&#010;+              &#010;+&lt;div class="carousel-caption"&gt;&#010;+                &#010;+&lt;p&gt;Browse interface.&lt;/p&gt;&#010;+                &#010;+&lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/tour/index.html"&gt;View all.&lt;/a&gt;&lt;/p&gt;&#010;+                &#010;+&lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/index.html"&gt;View new documentation.&lt;/a&gt;&lt;/p&gt;&#010;               &lt;/div&gt;&#010;             &lt;/div&gt;&#010; &#010; &#010;-            &lt;div class="item"&gt;&#010;+            &#010;+&lt;div class="item"&gt;&#010;               &lt;img src="http://archiva.apache.org/docs/1.4-M4/images/tour/remote-proxy-cache.png" alt="" /&gt;&#010;-              &lt;div class="carousel-caption"&gt;&#010;-                &lt;p&gt;Drag &amp;amp; drop remote proxies ordering.&lt;/p&gt;&#010;-                &lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/tour/index.html"&gt;View all.&lt;/a&gt;&lt;/p&gt;&#010;-                &lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/index.html"&gt;View new documentation.&lt;/a&gt;&lt;/p&gt;&#010;+              &#010;+&lt;div class="carousel-caption"&gt;&#010;+                &#010;+&lt;p&gt;Drag &amp;amp; drop remote proxies ordering.&lt;/p&gt;&#010;+                &#010;+&lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/tour/index.html"&gt;View all.&lt;/a&gt;&lt;/p&gt;&#010;+                &#010;+&lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/index.html"&gt;View new documentation.&lt;/a&gt;&lt;/p&gt;&#010;               &lt;/div&gt;&#010;             &lt;/div&gt;&#010;-            &lt;div class="item"&gt;&#010;+            &#010;+&lt;div class="item"&gt;&#010;               &lt;img src="http://archiva.apache.org/docs/1.4-M4/images/tour/upload-files.png" alt="" /&gt;&#010;-              &lt;div class="carousel-caption"&gt;&#010;-                &lt;p&gt;Drag &amp;amp; drop upload artifacts via UI.&lt;/p&gt;&#010;-                &lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/tour/index.html"&gt;View all.&lt;/a&gt;&lt;/p&gt;&#010;-                &lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/index.html"&gt;View new documentation.&lt;/a&gt;&lt;/p&gt;&#010;+              &#010;+&lt;div class="carousel-caption"&gt;&#010;+                &#010;+&lt;p&gt;Drag &amp;amp; drop upload artifacts via UI.&lt;/p&gt;&#010;+                &#010;+&lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/tour/index.html"&gt;View all.&lt;/a&gt;&lt;/p&gt;&#010;+                &#010;+&lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/index.html"&gt;View new documentation.&lt;/a&gt;&lt;/p&gt;&#010;               &lt;/div&gt;&#010;             &lt;/div&gt;&#010;-            &lt;div class="item"&gt;&#010;+            &#010;+&lt;div class="item"&gt;&#010;               &lt;img src="http://archiva.apache.org/docs/1.4-M4/images/tour/graphical-admin.png" alt="" /&gt;&#010;-              &lt;div class="carousel-caption"&gt;&#010;-                &lt;p&gt;Comprehensive web-based administration interface.&lt;/p&gt;&#010;-                &lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/tour/index.html"&gt;View all.&lt;/a&gt;&lt;/p&gt;&#010;-                &lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/index.html"&gt;View new documentation.&lt;/a&gt;&lt;/p&gt;&#010;+              &#010;+&lt;div class="carousel-caption"&gt;&#010;+                &#010;+&lt;p&gt;Comprehensive web-based administration interface.&lt;/p&gt;&#010;+                &#010;+&lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/tour/index.html"&gt;View all.&lt;/a&gt;&lt;/p&gt;&#010;+                &#010;+&lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/index.html"&gt;View new documentation.&lt;/a&gt;&lt;/p&gt;&#010;               &lt;/div&gt;&#010;             &lt;/div&gt;&#010;-            &lt;div class="item"&gt;&#010;+            &#010;+&lt;div class="item"&gt;&#010;               &lt;img src="http://archiva.apache.org/docs/1.4-M4/images/proxy-connectors-rules.png" alt="" /&gt;&#010;-              &lt;div class="carousel-caption"&gt;&#010;-                &lt;p&gt;Bulk update of your black/while list when fetching remote repositories.&lt;/p&gt;&#010;-                &lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/tour/index.html"&gt;View all.&lt;/a&gt;&lt;/p&gt;&#010;-                &lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/index.html"&gt;View new documentation.&lt;/a&gt;&lt;/p&gt;&#010;+              &#010;+&lt;div class="carousel-caption"&gt;&#010;+                &#010;+&lt;p&gt;Bulk update of your black/while list when fetching remote repositories.&lt;/p&gt;&#010;+                &#010;+&lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/tour/index.html"&gt;View all.&lt;/a&gt;&lt;/p&gt;&#010;+                &#010;+&lt;p&gt;&lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4-M4/index.html"&gt;View new documentation.&lt;/a&gt;&lt;/p&gt;&#010;               &lt;/div&gt;&#010;             &lt;/div&gt;&#010; &#010;@@ -334,8 +388,11 @@&#010;           &lt;a name="carousel-next" class="right carousel-control" id="carousel-next"&gt;&amp;#x203a;&lt;/a&gt;&#010;         &lt;/div&gt;&#010;     &lt;/div&gt;&#010;-    &lt;div class="section"&gt;&lt;h2&gt;Apache Archiva&amp;#x99;: The Build Artifact Repository Manager&lt;a name="Apache_Archiva:_The_Build_Artifact_Repository_Manager"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;-      &lt;p&gt;&#010;+    &#010;+&lt;div class="section"&gt;&#010;+&lt;h2&gt;Apache Archiva&amp;#x99;: The Build Artifact Repository Manager&lt;a name="Apache_Archiva:_The_Build_Artifact_Repository_Manager"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+      &#010;+&lt;p&gt;&#010;          Apache Archiva&amp;#x99; is an extensible repository management software that&#010;          helps taking care of your own personal or enterprise-wide build &#010;          artifact repository. It is the perfect companion for build tools such &#010;@@ -344,25 +401,31 @@&#010;          and &lt;a class="externalLink" href="http://ant.apache.org/"&gt;ANT&lt;/a&gt;. &#010;       &lt;/p&gt;&#010;  &#010;-      &lt;p&gt;&#010;+      &#010;+&lt;p&gt;&#010;          Archiva offers several capabilities, amongst which remote repository proxying, &#010;          security access management, build artifact storage, delivery, browsing, indexing &#010;          and usage reporting, extensible scanning functionality&amp;#x85; and many more! Get the&#010;          latest updates, follow us on twitter &lt;a class="externalLink" href="http://twitter.com/archiva"&gt;@archiva&lt;/a&gt;.&#010;       &lt;/p&gt;&#010; &#010;-      &lt;p&gt;&#010;+      &#010;+&lt;p&gt;&#010;         And in case you were wondering, it is pronounced &lt;i&gt;ahr-kahy-vuh&lt;/i&gt;, like &lt;i&gt;archive&lt;/i&gt; but with an &lt;i&gt;a&lt;/i&gt;!&#010;       &lt;/p&gt;&#010; &#010;-      &lt;div class="mainBox"&gt;&#010;-        &lt;div class="hero-unit"&gt;&#010;+      &#010;+&lt;div class="mainBox"&gt;&#010;+        &#010;+&lt;div class="hero-unit"&gt;&#010;           &lt;span class="bignumber badge badge-warning"&gt;1&lt;/span&gt;&#010; &#010;-          &lt;p&gt;&#010;+          &#010;+&lt;p&gt;&#010;             &lt;a href="docs/1.3.6/tour/index.html"&gt;Take a look around&lt;/a&gt;&#010;           &lt;/p&gt;&#010;-          &lt;p&gt;&#010;+          &#010;+&lt;p&gt;&#010;             &lt;!-- Commenting out while we still don't have a live demo  &#010;             Try out the live demo, or take a look at the screenshots in the feature walkthrough. --&gt;&#010;             Take a look at the screenshots in the feature walkthrough.&#010;@@ -370,14 +433,18 @@&#010;           &lt;br style="clear: left" /&gt;&#010;         &lt;/div&gt;&#010;       &lt;/div&gt;&#010;-      &lt;div class="mainBox"&gt;&#010;-        &lt;div class="hero-unit"&gt;&#010;+      &#010;+&lt;div class="mainBox"&gt;&#010;+        &#010;+&lt;div class="hero-unit"&gt;&#010;           &lt;span class="bignumber badge badge-warning"&gt;2&lt;/span&gt;&#010; &#010;-          &lt;p&gt;&#010;+          &#010;+&lt;p&gt;&#010;             &lt;a href="download.html"&gt;Download Archiva&lt;/a&gt;&#010;           &lt;/p&gt;&#010;-          &lt;p&gt;&#010;+          &#010;+&lt;p&gt;&#010;             &lt;span class="expand" style="width: 200px; display: block; float: left;"&gt;&#010;               &lt;img src="images/collapsed.gif" width="7" height="7" alt="" /&gt;&#010;               &lt;b&gt;Latest stable release:&lt;/b&gt;&#010;@@ -404,14 +471,18 @@&#010;         &lt;/div&gt;&#010;       &lt;/div&gt;&#010; &#010;-      &lt;div class="mainBox"&gt;&#010;-        &lt;div class="hero-unit"&gt;&#010;+      &#010;+&lt;div class="mainBox"&gt;&#010;+        &#010;+&lt;div class="hero-unit"&gt;&#010;           &lt;span class="bignumber badge badge-warning"&gt;3&lt;/span&gt;&#010; &#010;-          &lt;p&gt;&#010;+          &#010;+&lt;p&gt;&#010;             &lt;a href="docs/1.3.6/index.html"&gt;Documentation&lt;/a&gt;&#010;           &lt;/p&gt;&#010;-          &lt;p&gt;&#010;+          &#010;+&lt;p&gt;&#010;             &lt;img src="images/collapsed.gif" width="7" height="7" alt="" /&gt;&#010;             Simple out of the box configuration and &lt;a href="docs/1.3.6/quick-start.html"&gt;quick start guide&lt;/a&gt;&#010;             &lt;br /&gt;&#010;@@ -426,64 +497,98 @@&#010;           &lt;/p&gt;&#010;         &lt;/div&gt;&#010;       &lt;/div&gt;&#010;-      &lt;div class="mainBox"&gt;&#010;-        &lt;div class="hero-unit"&gt;&#010;+      &#010;+&lt;div class="mainBox"&gt;&#010;+        &#010;+&lt;div class="hero-unit"&gt;&#010;           &lt;span class="bignumber badge badge-warning"&gt;4&lt;/span&gt;&#010; &#010;-          &lt;p&gt;&#010;+          &#010;+&lt;p&gt;&#010;             &lt;a href="get-involved.html"&gt;Get involved&lt;/a&gt;&#010;           &lt;/p&gt;&#010;-          &lt;p&gt;&#010;+          &#010;+&lt;p&gt;&#010;             Get support from the &lt;a href="mail-lists.html"&gt;mailing lists&lt;/a&gt; and &lt;a class="externalLink" href="http://cwiki.apache.org/confluence/display/ARCHIVA/"&gt;wiki&lt;/a&gt;, file &lt;a href="issue-tracking.html"&gt;issues&lt;/a&gt;, and even &lt;a href="get-involved.html"&gt;get involved&lt;/a&gt; in the development.&#010;           &lt;/p&gt;&#010;           &lt;br style="clear: left" /&gt;&#010;         &lt;/div&gt;&#010;       &lt;/div&gt;&#010; &#010;-      &lt;div&gt;&#010;-        &lt;div class="section"&gt;&lt;h2&gt;Videos&lt;a name="Videos"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;-        &lt;div class="section"&gt;&lt;div class="section"&gt;&lt;h4&gt;Quick start&lt;a name="Quick_start"&gt;&lt;/a&gt;&lt;/h4&gt;&#010;-        &lt;p align="center"&gt;&#010;+      &#010;+&lt;div&gt;&#010;+        &#010;+&lt;div class="section"&gt;&#010;+&lt;h2&gt;Videos&lt;a name="Videos"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+        &#010;+&lt;div class="section"&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h4&gt;Quick start&lt;a name="Quick_start"&gt;&lt;/a&gt;&lt;/h4&gt;&#010;+        &#010;+&lt;p align="center"&gt;&#010;           &lt;iframe width="420" height="315" src="http://www.youtube.com/embed/kG349qooN8E" frameborder="0" allowfullscreen=""&gt;&lt;/iframe&gt;&#010;         &lt;/p&gt;&#010;-        &lt;/div&gt;&lt;div class="section"&gt;&lt;h4&gt;Browsing/Uploading/Searching&lt;a name="BrowsingUploadingSearching"&gt;&lt;/a&gt;&lt;/h4&gt;&#010;-        &lt;p align="center"&gt;&#010;+        &lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h4&gt;Browsing/Uploading/Searching&lt;a name="BrowsingUploadingSearching"&gt;&lt;/a&gt;&lt;/h4&gt;&#010;+        &#010;+&lt;p align="center"&gt;&#010;           &lt;iframe width="420" height="315" src="http://www.youtube.com/embed/y4DoLCfYR-A" frameborder="0" allowfullscreen=""&gt;&lt;/iframe&gt;&#010;         &lt;/p&gt;&#010;       &lt;/div&gt;&#010; &#010;     &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&#010; &#010;-    &lt;div class="section"&gt;&lt;h2&gt;License&lt;a name="License"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;-      &lt;p&gt;&#010;+    &#010;+&lt;div class="section"&gt;&#010;+&lt;h2&gt;License&lt;a name="License"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+      &#010;+&lt;p&gt;&#010;         Archiva is distributed under the &lt;a class="externalLink" href="http://www.apache.org/licenses/"&gt;Apache License, version 2.0&lt;/a&gt;&#010;       &lt;/p&gt;&#010;     &lt;/div&gt;&#010;-    &lt;div class="section"&gt;&lt;h2&gt;Thanks&lt;a name="Thanks"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;-      &lt;p&gt;&#010;+    &#010;+&lt;div class="section"&gt;&#010;+&lt;h2&gt;Thanks&lt;a name="Thanks"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+      &#010;+&lt;p&gt;&#010;         We would like to thank all the &lt;a class="externalLink" href="http://www.apache.org/foundation/thanks.html"&gt;sponsors that provide financial assistance to the Apache Software Foundation&lt;/a&gt;.&#010;         For more information on how you can support the foundation, see the &lt;a class="externalLink" href="http://www.apache.org/foundation/sponsorship.html"&gt;sponsorship&lt;/a&gt; page.&#010;       &lt;/p&gt;&#010;     &lt;/div&gt;&#010; &#010;-    &lt;div class="section"&gt;&lt;h2&gt;Events&lt;a name="Events"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;-      &lt;div class="section"&gt;&lt;h3&gt;ApacheCon NA 2013&lt;a name="ApacheCon_NA_2013"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;-      &lt;p&gt;&#010;+    &#010;+&lt;div class="section"&gt;&#010;+&lt;h2&gt;Events&lt;a name="Events"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+      &#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;ApacheCon NA 2013&lt;a name="ApacheCon_NA_2013"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+      &#010;+&lt;p&gt;&#010;         &lt;a class="poweredBy" href="http://www.apache.org/events/current-event.html" title="ApacheCon"&gt;&#010;           &lt;img src="http://www.apache.org/events/logos-banners/ApacheCon-2013-NorthAmerica/NA_square_20.png" class="poweredBy" alt="ApacheCon" title="Apache Con NA" /&gt;&#010;         &lt;/a&gt;&#010;       &lt;/p&gt;&#010;     &lt;/div&gt;&lt;/div&gt;&#010; &#010;-    &lt;div class="section"&gt;&lt;h2&gt;Resources&lt;a name="Resources"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;-      &lt;p&gt;&#010;+    &#010;+&lt;div class="section"&gt;&#010;+&lt;h2&gt;Resources&lt;a name="Resources"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+      &#010;+&lt;p&gt;&#010;         Need more? Try some of these resources.&#010;       &lt;/p&gt;&#010;-      &lt;div&gt;&#010;-        &lt;div class="section"&gt;&lt;h3&gt;Books&lt;a name="Books"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;-        &lt;div style="margin-left: auto; margin-right: auto; text-align: center"&gt;&#010;-          &lt;div style="float: left; width: 50%;"&gt;&#010;-            &lt;p&gt;&#010;+      &#010;+&lt;div&gt;&#010;+        &#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Books&lt;a name="Books"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+        &#010;+&lt;div style="margin-left: auto; margin-right: auto; text-align: center"&gt;&#010;+          &#010;+&lt;div style="float: left; width: 50%;"&gt;&#010;+            &#010;+&lt;p&gt;&#010;               &lt;a class="externalLink" href="http://www.packtpub.com/apache-maven-2-effective-implementations/book"&gt;&lt;img src="images/books/apache_maven_2_effective_implementation.jpg" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&#010;               &lt;a class="externalLink" href="http://www.packtpub.com/apache-maven-2-effective-implementations/book"&gt;Apache Maven 2: Effective Implementation&lt;/a&gt; (Maria Odea Ching, Brett Porter; September 2009)&lt;br /&gt;&#010;               &lt;span style="font-size: 0.8em"&gt;&#010;@@ -491,8 +596,10 @@&#010;               &lt;/span&gt;&#010;             &lt;/p&gt;&#010;           &lt;/div&gt;&#010;-          &lt;div style="float: left; width: 50%;"&gt;&#010;-            &lt;p&gt;&#010;+          &#010;+&lt;div style="float: left; width: 50%;"&gt;&#010;+            &#010;+&lt;p&gt;&#010;               &lt;a class="externalLink" href="http://www.wakaleo.com/java-power-tools"&gt;&lt;img src="images/books/java_power_tools.gif" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&#010;               &lt;a class="externalLink" href="http://www.wakaleo.com/java-power-tools"&gt;Java Power Tools&lt;/a&gt; (John Smart; April 2008)&lt;br /&gt;&#010;               &lt;span style="font-size: 0.8em"&gt;&#010;@@ -502,50 +609,79 @@&#010;           &lt;/div&gt;&#010;         &lt;/div&gt;&#010;       &lt;/div&gt;&#010;-      &lt;div style="clear: left"&gt;&#010;-        &lt;/div&gt;&lt;div class="section"&gt;&lt;h3&gt;Articles, Presentations and Tutorials&lt;a name="Articles_Presentations_and_Tutorials"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;-        &lt;ul&gt;&#010;-          &lt;li&gt;&#010;+      &#010;+&lt;div style="clear: left"&gt;&#010;+        &lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Articles, Presentations and Tutorials&lt;a name="Articles_Presentations_and_Tutorials"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+        &#010;+&lt;ul&gt;&#010;+          &#010;+&lt;li&gt;&#010;             &lt;a class="externalLink" href="http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?pagina=archiva"&gt;Archiva 1.1.1 Tutorial in Spanish!&lt;/a&gt; - Video also available &lt;a class="externalLink" href="http://www.adictosaltrabajo.com/detalle-noticia.php?noticia=61"&gt;here&lt;/a&gt; - (&amp;#xc1;ngel Garc&amp;#xed;a Jerez; September 2008)&#010;           &lt;/li&gt;&#010;         &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;     &lt;/div&gt;&lt;/div&gt;&#010; &#010;-      &lt;div id="dialogRelease" class="modal hide fade"&gt;&#010;-        &lt;div class="modal-header"&gt;&#010;+      &#010;+&lt;div id="dialogRelease" class="modal hide fade"&gt;&#010;+        &#010;+&lt;div class="modal-header"&gt;&#010;           &lt;button type="button" class="close" data-dismiss="modal" aria-hidden="true"&gt;[&amp;#xd7;]&lt;/button&gt;&#010;-          &lt;h1&gt;Archiva 1.3.6&lt;/h1&gt;&#010;+          &#010;+&lt;h1&gt;Archiva 1.3.6&lt;/h1&gt;&#010;         &lt;/div&gt;&#010;-        &lt;div class="modal-body"&gt;&#010;-          &lt;p&gt;&#010;+        &#010;+&lt;div class="modal-body"&gt;&#010;+          &#010;+&lt;p&gt;&#010;           This is the recommended latest release of Archiva.&#010;           &lt;/p&gt;&#010;-          &lt;table border="0" class="table table-striped"&gt;&#010;-            &lt;tr class="a"&gt;&#010;-              &lt;th&gt; &lt;/th&gt;&#010;-              &lt;th&gt;Mirrors&lt;/th&gt;&#010;-              &lt;th&gt;Checksum&lt;/th&gt;&#010;-              &lt;th&gt;Signature&lt;/th&gt;&#010;+          &#010;+&lt;table border="0" class="table table-striped"&gt;&#010;+            &#010;+&lt;tr class="a"&gt;&#010;+              &#010;+&lt;th&gt; &lt;/th&gt;&#010;+              &#010;+&lt;th&gt;Mirrors&lt;/th&gt;&#010;+              &#010;+&lt;th&gt;Checksum&lt;/th&gt;&#010;+              &#010;+&lt;th&gt;Signature&lt;/th&gt;&#010;             &lt;/tr&gt;&#010;-            &lt;tr class="b"&gt;&#010;-              &lt;td&gt;Archiva 1.3.6 Standalone&lt;/td&gt;&#010;-              &lt;td&gt;&lt;a href="[preferred]archiva/1.3.6/binaries/apache-archiva-1.3.6-bin.zip"&gt;zip&lt;/a&gt;&lt;/td&gt;&#010;-              &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/binaries/apache-archiva-1.3.6-bin.zip.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;-              &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/binaries/apache-archiva-1.3.6-bin.zip.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;+            &#010;+&lt;tr class="b"&gt;&#010;+              &#010;+&lt;td&gt;Archiva 1.3.6 Standalone&lt;/td&gt;&#010;+              &#010;+&lt;td&gt;&lt;a href="[preferred]archiva/1.3.6/binaries/apache-archiva-1.3.6-bin.zip"&gt;zip&lt;/a&gt;&lt;/td&gt;&#010;+              &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/binaries/apache-archiva-1.3.6-bin.zip.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;+              &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/binaries/apache-archiva-1.3.6-bin.zip.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;             &lt;/tr&gt;&#010;-            &lt;tr class="a"&gt;&#010;-              &lt;td&gt;Archiva 1.3.6 WAR&lt;/td&gt;&#010;-              &lt;td&gt;&lt;a href="[preferred]archiva/1.3.6/binaries/apache-archiva-1.3.6.war"&gt;war&lt;/a&gt;&lt;/td&gt;&#010;-              &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/binaries/apache-archiva-1.3.6.war.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;-              &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/binaries/apache-archiva-1.3.6.war.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;+            &#010;+&lt;tr class="a"&gt;&#010;+              &#010;+&lt;td&gt;Archiva 1.3.6 WAR&lt;/td&gt;&#010;+              &#010;+&lt;td&gt;&lt;a href="[preferred]archiva/1.3.6/binaries/apache-archiva-1.3.6.war"&gt;war&lt;/a&gt;&lt;/td&gt;&#010;+              &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/binaries/apache-archiva-1.3.6.war.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;+              &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/binaries/apache-archiva-1.3.6.war.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;             &lt;/tr&gt;&#010;           &lt;/table&gt;&#010; &#010;         &lt;/div&gt;&#010;-        &lt;div class="modal-footer"&gt;&#010;-          &lt;div class="row"&gt;&#010;-            &lt;div class="pull-rigth"&gt;&#010;+        &#010;+&lt;div class="modal-footer"&gt;&#010;+          &#010;+&lt;div class="row"&gt;&#010;+            &#010;+&lt;div class="pull-rigth"&gt;&#010;               &lt;a href="docs/1.3.6/release-notes.html"&gt;Release Notes&lt;/a&gt; | &lt;a href="download.html"&gt;More downloads or change mirror.&lt;/a&gt;&#010;             &lt;/div&gt;&#010;             &lt;!-- add mirror change option --&gt;&#010;@@ -575,36 +711,59 @@&#010;           &lt;/div&gt;&#010;         &lt;/div&gt;&#010;       &lt;/div&gt;&#010;-      &lt;div id="dialogPreview" class="modal hide fade"&gt;&#010;-        &lt;div class="modal-header"&gt;&#010;+      &#010;+&lt;div id="dialogPreview" class="modal hide fade"&gt;&#010;+        &#010;+&lt;div class="modal-header"&gt;&#010;           &lt;button type="button" class="close" data-dismiss="modal" aria-hidden="true"&gt;[&amp;#xd7;]&lt;/button&gt;&#010;-          &lt;h1&gt;Archiva 1.4-M4&lt;/h1&gt;&#010;+          &#010;+&lt;h1&gt;Archiva 1.4-M4&lt;/h1&gt;&#010;         &lt;/div&gt;&#010;-        &lt;div class="modal-body"&gt;&#010;-          &lt;p&gt;This is a preview of the next release of Archiva.&lt;/p&gt;&#010;-          &lt;table border="0" class="table table-striped"&gt;&#010;-            &lt;tr class="a"&gt;&#010;-              &lt;th&gt; &lt;/th&gt;&#010;-              &lt;th&gt;Mirrors&lt;/th&gt;&#010;-              &lt;th&gt;Checksum&lt;/th&gt;&#010;-              &lt;th&gt;Signature&lt;/th&gt;&#010;+        &#010;+&lt;div class="modal-body"&gt;&#010;+          &#010;+&lt;p&gt;This is a preview of the next release of Archiva.&lt;/p&gt;&#010;+          &#010;+&lt;table border="0" class="table table-striped"&gt;&#010;+            &#010;+&lt;tr class="a"&gt;&#010;+              &#010;+&lt;th&gt; &lt;/th&gt;&#010;+              &#010;+&lt;th&gt;Mirrors&lt;/th&gt;&#010;+              &#010;+&lt;th&gt;Checksum&lt;/th&gt;&#010;+              &#010;+&lt;th&gt;Signature&lt;/th&gt;&#010;             &lt;/tr&gt;&#010;-            &lt;tr class="b"&gt;&#010;-              &lt;td&gt;Archiva 1.4-M4 Standalone&lt;/td&gt;&#010;-              &lt;td&gt;&lt;a href="[preferred]archiva/1.4-M4/binaries/apache-archiva-1.4-M4-bin.zip"&gt;zip&lt;/a&gt;&lt;/td&gt;&#010;-              &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.4-M4/binaries/apache-archiva-1.4-M4-bin.zip.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;-              &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.4-M4/binaries/apache-archiva-1.4-M4-bin.zip.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;+            &#010;+&lt;tr class="b"&gt;&#010;+              &#010;+&lt;td&gt;Archiva 1.4-M4 Standalone&lt;/td&gt;&#010;+              &#010;+&lt;td&gt;&lt;a href="[preferred]archiva/1.4-M4/binaries/apache-archiva-1.4-M4-bin.zip"&gt;zip&lt;/a&gt;&lt;/td&gt;&#010;+              &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.4-M4/binaries/apache-archiva-1.4-M4-bin.zip.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;+              &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.4-M4/binaries/apache-archiva-1.4-M4-bin.zip.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;             &lt;/tr&gt;&#010;-            &lt;tr class="a"&gt;&#010;-              &lt;td&gt;Archiva 1.4-M4 WAR&lt;/td&gt;&#010;-              &lt;td&gt;&lt;a href="[preferred]archiva/1.4-M4/binaries/apache-archiva-1.4-M4.war"&gt;war&lt;/a&gt;&lt;/td&gt;&#010;-              &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.4-M4/binaries/apache-archiva-1.4-M4.war.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;-              &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.4-M4/binaries/apache-archiva-1.4-M4.war.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;+            &#010;+&lt;tr class="a"&gt;&#010;+              &#010;+&lt;td&gt;Archiva 1.4-M4 WAR&lt;/td&gt;&#010;+              &#010;+&lt;td&gt;&lt;a href="[preferred]archiva/1.4-M4/binaries/apache-archiva-1.4-M4.war"&gt;war&lt;/a&gt;&lt;/td&gt;&#010;+              &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.4-M4/binaries/apache-archiva-1.4-M4.war.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;+              &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.4-M4/binaries/apache-archiva-1.4-M4.war.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;             &lt;/tr&gt;&#010;           &lt;/table&gt;&#010;         &lt;/div&gt;&#010;-        &lt;div class="modal-footer"&gt;&#010;-          &lt;p&gt;&lt;a href="docs/1.4-M4/release-notes.html"&gt;Release Notes&lt;/a&gt; | &lt;a href="download.html"&gt;More downloads or change mirror.&lt;/a&gt;&lt;/p&gt;&#010;+        &#010;+&lt;div class="modal-footer"&gt;&#010;+          &#010;+&lt;p&gt;&lt;a href="docs/1.4-M4/release-notes.html"&gt;Release Notes&lt;/a&gt; | &lt;a href="download.html"&gt;More downloads or change mirror.&lt;/a&gt;&lt;/p&gt;&#010;         &lt;/div&gt;&#010;       &lt;/div&gt;&#010; &#010;&#010;Modified: archiva/site-content/integration.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/integration.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/integration.html (original)&#010;+++ archiva/site-content/integration.html Sat Jun  8 14:05:28 2013&#010;@@ -8,7 +8,7 @@&#010;   &lt;head&gt;&#010;     &lt;meta charset="UTF-8" /&gt;&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - Continuous Integration&lt;/title&gt;&#010;     &lt;link rel="stylesheet" href="./css/apache-maven-fluido-1.3.1-SNAPSHOT.min.css" /&gt;&#010;@@ -204,7 +204,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -213,7 +213,17 @@&#010;                 &#010;         &lt;div id="bodyColumn" &gt;&#010;                                   &#010;-            &lt;div class="section"&gt;&lt;h2&gt;Overview&lt;a name="Overview"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Overview"&gt;&lt;/a&gt;&lt;p&gt;This project uses &lt;a class="externalLink" href="http://jenkins-ci.org/"&gt;Jenkins&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h2&gt;Access&lt;a name="Access"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Access"&gt;&lt;/a&gt;&lt;p&gt;The following is a link to the continuous integration system used by the project.&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;&lt;a class="externalLink" href="https://builds.apache.org/view/A-F/view/Archiva/"&gt;https://builds.apache.org/view/A-F/view/Archiva/&lt;/a&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h2&gt;Notifiers&lt;a name="Notifiers"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Notifiers"&gt;&lt;/a&gt;&lt;p&gt;No notifiers are defined. Please check back at a later date.&lt;/p&gt;&lt;/div&gt;&#010;+            &lt;div class="section"&gt;&#010;+&lt;h2&gt;Overview&lt;a name="Overview"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Overview"&gt;&lt;/a&gt;&#010;+&lt;p&gt;This project uses &lt;a class="externalLink" href="http://jenkins-ci.org/"&gt;Jenkins&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h2&gt;Access&lt;a name="Access"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Access"&gt;&lt;/a&gt;&#010;+&lt;p&gt;The following is a link to the continuous integration system used by the project.&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;&lt;a class="externalLink" href="https://builds.apache.org/view/A-F/view/Archiva/"&gt;https://builds.apache.org/view/A-F/view/Archiva/&lt;/a&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h2&gt;Notifiers&lt;a name="Notifiers"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Notifiers"&gt;&lt;/a&gt;&#010;+&lt;p&gt;No notifiers are defined. Please check back at a later date.&lt;/p&gt;&lt;/div&gt;&#010;                   &lt;/div&gt;&#010;           &lt;/div&gt;&#010; &#010;&#010;Modified: archiva/site-content/issue-tracking.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/issue-tracking.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/issue-tracking.html (original)&#010;+++ archiva/site-content/issue-tracking.html Sat Jun  8 14:05:28 2013&#010;@@ -8,7 +8,7 @@&#010;   &lt;head&gt;&#010;     &lt;meta charset="UTF-8" /&gt;&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - Issue Tracking&lt;/title&gt;&#010;     &lt;link rel="stylesheet" href="./css/apache-maven-fluido-1.3.1-SNAPSHOT.min.css" /&gt;&#010;@@ -204,7 +204,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -213,7 +213,14 @@&#010;                 &#010;         &lt;div id="bodyColumn" &gt;&#010;                                   &#010;-            &lt;div class="section"&gt;&lt;h2&gt;Overview&lt;a name="Overview"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Overview"&gt;&lt;/a&gt;&lt;p&gt;This project uses &lt;a class="externalLink" href="http://www.atlassian.com/software/jira"&gt;JIRA&lt;/a&gt; a J2EE-based, issue tracking and project management application.&lt;/p&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h2&gt;Issue Tracking&lt;a name="Issue_Tracking"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Issue_Tracking"&gt;&lt;/a&gt;&lt;p&gt;Issues, bugs, and feature requests should be submitted to the following issue tracking system for this project.&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;&lt;a class="externalLink" href="http://jira.codehaus.org/browse/MRM"&gt;http://jira.codehaus.org/browse/MRM&lt;/a&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#010;+            &lt;div class="section"&gt;&#010;+&lt;h2&gt;Overview&lt;a name="Overview"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Overview"&gt;&lt;/a&gt;&#010;+&lt;p&gt;This project uses &lt;a class="externalLink" href="http://www.atlassian.com/software/jira"&gt;JIRA&lt;/a&gt; a J2EE-based, issue tracking and project management application.&lt;/p&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h2&gt;Issue Tracking&lt;a name="Issue_Tracking"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Issue_Tracking"&gt;&lt;/a&gt;&#010;+&lt;p&gt;Issues, bugs, and feature requests should be submitted to the following issue tracking system for this project.&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;&lt;a class="externalLink" href="http://jira.codehaus.org/browse/MRM"&gt;http://jira.codehaus.org/browse/MRM&lt;/a&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#010;                   &lt;/div&gt;&#010;           &lt;/div&gt;&#010; &#010;&#010;Modified: archiva/site-content/jsui/generics-js.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/jsui/generics-js.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/jsui/generics-js.html (original)&#010;+++ archiva/site-content/jsui/generics-js.html Sat Jun  8 14:05:28 2013&#010;@@ -9,7 +9,7 @@&#010;     &lt;meta charset="UTF-8" /&gt;&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;     &lt;meta name="author" content="Olivier Lamy" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - &#010;     Generics Javascript&lt;/title&gt;&#010;@@ -207,7 +207,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -239,16 +239,34 @@&#010;     &lt;link rel="stylesheet" href="../css/jquery.fancybox-2.1.0.css" type="text/css" media="screen" /&gt;&#010;     &lt;script type="text/javascript" src="../js/fancy-box-activation.js"&gt;&lt;/script&gt;&#010; &#010;-    &lt;ul&gt;&lt;li&gt;&lt;a href="#Generics_Javascript"&gt;Generics Javascript&lt;/a&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="#User_messages"&gt;User messages&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#Success_message"&gt;Success message&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#Error_message"&gt;Error message&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#Modal_Confirm_dialog"&gt;Modal Confirm dialog&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&#010;+    &#010;+&lt;ul&gt;&#010;+&lt;li&gt;&lt;a href="#Generics_Javascript"&gt;Generics Javascript&lt;/a&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;&lt;a href="#User_messages"&gt;User messages&lt;/a&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;a href="#Success_message"&gt;Success message&lt;/a&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;a href="#Error_message"&gt;Error message&lt;/a&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;a href="#Modal_Confirm_dialog"&gt;Modal Confirm dialog&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&#010; &#010;-    &lt;div class="section"&gt;&lt;h2&gt;Generics Javascript&lt;a name="Generics_Javascript"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;-      &lt;p&gt;Some common/generic javascript methods are available.&lt;/p&gt;&#010;-      &lt;div class="section"&gt;&lt;h3&gt;User messages&lt;a name="User_messages"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;-      &lt;p&gt;A div &amp;quot;user-messages&amp;quot; is reserved for user messages.&lt;/p&gt;&#010;-        &lt;/div&gt;&lt;div class="section"&gt;&lt;h3&gt;Success message&lt;a name="Success_message"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;-          &lt;p&gt;&#010;+    &#010;+&lt;div class="section"&gt;&#010;+&lt;h2&gt;Generics Javascript&lt;a name="Generics_Javascript"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+      &#010;+&lt;p&gt;Some common/generic javascript methods are available.&lt;/p&gt;&#010;+      &#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;User messages&lt;a name="User_messages"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+      &#010;+&lt;p&gt;A div &amp;quot;user-messages&amp;quot; is reserved for user messages.&lt;/p&gt;&#010;+        &lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Success message&lt;a name="Success_message"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+          &#010;+&lt;p&gt;&#010;             Javascript function:&#010;-            &lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;&#010;+            &lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;&#010; displaySuccessMessage($.i18n.prop('managedrepository.added'));&#010; // the second parameter is optionnal by default #user-messages id is used&#010; displaySuccessMessage=function(text,idToAppend){&#010;@@ -260,10 +278,15 @@ displaySuccessMessage=function(text,idTo&#010;           &#010;         &lt;/div&gt;&#010; &#010;-        &lt;div class="section"&gt;&lt;h3&gt;Error message&lt;a name="Error_message"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;-          &lt;p&gt;&#010;+        &#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Error message&lt;a name="Error_message"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+          &#010;+&lt;p&gt;&#010;             Javascript function:&#010;-            &lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;&#010;+            &lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;&#010; displayErrorMessage($.i18n.prop('managedrepository.added'));&#010; // the second parameter is optionnal by default #user-messages id is used&#010; displayErrorMessage=function(text,idToAppend){&#010;@@ -275,10 +298,15 @@ displayErrorMessage=function(text,idToAp&#010;           &#010;         &lt;/div&gt;&#010;       &#010;-      &lt;div class="section"&gt;&lt;h3&gt;Modal Confirm dialog&lt;a name="Modal_Confirm_dialog"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;-        &lt;p&gt;&#010;+      &#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Modal Confirm dialog&lt;a name="Modal_Confirm_dialog"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+        &#010;+&lt;p&gt;&#010;           Javascript function:&#010;-          &lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;&#010;+          &lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;&#010;   /**&#010;    * open a confirm dialog based on bootstrap modal&#010;    * @param okFn callback function to call on ok confirm&#010;&#010;Modified: archiva/site-content/jsui/i18n.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/jsui/i18n.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/jsui/i18n.html (original)&#010;+++ archiva/site-content/jsui/i18n.html Sat Jun  8 14:05:28 2013&#010;@@ -10,7 +10,7 @@&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;     &lt;meta name="author" content="Olivier Lamy" /&gt;&#010;     &lt;meta name="Date-Creation-yyyymmdd" content="20120119" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - i18n&lt;/title&gt;&#010;     &lt;link rel="stylesheet" href="../css/apache-maven-fluido-1.3.1-SNAPSHOT.min.css" /&gt;&#010;@@ -206,7 +206,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -215,11 +215,29 @@&#010;                 &#010;         &lt;div id="bodyColumn" &gt;&#010;                                   &#010;-            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;!-- NOTE: For help with the syntax of this file, see: --&gt;&lt;!-- http://maven.apache.org/guides/mi&#010; ni/guide-apt-format.html --&gt;&lt;div class="section"&gt;&lt;h2&gt;i18n management&lt;a name="i18n_management"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;The js library &lt;a class="externalLink" href="http://code.google.com/p/jquery-i18n-properties"&gt;jquery-i18n-properties&lt;/a&gt; is used for i18n.&lt;/p&gt;&lt;p&gt;On application loading, i18n properties are loaded by calling a REST services with the browser lang or with the requested language specified by the request parameter : ?request_lang=en.&lt;/p&gt;&lt;p&gt;This service will load properties in this order:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;redback properties in en then in specified language&lt;/li&gt;&lt;li&gt;archiva properties (from org/apache/archiva/i18n/default.properties) in en then in specified language&lt;/li&gt;&lt;/ul&gt;&lt;div class="section"&gt;&lt;h3&gt;Javascript method&lt;a name="Javascript_method"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Simple i18n value without any value&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;Javascript code :&#010;-$.i18n.prop(&amp;quot;save&amp;quot;)  will return the value for key save&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;You can pass some values too (sample for property managedrepository.deleted=Managed Repository &amp;quot; {0} &amp;quot; deleted. )&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;Javascript code :&#010;+            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;!-- NOTE: For help with the syntax of this file, see: --&gt;&lt;!-- http://maven.apache.org/guides/mi&#010; ni/guide-apt-format.html --&gt;&lt;div class="section"&gt;&#010;+&lt;h2&gt;i18n management&lt;a name="i18n_management"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+&lt;p&gt;The js library &lt;a class="externalLink" href="http://code.google.com/p/jquery-i18n-properties"&gt;jquery-i18n-properties&lt;/a&gt; is used for i18n.&lt;/p&gt;&#010;+&lt;p&gt;On application loading, i18n properties are loaded by calling a REST services with the browser lang or with the requested language specified by the request parameter : ?request_lang=en.&lt;/p&gt;&#010;+&lt;p&gt;This service will load properties in this order:&lt;/p&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;redback properties in en then in specified language&lt;/li&gt;&#010;+&lt;li&gt;archiva properties (from org/apache/archiva/i18n/default.properties) in en then in specified language&lt;/li&gt;&lt;/ul&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Javascript method&lt;a name="Javascript_method"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;p&gt;Simple i18n value without any value&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;Javascript code :&#010;+$.i18n.prop(&amp;quot;save&amp;quot;)  will return the value for key save&lt;/pre&gt;&lt;/div&gt;&#010;+&lt;p&gt;You can pass some values too (sample for property managedrepository.deleted=Managed Repository &amp;quot; {0} &amp;quot; deleted. )&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;Javascript code :&#010; $.i18n.prop(&amp;quot;managedrepository.deleted&amp;quot;,managedRepository.name())&#010; if  managedRepository.name() is &amp;quot;foo&amp;quot;&#010;-response will be Managed Repository &amp;quot; foo &amp;quot; deleted.&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h3&gt;Missing properties&lt;a name="Missing_properties"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;In case of missing property, the key is returned.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&#010;+response will be Managed Repository &amp;quot; foo &amp;quot; deleted.&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Missing properties&lt;a name="Missing_properties"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;p&gt;In case of missing property, the key is returned.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&#010;                   &lt;/div&gt;&#010;           &lt;/div&gt;&#010; &#010;&#010;Modified: archiva/site-content/jsui/index.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/jsui/index.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/jsui/index.html (original)&#010;+++ archiva/site-content/jsui/index.html Sat Jun  8 14:05:28 2013&#010;@@ -9,7 +9,7 @@&#010;     &lt;meta charset="UTF-8" /&gt;&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;     &lt;meta name="author" content="Olivier Lamy" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - &#010;     Archiva Javascript application General design&lt;/title&gt;&#010;@@ -207,7 +207,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -240,11 +240,26 @@&#010;     &lt;script type="text/javascript" src="../js/fancy-box-activation.js"&gt;&lt;/script&gt;&#010; &#010; &#010;-    &lt;ul&gt;&lt;li&gt;&lt;a href="#Archiva_Javascript_Web_Application"&gt;Archiva Javascript Web Application&lt;/a&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="#General_design"&gt;General design&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#Runtime_Properties"&gt;Runtime Properties&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#Used_Javascript_frameworks"&gt;Used Javascript frameworks&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#Sources_organisation"&gt;Sources organisation&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#js_directory"&gt;js directory&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#Start_page"&gt;Start page&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#Gridedit_model"&gt;Grid/edit model&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&#010;+    &#010;+&lt;ul&gt;&#010;+&lt;li&gt;&lt;a href="#Archiva_Javascript_Web_Application"&gt;Archiva Javascript Web Application&lt;/a&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;&lt;a href="#General_design"&gt;General design&lt;/a&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;a href="#Runtime_Properties"&gt;Runtime Properties&lt;/a&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;a href="#Used_Javascript_frameworks"&gt;Used Javascript frameworks&lt;/a&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;a href="#Sources_organisation"&gt;Sources organisation&lt;/a&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;a href="#js_directory"&gt;js directory&lt;/a&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;a href="#Start_page"&gt;Start page&lt;/a&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;a href="#Gridedit_model"&gt;Grid/edit model&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&#010; &#010;-    &lt;div class="section"&gt;&lt;h2&gt;Archiva Javascript Web Application&lt;a name="Archiva_Javascript_Web_Application"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;-      &lt;div class="section"&gt;&lt;h3&gt;General design&lt;a name="General_design"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;-        &lt;p&gt;&#010;+    &#010;+&lt;div class="section"&gt;&#010;+&lt;h2&gt;Archiva Javascript Web Application&lt;a name="Archiva_Javascript_Web_Application"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+      &#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;General design&lt;a name="General_design"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+        &#010;+&lt;p&gt;&#010;           The goal is to have a &amp;quot;one page loading&amp;quot; javascript application.&#010;           &lt;br /&gt;&#010;           For this the only html page will contains a div with id &amp;quot;main-content&amp;quot; this div will be populated&#010;@@ -257,82 +272,125 @@&#010;           As we are not designer :-), the application will use the &lt;a class="externalLink" href="http://twitter.github.com/bootstrap" target="_blank"&gt;twitter bootstrap css&lt;/a&gt;.&#010;         &lt;/p&gt;&#010;       &lt;/div&gt;&#010;-      &lt;div class="section"&gt;&lt;h3&gt;Runtime Properties&lt;a name="Runtime_Properties"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;-        &lt;p&gt;The application is designed to use http cache mechanism for css, javascript. Except REST call to get datas which will never use cache as a query timestamp parameter is used.&#010;+      &#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Runtime Properties&lt;a name="Runtime_Properties"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+        &#010;+&lt;p&gt;The application is designed to use http cache mechanism for css, javascript. Except REST call to get datas which will never use cache as a query timestamp parameter is used.&#010;           But as this can cause issue in developpement phase, two system properties (disabled by default) prevent can prevent caching and/or help debuging&#010;-          &lt;/p&gt;&lt;ul&gt;&#010;-            &lt;li&gt;archiva.devMode=true/false: if true will add a timestamp query parameter for loading js and html templates.&lt;/li&gt;&#010;-            &lt;li&gt;archiva.javascriptLog=true/false: will activate javascript log, method available with $.log(msg)&lt;/li&gt;&#010;-            &lt;li&gt;archiva.logMissingI18n=true/false: will activate remote logging of missing i18n key in the servlet container log:  INFO  archivaMissingi18n.logger  - missing i18n key : 'proxy-connectors.grid.managedrepo.title'&lt;/li&gt;&#010;+          &lt;/p&gt;&#010;+&lt;ul&gt;&#010;+            &#010;+&lt;li&gt;archiva.devMode=true/false: if true will add a timestamp query parameter for loading js and html templates.&lt;/li&gt;&#010;+            &#010;+&lt;li&gt;archiva.javascriptLog=true/false: will activate javascript log, method available with $.log(msg)&lt;/li&gt;&#010;+            &#010;+&lt;li&gt;archiva.logMissingI18n=true/false: will activate remote logging of missing i18n key in the servlet container log:  INFO  archivaMissingi18n.logger  - missing i18n key : 'proxy-connectors.grid.managedrepo.title'&lt;/li&gt;&#010;           &lt;/ul&gt;&#010;         &#010;       &lt;/div&gt;&#010;-      &lt;div class="section"&gt;&lt;h3&gt;Used Javascript frameworks&lt;a name="Used_Javascript_frameworks"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;-        &lt;p&gt;&#010;+      &#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Used Javascript frameworks&lt;a name="Used_Javascript_frameworks"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+        &#010;+&lt;p&gt;&#010;         We use some well known javascript framework librairies :&#010;-        &lt;/p&gt;&lt;ul&gt;&#010;-          &lt;li&gt;&lt;a class="externalLink" href="http://jquery.com/" target="_blank"&gt;jquery&lt;/a&gt;.&lt;/li&gt;&#010;+        &lt;/p&gt;&#010;+&lt;ul&gt;&#010;+          &#010;+&lt;li&gt;&lt;a class="externalLink" href="http://jquery.com/" target="_blank"&gt;jquery&lt;/a&gt;.&lt;/li&gt;&#010; &#010;-          &lt;li&gt;&lt;a class="externalLink" href="http://sammyjs.org" target="_blank"&gt;sammyjs for hash navigation&lt;/a&gt;&lt;/li&gt;&#010;+          &#010;+&lt;li&gt;&lt;a class="externalLink" href="http://sammyjs.org" target="_blank"&gt;sammyjs for hash navigation&lt;/a&gt;&lt;/li&gt;&#010; &#010;-          &lt;li&gt;&lt;a class="externalLink" href="http://requirejs.org" target="_blank"&gt;requirejs&lt;/a&gt; for template loading (see &lt;a href="./template-loading.html"&gt;details&lt;/a&gt;).&lt;/li&gt;&#010;+          &#010;+&lt;li&gt;&lt;a class="externalLink" href="http://requirejs.org" target="_blank"&gt;requirejs&lt;/a&gt; for template loading (see &lt;a href="./template-loading.html"&gt;details&lt;/a&gt;).&lt;/li&gt;&#010; &#010;-          &lt;li&gt;&lt;a class="externalLink" href="http://code.google.com/p/jquery-i18n-properties" target="_blank"&gt;jquery-i18n-properties&lt;/a&gt; for i18n loading (see &lt;a href="./i18n.html"&gt;details&lt;/a&gt;).&lt;/li&gt;&#010;+          &#010;+&lt;li&gt;&lt;a class="externalLink" href="http://code.google.com/p/jquery-i18n-properties" target="_blank"&gt;jquery-i18n-properties&lt;/a&gt; for i18n loading (see &lt;a href="./i18n.html"&gt;details&lt;/a&gt;).&lt;/li&gt;&#010; &#010;-          &lt;li&gt;&lt;a class="externalLink" href="http://knockoutjs.com" target="_blank"&gt;knockoutjs&lt;/a&gt; as we use a MVVM pattern (see &lt;a href="./knockout-binding.html"&gt;knockout binding&lt;/a&gt;).&lt;/li&gt;&#010;+          &#010;+&lt;li&gt;&lt;a class="externalLink" href="http://knockoutjs.com" target="_blank"&gt;knockoutjs&lt;/a&gt; as we use a MVVM pattern (see &lt;a href="./knockout-binding.html"&gt;knockout binding&lt;/a&gt;).&lt;/li&gt;&#010; &#010;-          &lt;li&gt;&lt;a class="externalLink" href="http://twitter.github.com/bootstrap/javascript.html" target="_blank"&gt;twitter bootstrap js&lt;/a&gt; to magnify the ui.&lt;/li&gt;&#010;+          &#010;+&lt;li&gt;&lt;a class="externalLink" href="http://twitter.github.com/bootstrap/javascript.html" target="_blank"&gt;twitter bootstrap js&lt;/a&gt; to magnify the ui.&lt;/li&gt;&#010; &#010;-          &lt;li&gt;&lt;a class="externalLink" href="http://bassistance.de/jquery-plugins/jquery-plugin-validation" target="_blank"&gt;jquery validate&lt;/a&gt; for form validation.&lt;/li&gt;&#010;+          &#010;+&lt;li&gt;&lt;a class="externalLink" href="http://bassistance.de/jquery-plugins/jquery-plugin-validation" target="_blank"&gt;jquery validate&lt;/a&gt; for form validation.&lt;/li&gt;&#010;         &lt;/ul&gt;&#010;         &#010;       &lt;/div&gt;&#010;-      &lt;div class="section"&gt;&lt;h3&gt;Sources organisation&lt;a name="Sources_organisation"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;-        &lt;p&gt;&#010;+      &#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Sources organisation&lt;a name="Sources_organisation"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+        &#010;+&lt;p&gt;&#010;           Sources are located in &lt;a class="externalLink" href="http://svn.apache.org/repos/asf/archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/webapp/" target="_blank"&gt;src/main/webapp&lt;/a&gt; :&#010;-          &lt;/p&gt;&lt;ul&gt;&#010;-            &lt;li&gt;css&lt;/li&gt;&#010;-            &lt;li&gt;images&lt;/li&gt;&#010;-            &lt;li&gt;js&lt;/li&gt;&#010;+          &lt;/p&gt;&#010;+&lt;ul&gt;&#010;+            &#010;+&lt;li&gt;css&lt;/li&gt;&#010;+            &#010;+&lt;li&gt;images&lt;/li&gt;&#010;+            &#010;+&lt;li&gt;js&lt;/li&gt;&#010;           &lt;/ul&gt;&#010;         &#010;-        &lt;/div&gt;&lt;div class="section"&gt;&lt;h3&gt;js directory&lt;a name="js_directory"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;-          &lt;p&gt;&#010;+        &lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;js directory&lt;a name="js_directory"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+          &#010;+&lt;p&gt;&#010;             Root directory contains external libraries.&#010;           &lt;/p&gt;&#010;-          &lt;p&gt;&#010;+          &#010;+&lt;p&gt;&#010;             archiva directory contains archiva js files with a subdirectory templates which contains templates&#010;           &lt;/p&gt;&#010;-          &lt;p&gt;&#010;+          &#010;+&lt;p&gt;&#010;             redback directory contains redback js files with a subdirectory templates which contains templates&#010;           &lt;/p&gt;&#010;         &lt;/div&gt;&#010;       &#010; &#010;-      &lt;div class="section"&gt;&lt;h3&gt;Start page&lt;a name="Start_page"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;-        &lt;p&gt;&#010;+      &#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Start page&lt;a name="Start_page"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+        &#010;+&lt;p&gt;&#010;           The main page will load javascript files, load &lt;a href="./i18n.html"&gt;i18n&lt;/a&gt;, &lt;a href="./template-loading.html"&gt;load templates&lt;/a&gt; and insert menu.&#010;           &lt;br /&gt;&#010;           This main page is divided in 3 parts:&#010;-          &lt;p&gt;&#010;+          &#010;+&lt;p&gt;&#010;             &lt;a href="../images/start-screen.png" class="single_image" title="Start Page"&gt;&#010;               &lt;img src="../images/start-screen.png" width="150" height="93" style="border: 1px solid silver; margin-left: 0.25em; margin-bottom: 0.25em" alt="" /&gt;&lt;br /&gt;&#010;               Start Page&#010;             &lt;/a&gt;&#010;           &lt;/p&gt;&#010;-          &lt;p&gt;&#010;-            &lt;/p&gt;&lt;ul&gt;&#010;-              &lt;li&gt;#topbar-menu-container is populated with the template js/archiva/templates/topbar.html.&lt;/li&gt;&#010;-              &lt;li&gt;#sidebar-content is populated with the template js/archiva/templates/menu.html.&lt;/li&gt;&#010;-              &lt;li&gt;#main-content is the place where screen will appear.&lt;/li&gt;&#010;-              &lt;li&gt;hidden #html-fragments will contains loaded templates.&lt;/li&gt;&#010;+          &#010;+&lt;p&gt;&#010;+            &lt;/p&gt;&#010;+&lt;ul&gt;&#010;+              &#010;+&lt;li&gt;#topbar-menu-container is populated with the template js/archiva/templates/topbar.html.&lt;/li&gt;&#010;+              &#010;+&lt;li&gt;#sidebar-content is populated with the template js/archiva/templates/menu.html.&lt;/li&gt;&#010;+              &#010;+&lt;li&gt;#main-content is the place where screen will appear.&lt;/li&gt;&#010;+              &#010;+&lt;li&gt;hidden #html-fragments will contains loaded templates.&lt;/li&gt;&#010;             &lt;/ul&gt;&#010;           &#010;-          &lt;p&gt;&#010;+          &#010;+&lt;p&gt;&#010;             Link are visible/hide depending on needed redback karmas.&#010;             You can configure redback operations needed for a link using the attribute redback-permissions in your html element&#010;             (by default element needed karma must be marked display: none):&#010;-            &lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;&#010;+            &lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;&#010; &#010; Support array: at least one operation is needed:&#010; &amp;lt;div .... redback-permissions=&amp;quot;{permissions: ['archiva-manage-users','archiva-manage-configuration']}&amp;quot; style=&amp;quot;display: none&amp;quot;&amp;gt;&#010;@@ -345,17 +403,23 @@ Support single value:&#010;         &#010;       &lt;/div&gt;&#010; &#010;-      &lt;div class="section"&gt;&lt;h3&gt;Grid/edit model&lt;a name="Gridedit_model"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;-        &lt;p&gt;We use a tab/pill models to display grid of datas and edit/add form:&#010;-          &lt;/p&gt;&lt;ul&gt;&#010;-            &lt;li&gt;&#010;+      &#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Grid/edit model&lt;a name="Gridedit_model"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+        &#010;+&lt;p&gt;We use a tab/pill models to display grid of datas and edit/add form:&#010;+          &lt;/p&gt;&#010;+&lt;ul&gt;&#010;+            &#010;+&lt;li&gt;&#010;               One tab/pill display the grid&#010;               &lt;a href="../images/repo-grids.png" class="single_image" title="Repositories Grid"&gt;&#010;                 &lt;img src="../images/repo-grids.png" width="150" height="93" style="border: 1px solid silver; margin-left: 0.25em; margin-bottom: 0.25em" alt="" /&gt;&lt;br /&gt;&#010;                 Repositories Grid&#010;               &lt;/a&gt;&#010;             &lt;/li&gt;&#010;-            &lt;li&gt;&#010;+            &#010;+&lt;li&gt;&#010;               One tab/pill display the edit/add form. &lt;b&gt;As we use knockout framework grid will be updated with new value from add/edit form automatically.&lt;/b&gt;&#010;               &lt;a href="../images/repo-edit.png" class="single_image" title="Repositories Edit/Add"&gt;&#010;                 &lt;img src="../images/repo-edit.png" width="150" height="93" style="border: 1px solid silver; margin-left: 0.25em; margin-bottom: 0.25em" alt="" /&gt;&lt;br /&gt;&#010;&#010;Modified: archiva/site-content/jsui/knockout-binding.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/jsui/knockout-binding.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/jsui/knockout-binding.html (original)&#010;+++ archiva/site-content/jsui/knockout-binding.html Sat Jun  8 14:05:28 2013&#010;@@ -10,7 +10,7 @@&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;     &lt;meta name="author" content="Olivier Lamy" /&gt;&#010;     &lt;meta name="Date-Creation-yyyymmdd" content="20120119" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - Knockout binding&lt;/title&gt;&#010;     &lt;link rel="stylesheet" href="../css/apache-maven-fluido-1.3.1-SNAPSHOT.min.css" /&gt;&#010;@@ -206,7 +206,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -215,7 +215,27 @@&#010;                 &#010;         &lt;div id="bodyColumn" &gt;&#010;                                   &#010;-            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;!-- NOTE: For help with the syntax of this file, see: --&gt;&lt;!-- http://maven.apache.org/guides/mi&#010; ni/guide-apt-format.html --&gt;&lt;div class="section"&gt;&lt;h2&gt;Knockout binding&lt;a name="Knockout_binding"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;Explanation on the managed repositories list/edit/add screen.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="#Knockout_binding"&gt;Knockout binding&lt;/a&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="#Javascript_Beans"&gt;Javascript Beans&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#View_Model"&gt;View Model&lt;/a&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="#First_you_must_insert_your_template_in_the_main-content_div"&gt;First you must insert your template in the #main-content div&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#You_can_now_create_your_view_model."&gt;You can now create your view model.&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#Grid_binding"&gt;Grid binding&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#View_definition"&gt;View definition&lt;/a&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="#Binding_definition"&gt;Binding definition&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#Template_content"&gt;Template content&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="section"&gt;&lt;h3&gt;Javascript Beans&lt;a name="Javascript_Beans"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;First you must map the json response on a Javascript bean (a bit borying task :-&#010; ) )&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;Java class with fields&#010;+            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;!-- NOTE: For help with the syntax of this file, see: --&gt;&lt;!-- http://maven.apache.org/guides/mi&#010; ni/guide-apt-format.html --&gt;&lt;div class="section"&gt;&#010;+&lt;h2&gt;Knockout binding&lt;a name="Knockout_binding"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+&lt;p&gt;Explanation on the managed repositories list/edit/add screen.&lt;/p&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;&lt;a href="#Knockout_binding"&gt;Knockout binding&lt;/a&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;&lt;a href="#Javascript_Beans"&gt;Javascript Beans&lt;/a&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;a href="#View_Model"&gt;View Model&lt;/a&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;&lt;a href="#First_you_must_insert_your_template_in_the_main-content_div"&gt;First you must insert your template in the #main-content div&lt;/a&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;a href="#You_can_now_create_your_view_model."&gt;You can now create your view model.&lt;/a&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;a href="#Grid_binding"&gt;Grid binding&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;a href="#View_definition"&gt;View definition&lt;/a&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;&lt;a href="#Binding_definition"&gt;Binding definition&lt;/a&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;a href="#Template_content"&gt;Template content&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Javascript Beans&lt;a name="Javascript_Beans"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;p&gt;First you must map the json response on a Javascript bean (a bit borying task :-) )&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;Java class with fields&#010; &#010; public class ManagedRepository&#010;   //private String id;&#010;@@ -246,8 +266,19 @@ mapping function (to map the json result&#010;                                  data.blockRedeployments,data.cronExpression,&#010;                                  data.scanned,data.daysOlder,data.retentionCount,data.deleteReleasedSnapshots,data.stageRepoNeeded);&#010;   }&#010;-&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;tt&gt;NOTE to have access to field values you must now managedRepository.name() &lt;/tt&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h3&gt;View Model&lt;a name="View_Model"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="section"&gt;&lt;h4&gt;First you must insert your template in the #main-content div&lt;a name="First_you_must_insert_your_template_in_the_main-content_div"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;// it's a jquery template as we do some i18n transformations&#010;-$(&amp;quot;#main-content&amp;quot;).html($(&amp;quot;#repositoriesMain&amp;quot;).tmpl());&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h4&gt;You can now create your view model.&lt;a name="You_can_now_create_your_view_model."&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;ManagedRepositoriesViewModel=function(){&#010;+&lt;/pre&gt;&lt;/div&gt;&#010;+&lt;p&gt;&lt;tt&gt;NOTE to have access to field values you must now managedRepository.name() &lt;/tt&gt;&lt;/p&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;View Model&lt;a name="View_Model"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h4&gt;First you must insert your template in the #main-content div&lt;a name="First_you_must_insert_your_template_in_the_main-content_div"&gt;&lt;/a&gt;&lt;/h4&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;// it's a jquery template as we do some i18n transformations&#010;+$(&amp;quot;#main-content&amp;quot;).html($(&amp;quot;#repositoriesMain&amp;quot;).tmpl());&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h4&gt;You can now create your view model.&lt;a name="You_can_now_create_your_view_model."&gt;&lt;/a&gt;&lt;/h4&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;ManagedRepositoriesViewModel=function(){&#010;   //field which will receive values&#010;   this.managedRepositories=ko.observableArray([]);&#010;   // method which will edit an entry: an other view model is created&#010;@@ -261,7 +292,13 @@ $(&amp;quot;#main-content&amp;quot;).html($(&amp;quo&#010;   removeManagedRepository=function(managedRepository){&#010;     ......&#010;   }&#010;-}&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h4&gt;Grid binding&lt;a name="Grid_binding"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;The ManagedRepositoriesViewModel is used as it with a custom grid binding (knockout has a feature to create own binding so we use one called &lt;tt&gt;simpleGrid&lt;/tt&gt; which will display grids.&lt;/p&gt;&lt;p&gt;Grid view initialisation code (some details omitted) :&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;    var managedRepositoriesViewModel = new ManagedRepositoriesViewModel();&#010;+}&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h4&gt;Grid binding&lt;a name="Grid_binding"&gt;&lt;/a&gt;&lt;/h4&gt;&#010;+&lt;p&gt;The ManagedRepositoriesViewModel is used as it with a custom grid binding (knockout has a feature to create own binding so we use one called &lt;tt&gt;simpleGrid&lt;/tt&gt; which will display grids.&lt;/p&gt;&#010;+&lt;p&gt;Grid view initialisation code (some details omitted) :&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;    var managedRepositoriesViewModel = new ManagedRepositoriesViewModel();&#010; &#010;     $.ajax(&amp;quot;restServices/archivaServices/managedRepositoriesService/getManagedRepositories&amp;quot;, {&#010;         type: &amp;quot;GET&amp;quot;,&#010;@@ -299,9 +336,26 @@ $(&amp;quot;#main-content&amp;quot;).html($(&amp;quo&#010;           ko.applyBindings(managedRepositoriesViewModel,$(&amp;quot;#main-content #managed-repositories-table&amp;quot;).get(0));&#010;         }&#010;       }&#010;-    );&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h3&gt;View definition&lt;a name="View_definition"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="section"&gt;&lt;h4&gt;Binding definition&lt;a name="Binding_definition"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;We have applyed binding on the node with id &amp;quot;#managed-repositories-table&amp;quot;. The binding definition is:&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;  &amp;lt;table class=&amp;quot;bordered-table zebra-striped&amp;quot; id=&amp;quot;managed-repositories-table&amp;quot;&#010;+    );&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;View definition&lt;a name="View_definition"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h4&gt;Binding definition&lt;a name="Binding_definition"&gt;&lt;/a&gt;&lt;/h4&gt;&#010;+&lt;p&gt;We have applyed binding on the node with id &amp;quot;#managed-repositories-table&amp;quot;. The binding definition is:&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;  &amp;lt;table class=&amp;quot;bordered-table zebra-striped&amp;quot; id=&amp;quot;managed-repositories-table&amp;quot;&#010;          data-bind=&amp;quot;simpleGrid: gridViewModel,simpleGridTemplate:'ko_managed-repositoriesGrid',pageLinksId:'managed-repositoriesPagination',data:'managedRepositories'&amp;quot;&amp;gt;&#010;-  &amp;lt;/table&amp;gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;simpleGrid: gridViewModel = field name for the view model (see sample above)&lt;/li&gt;&lt;li&gt;simpleGridTemplate:'ko_managed-repositoriesGrid' = name of the template to use (see below)&lt;/li&gt;&lt;li&gt;pageLinksId:'managed-repositoriesPagination' = name of the template to use for pagination.&lt;/li&gt;&lt;li&gt;data:'managedRepositories' = fields which contains data to pass to pass to the template&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h4&gt;Template content&lt;a name="Template_content"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;Template used for grid display (some details omitted).&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;&amp;lt;script id='ko_managed-repositoriesGrid' type='text/x-jquery-tmpl'&amp;gt;&#010;+  &amp;lt;/table&amp;gt;&lt;/pre&gt;&lt;/div&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;simpleGrid: gridViewModel = field name for the view model (see sample above)&lt;/li&gt;&#010;+&lt;li&gt;simpleGridTemplate:'ko_managed-repositoriesGrid' = name of the template to use (see below)&lt;/li&gt;&#010;+&lt;li&gt;pageLinksId:'managed-repositoriesPagination' = name of the template to use for pagination.&lt;/li&gt;&#010;+&lt;li&gt;data:'managedRepositories' = fields which contains data to pass to pass to the template&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h4&gt;Template content&lt;a name="Template_content"&gt;&lt;/a&gt;&lt;/h4&gt;&#010;+&lt;p&gt;Template used for grid display (some details omitted).&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;&amp;lt;script id='ko_managed-repositoriesGrid' type='text/x-jquery-tmpl'&amp;gt;&#010;   &amp;lt;thead&amp;gt;&#010;       &amp;lt;tr&amp;gt;&#010;         // display read only fields defined in ko.simpleGrid.viewModel.columns (see above)&#010;&#010;Modified: archiva/site-content/jsui/rest.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/jsui/rest.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/jsui/rest.html (original)&#010;+++ archiva/site-content/jsui/rest.html Sat Jun  8 14:05:28 2013&#010;@@ -10,7 +10,7 @@&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;     &lt;meta name="author" content="Olivier Lamy" /&gt;&#010;     &lt;meta name="Date-Creation-yyyymmdd" content="20120119" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - REST Services&lt;/title&gt;&#010;     &lt;link rel="stylesheet" href="../css/apache-maven-fluido-1.3.1-SNAPSHOT.min.css" /&gt;&#010;@@ -206,7 +206,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -215,12 +215,48 @@&#010;                 &#010;         &lt;div id="bodyColumn" &gt;&#010;                                   &#010;-            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;!-- NOTE: For help with the syntax of this file, see: --&gt;&lt;!-- http://maven.apache.org/guides/mi&#010; ni/guide-apt-format.html --&gt;&lt;div class="section"&gt;&lt;h2&gt;Expose Rest Services&lt;a name="Expose_Rest_Services"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;The &lt;a class="externalLink" href="http://cxf.apache.org"&gt;Apache CXF&lt;/a&gt; is used to expose some classes/methods as REST Services.&lt;/p&gt;&lt;p&gt;Services use the standard interface/implementation pattern:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;interfaces and beans are located in archiva-rest-api maven module&lt;/li&gt;&lt;li&gt;implementation are located in archiva-rest-services maven module&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="#Expose_Rest_Services"&gt;Expose Rest Services&lt;/a&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="#Steps_to_expose_your_class_as_a_REST_Service."&gt;Steps to expose your class as a REST Service.&lt;/a&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="#Interface_and_data_beans"&gt;Interface and data beans&lt;/a&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="#Beans"&gt;Beans&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#JAXRS_annotations"&gt;JAXRS annotations&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#CXFSpring_configuration"&gt;CXF/Spring configuration&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="#Redback_security_annotation"&gt;Redback security annotation&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&#010; &lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="section"&gt;&lt;h3&gt;Steps to expose your class as a REST Service.&lt;a name="Steps_to_expose_your_class_as_a_REST_Service."&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Here all the steps to expose a new class as a REST service.&lt;/p&gt;&lt;div class="section"&gt;&lt;h4&gt;Interface and data beans&lt;a name="Interface_and_data_beans"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;All interfaces and data beans are added in the module archiva-rest-api:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;interface in the package: org.apache.archiva.rest.api.services .&lt;/li&gt;&lt;li&gt;data beans in the package: org.apache.archiva.rest.api.model .&lt;/li&gt;&lt;/ul&gt;&lt;div class="section"&gt;&lt;h5&gt;Beans&lt;a name="Beans"&gt;&lt;/a&gt;&lt;/h5&gt;&lt;p&gt;As we want to be able to expose result as json or xml type, all beans use javax.xml.bind.annotation root element :&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;@XmlRootElement( name = &amp;quot;artifact&amp;quot; )&#010;+            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;!-- NOTE: For help with the syntax of this file, see: --&gt;&lt;!-- http://maven.apache.org/guides/mi&#010; ni/guide-apt-format.html --&gt;&lt;div class="section"&gt;&#010;+&lt;h2&gt;Expose Rest Services&lt;a name="Expose_Rest_Services"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+&lt;p&gt;The &lt;a class="externalLink" href="http://cxf.apache.org"&gt;Apache CXF&lt;/a&gt; is used to expose some classes/methods as REST Services.&lt;/p&gt;&#010;+&lt;p&gt;Services use the standard interface/implementation pattern:&lt;/p&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;interfaces and beans are located in archiva-rest-api maven module&lt;/li&gt;&#010;+&lt;li&gt;implementation are located in archiva-rest-services maven module&lt;/li&gt;&lt;/ul&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;&lt;a href="#Expose_Rest_Services"&gt;Expose Rest Services&lt;/a&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;&lt;a href="#Steps_to_expose_your_class_as_a_REST_Service."&gt;Steps to expose your class as a REST Service.&lt;/a&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;&lt;a href="#Interface_and_data_beans"&gt;Interface and data beans&lt;/a&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;&lt;a href="#Beans"&gt;Beans&lt;/a&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;a href="#JAXRS_annotations"&gt;JAXRS annotations&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;a href="#CXFSpring_configuration"&gt;CXF/Spring configuration&lt;/a&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;a href="#Redback_security_annotation"&gt;Redback security annotation&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Steps to expose your class as a REST Service.&lt;a name="Steps_to_expose_your_class_as_a_REST_Service."&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;p&gt;Here all the steps to expose a new class as a REST service.&lt;/p&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h4&gt;Interface and data beans&lt;a name="Interface_and_data_beans"&gt;&lt;/a&gt;&lt;/h4&gt;&#010;+&lt;p&gt;All interfaces and data beans are added in the module archiva-rest-api:&lt;/p&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;interface in the package: org.apache.archiva.rest.api.services .&lt;/li&gt;&#010;+&lt;li&gt;data beans in the package: org.apache.archiva.rest.api.model .&lt;/li&gt;&lt;/ul&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h5&gt;Beans&lt;a name="Beans"&gt;&lt;/a&gt;&lt;/h5&gt;&#010;+&lt;p&gt;As we want to be able to expose result as json or xml type, all beans use javax.xml.bind.annotation root element :&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;@XmlRootElement( name = &amp;quot;artifact&amp;quot; )&#010; public class Artifact&#010;     implements Serializable&#010; &#010; All services will be able to return json or xml&#010;-@Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML } )&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h5&gt;JAXRS annotations&lt;a name="JAXRS_annotations"&gt;&lt;/a&gt;&lt;/h5&gt;&lt;p&gt;As we use interfaces/implementations pattern jaxrs annotations are only in interfaces level.&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;@Path( &amp;quot;/managedRepositoriesService/&amp;quot; )&#010;+@Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML } )&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h5&gt;JAXRS annotations&lt;a name="JAXRS_annotations"&gt;&lt;/a&gt;&lt;/h5&gt;&#010;+&lt;p&gt;As we use interfaces/implementations pattern jaxrs annotations are only in interfaces level.&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;@Path( &amp;quot;/managedRepositoriesService/&amp;quot; )&#010; public interface ManagedRepositoriesService&#010; {&#010;     // simple GET method no parameter&#010;@@ -245,12 +281,20 @@ public interface ManagedRepositoriesServ&#010;     @Produces( { MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML } )&#010;     @RedbackAuthorization( permissions = ArchivaRoleConstants.OPERATION_MANAGE_CONFIGURATION )&#010;     ManagedRepository addManagedRepository( ManagedRepository managedRepository )&#010;-        throws ArchivaRestServiceException;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h4&gt;CXF/Spring configuration&lt;a name="CXFSpring_configuration"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;REST services implementations are marked with the Spring annotation @Service&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;package org.apache.archiva.rest.services;&#010;+        throws ArchivaRestServiceException;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h4&gt;CXF/Spring configuration&lt;a name="CXFSpring_configuration"&gt;&lt;/a&gt;&lt;/h4&gt;&#010;+&lt;p&gt;REST services implementations are marked with the Spring annotation @Service&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;package org.apache.archiva.rest.services;&#010; ......&#010; @Service( &amp;quot;managedRepositoriesService#rest&amp;quot; )&#010; public class DefaultManagedRepositoriesService&#010;     extends AbstractRestService&#010;-    implements ManagedRepositoriesService&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Spring beans are declared as REST/CXF services in the Spring configuration&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;  &amp;lt;jaxrs:server id=&amp;quot;archivaServices&amp;quot; address=&amp;quot;/archivaServices&amp;quot;&amp;gt;&#010;+    implements ManagedRepositoriesService&lt;/pre&gt;&lt;/div&gt;&#010;+&lt;p&gt;Spring beans are declared as REST/CXF services in the Spring configuration&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;  &amp;lt;jaxrs:server id=&amp;quot;archivaServices&amp;quot; address=&amp;quot;/archivaServices&amp;quot;&amp;gt;&#010;     .....&#010;     &amp;lt;jaxrs:serviceBeans&amp;gt;&#010;       &amp;lt;ref bean=&amp;quot;managedRepositoriesService#rest&amp;quot;/&amp;gt;&#010;@@ -271,7 +315,10 @@ public class DefaultManagedRepositoriesS&#010;       base-package=&amp;quot;org.apache.archiva.rest.services&amp;quot;/&amp;gt;&#010; &#010; ...&#010;-&amp;lt;/beans&amp;gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;CXF servlet is declared as:&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;  &amp;lt;servlet&amp;gt;&#010;+&amp;lt;/beans&amp;gt;&lt;/pre&gt;&lt;/div&gt;&#010;+&lt;p&gt;CXF servlet is declared as:&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;  &amp;lt;servlet&amp;gt;&#010;     &amp;lt;servlet-name&amp;gt;CXFServlet&amp;lt;/servlet-name&amp;gt;&#010;     &amp;lt;servlet-class&amp;gt;org.apache.cxf.transport.servlet.CXFServlet&amp;lt;/servlet-class&amp;gt;&#010;     &amp;lt;load-on-startup&amp;gt;1&amp;lt;/load-on-startup&amp;gt;&#010;@@ -280,10 +327,18 @@ public class DefaultManagedRepositoriesS&#010;   &amp;lt;servlet-mapping&amp;gt;&#010;     &amp;lt;servlet-name&amp;gt;CXFServlet&amp;lt;/servlet-name&amp;gt;&#010;     &amp;lt;url-pattern&amp;gt;/restServices/*&amp;lt;/url-pattern&amp;gt;&#010;-  &amp;lt;/servlet-mapping&amp;gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;So as it, REST services are availble in the following url &lt;b&gt;restServices/archivaServices/&lt;/b&gt;.&lt;/p&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h4&gt;Redback security annotation&lt;a name="Redback_security_annotation"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;Some REST methods need some karma, so to prevent anonymous access methods can be marked as it:&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;&#010;+  &amp;lt;/servlet-mapping&amp;gt;&lt;/pre&gt;&lt;/div&gt;&#010;+&lt;p&gt;So as it, REST services are availble in the following url &lt;b&gt;restServices/archivaServices/&lt;/b&gt;.&lt;/p&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h4&gt;Redback security annotation&lt;a name="Redback_security_annotation"&gt;&lt;/a&gt;&lt;/h4&gt;&#010;+&lt;p&gt;Some REST methods need some karma, so to prevent anonymous access methods can be marked as it:&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;&#010;     @RedbackAuthorization( permissions = ArchivaRoleConstants.OPERATION_MANAGE_CONFIGURATION )&#010;     ManagedRepository addManagedRepository( ManagedRepository managedRepository )&#010;-        throws ArchivaRestServiceException;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;This method will need the current user to have the operation manage-configuration level.&lt;/p&gt;&lt;p&gt;For more details, have a look at &lt;a class="externalLink" href="http://archiva.apache.org/redback/integration/rest.html"&gt;Redback REST&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&#010;+        throws ArchivaRestServiceException;&lt;/pre&gt;&lt;/div&gt;&#010;+&lt;p&gt;This method will need the current user to have the operation manage-configuration level.&lt;/p&gt;&#010;+&lt;p&gt;For more details, have a look at &lt;a class="externalLink" href="http://archiva.apache.org/redback/integration/rest.html"&gt;Redback REST&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&#010;                   &lt;/div&gt;&#010;           &lt;/div&gt;&#010; &#010;&#010;Modified: archiva/site-content/jsui/template-loading.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/jsui/template-loading.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/jsui/template-loading.html (original)&#010;+++ archiva/site-content/jsui/template-loading.html Sat Jun  8 14:05:28 2013&#010;@@ -10,7 +10,7 @@&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;     &lt;meta name="author" content="Olivier Lamy" /&gt;&#010;     &lt;meta name="Date-Creation-yyyymmdd" content="20120914" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - Javascript template loading&lt;/title&gt;&#010;     &lt;link rel="stylesheet" href="../css/apache-maven-fluido-1.3.1-SNAPSHOT.min.css" /&gt;&#010;@@ -206,7 +206,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -215,7 +215,13 @@&#010;                 &#010;         &lt;div id="bodyColumn" &gt;&#010;                                   &#010;-            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;!-- NOTE: For help with the syntax of this file, see: --&gt;&lt;!-- http://maven.apache.org/guides/mi&#010; ni/guide-apt-format.html --&gt;&lt;div class="section"&gt;&lt;h2&gt;Html/Javascript templates loading&lt;a name="HtmlJavascript_templates_loading"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;Templates are loaded on application loaded and added in the hidden div &lt;b&gt;#html-fragments&lt;/b&gt;.&lt;/p&gt;&lt;p&gt;They are loaded using requirejs and the text plugin.&lt;/p&gt;&lt;p&gt;archiva templates are loaded as it &lt;tt&gt;NOTE: the no cache is activated only on dev mode&lt;/tt&gt;&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;require(['jquery',&amp;quot;jquery.tmpl&amp;quot;,'i18n',&amp;quot;utils&amp;quot;,&amp;quot;text!templates/archiva/menu.html&amp;quot;,&#010;+            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;!-- NOTE: For help with the syntax of this file, see: --&gt;&lt;!-- http://maven.apache.org/guides/mi&#010; ni/guide-apt-format.html --&gt;&lt;div class="section"&gt;&#010;+&lt;h2&gt;Html/Javascript templates loading&lt;a name="HtmlJavascript_templates_loading"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+&lt;p&gt;Templates are loaded on application loaded and added in the hidden div &lt;b&gt;#html-fragments&lt;/b&gt;.&lt;/p&gt;&#010;+&lt;p&gt;They are loaded using requirejs and the text plugin.&lt;/p&gt;&#010;+&lt;p&gt;archiva templates are loaded as it &lt;tt&gt;NOTE: the no cache is activated only on dev mode&lt;/tt&gt;&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;require(['jquery',&amp;quot;jquery.tmpl&amp;quot;,'i18n',&amp;quot;utils&amp;quot;,&amp;quot;text!templates/archiva/menu.html&amp;quot;,&#010;           &amp;quot;text!templates/archiva/generics.html&amp;quot;,&#010;           &amp;quot;text!templates/archiva/modal.html&amp;quot;,&#010;           &amp;quot;text!templates/archiva/repositories.html&amp;quot;,&#010;@@ -235,12 +241,23 @@&#010;       $.log(&amp;quot;main-tmpl.js loaded&amp;quot;);&#010;     }&#010;   }&#010;-);&lt;/pre&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h3&gt;i18n in templates&lt;a name="i18n_in_templates"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="section"&gt;&lt;h4&gt;static templates&lt;a name="static_templates"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;Some templates which are only simple html which only need i18n are executed immediatly.&lt;/p&gt;&lt;p&gt;Simply use:&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;  $.tmpl( menu, $.i18n.map ).appendTo(&amp;quot;#html-fragments&amp;quot;);&#010;+);&lt;/pre&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;i18n in templates&lt;a name="i18n_in_templates"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h4&gt;static templates&lt;a name="static_templates"&gt;&lt;/a&gt;&lt;/h4&gt;&#010;+&lt;p&gt;Some templates which are only simple html which only need i18n are executed immediatly.&lt;/p&gt;&#010;+&lt;p&gt;Simply use:&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;  $.tmpl( menu, $.i18n.map ).appendTo(&amp;quot;#html-fragments&amp;quot;);&#010;   to get i18n values in your template you can use&#010;   ${register} or ${$.i18n.prop('register')}&#010; &#010;   Note if you use the simple form ${register} and the property is not available, the template system will try to use if exists the function register&#010;-&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h4&gt;dynamic templates&lt;a name="dynamic_templates"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;The others are only inserted in #html-fragments.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&#010;+&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h4&gt;dynamic templates&lt;a name="dynamic_templates"&gt;&lt;/a&gt;&lt;/h4&gt;&#010;+&lt;p&gt;The others are only inserted in #html-fragments.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&#010;                   &lt;/div&gt;&#010;           &lt;/div&gt;&#010; &#010;&#010;Modified: archiva/site-content/known-issues.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/known-issues.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/known-issues.html (original)&#010;+++ archiva/site-content/known-issues.html Sat Jun  8 14:05:28 2013&#010;@@ -9,7 +9,7 @@&#010;     &lt;meta charset="UTF-8" /&gt;&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;     &lt;meta name="Date-Creation-yyyymmdd" content="20120119" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - Known Issues and Errata&lt;/title&gt;&#010;     &lt;link rel="stylesheet" href="./css/apache-maven-fluido-1.3.1-SNAPSHOT.min.css" /&gt;&#010;@@ -205,7 +205,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -214,7 +214,9 @@&#010;                 &#010;         &lt;div id="bodyColumn" &gt;&#010;                                   &#010;-            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;!-- NOTE: For help with the syntax of this file, see: --&gt;&lt;!-- http://maven.apache.org/guides/mi&#010; ni/guide-apt-format.html --&gt;&lt;div class="section"&gt;&lt;h2&gt;Known Issues and Errata&lt;a name="Known_Issues_and_Errata"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;For a list of all JIRA issues reported against released versions of Archiva, see &lt;a class="externalLink" href="http://jira.codehaus.org/secure/IssueNavigator.jspa?reset=true&amp;amp;jqlQuery=project+%3D+MRM+AND+resolution+%3D+Unresolved+and+affectedVersion+in+releasedVersions()"&gt; JIRA&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&#010;+            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;!-- NOTE: For help with the syntax of this file, see: --&gt;&lt;!-- http://maven.apache.org/guides/mi&#010; ni/guide-apt-format.html --&gt;&lt;div class="section"&gt;&#010;+&lt;h2&gt;Known Issues and Errata&lt;a name="Known_Issues_and_Errata"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+&lt;p&gt;For a list of all JIRA issues reported against released versions of Archiva, see &lt;a class="externalLink" href="http://jira.codehaus.org/secure/IssueNavigator.jspa?reset=true&amp;amp;jqlQuery=project+%3D+MRM+AND+resolution+%3D+Unresolved+and+affectedVersion+in+releasedVersions()"&gt; JIRA&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&#010;                   &lt;/div&gt;&#010;           &lt;/div&gt;&#010; &#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1490981 [1/3] - in /archiva/site-content: ./ developers/ errors/ jsui/</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130608140530.247C023888FE@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130608140530-247C023888FE@eris-apache-org%3e</id>
<updated>2013-06-08T14:05:28Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: olamy&#010;Date: Sat Jun  8 14:05:28 2013&#010;New Revision: 1490981&#010;&#010;URL: http://svn.apache.org/r1490981&#010;Log:&#010;Apache Archiva Main site deployment&#010;&#010;Modified:&#010;    archiva/site-content/developers/building.html&#010;    archiva/site-content/developers/how-we-do-things.html&#010;    archiva/site-content/developers/publishing-site.html&#010;    archiva/site-content/developers/releasing.html&#010;    archiva/site-content/download.html&#010;    archiva/site-content/errors/404.html&#010;    archiva/site-content/get-involved.html&#010;    archiva/site-content/index.html&#010;    archiva/site-content/integration.html&#010;    archiva/site-content/issue-tracking.html&#010;    archiva/site-content/jsui/generics-js.html&#010;    archiva/site-content/jsui/i18n.html&#010;    archiva/site-content/jsui/index.html&#010;    archiva/site-content/jsui/knockout-binding.html&#010;    archiva/site-content/jsui/rest.html&#010;    archiva/site-content/jsui/template-loading.html&#010;    archiva/site-content/known-issues.html&#010;    archiva/site-content/license.html&#010;    archiva/site-content/mail-lists.html&#010;    archiva/site-content/privacy-policy.html&#010;    archiva/site-content/project-info.html&#010;    archiva/site-content/security.html&#010;    archiva/site-content/source-repository.html&#010;    archiva/site-content/team-list.html&#010;    archiva/site-content/versions.html&#010;&#010;Modified: archiva/site-content/developers/building.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/developers/building.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/developers/building.html (original)&#010;+++ archiva/site-content/developers/building.html Sat Jun  8 14:05:28 2013&#010;@@ -9,7 +9,7 @@&#010;     &lt;meta charset="UTF-8" /&gt;&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;     &lt;meta name="Date-Creation-yyyymmdd" content="20120119" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - Building Archiva&lt;/title&gt;&#010;     &lt;link rel="stylesheet" href="../css/apache-maven-fluido-1.3.1-SNAPSHOT.min.css" /&gt;&#010;@@ -205,7 +205,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -214,13 +214,41 @@&#010;                 &#010;         &lt;div id="bodyColumn" &gt;&#010;                                   &#010;-            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;!-- NOTE: For help with the syntax of this file, see: --&gt;&lt;!-- http://maven.apache.org/guides/mi&#010; ni/guide-apt-format.html --&gt;&lt;div class="section"&gt;&lt;h2&gt;Building Archiva&lt;a name="Building_Archiva"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;To build the very latest code available... &lt;/p&gt;&lt;ol style="list-style-type: decimal"&gt;&lt;li&gt;Check out the source code as described on the &lt;a href="../source-repository.html"&gt;Source Repository&lt;/a&gt; page.&lt;/li&gt;&lt;li&gt;In the 'parent' directory, execute &lt;tt&gt;mvn clean install&lt;/tt&gt; to build the parent pom.&lt;/li&gt;&lt;li&gt;In the 'archiva' directory, execute &lt;tt&gt;mvn clean install&lt;/tt&gt; to build the Archiva modules and distribution.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;After the build completes, you can find the Archiva distribution in &lt;tt&gt;archiva-jetty/target&lt;/tt&gt; and the Archiva webapp in &lt;tt&gt;archiva-modules/archiva-web/archiva-webapp/target&lt;/tt&gt;&lt;/p&gt;&lt;p&gt;Usually, it's that simple. :) Occasionally, Archiva may depend on a snapshot of another project such as &lt;a class="externalLink" href="http://archiva.apache.org/redback"&gt;Redback&lt;/a&gt;, and you may need to build that first, or configure a snapshot repository. If you're hav&#010; ing trouble building Archiva, ask on the &lt;a href="../mail-lists.html"&gt;Development mailing list&lt;/a&gt; and we'll point you in the right direction.&lt;/p&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h2&gt;Documentation&lt;a name="Documentation"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;The version-specific documentation for the latest version of Archiva can be found in &lt;tt&gt;archiva/archiva-docs&lt;/tt&gt;, and the top-level Archiva website --including the page you're reading now -- is in the &lt;tt&gt;site&lt;/tt&gt; directory.&lt;/p&gt;&lt;p&gt;To work on the documentation, execute &lt;tt&gt;mvn site:run&lt;/tt&gt; in one of these directories, and then visit http://localhost:8080 to view pages as you edit them. When you're done, submit a patch in the &lt;a href="../issue-tracking.html"&gt;issue tracker&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h2&gt;svn&lt;a name="svn"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;You use checkout all trunks.&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;svn co https://svn.apache.org/repos/asf/archiva/all archiva-all&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h2&gt;git clone&lt;a name="git_clone"&gt;&lt;/a&gt;&#010; &lt;/h2&gt;&lt;p&gt;You can use git svn clone. See &lt;a class="externalLink" href="http://git.apache.org/"&gt;Apache Documentation&lt;/a&gt;.&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;git clone git://github.com/apache/archiva.git; cd archiva ; sh ./init-git-svn.sh&#010;+            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;!-- NOTE: For help with the syntax of this file, see: --&gt;&lt;!-- http://maven.apache.org/guides/mi&#010; ni/guide-apt-format.html --&gt;&lt;div class="section"&gt;&#010;+&lt;h2&gt;Building Archiva&lt;a name="Building_Archiva"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+&lt;p&gt;To build the very latest code available... &lt;/p&gt;&#010;+&lt;ol style="list-style-type: decimal"&gt;&#010;+&lt;li&gt;Check out the source code as described on the &lt;a href="../source-repository.html"&gt;Source Repository&lt;/a&gt; page.&lt;/li&gt;&#010;+&lt;li&gt;In the 'parent' directory, execute &lt;tt&gt;mvn clean install&lt;/tt&gt; to build the parent pom.&lt;/li&gt;&#010;+&lt;li&gt;In the 'archiva' directory, execute &lt;tt&gt;mvn clean install&lt;/tt&gt; to build the Archiva modules and distribution.&lt;/li&gt;&lt;/ol&gt;&#010;+&lt;p&gt;After the build completes, you can find the Archiva distribution in &lt;tt&gt;archiva-jetty/target&lt;/tt&gt; and the Archiva webapp in &lt;tt&gt;archiva-modules/archiva-web/archiva-webapp/target&lt;/tt&gt;&lt;/p&gt;&#010;+&lt;p&gt;Usually, it's that simple. :) Occasionally, Archiva may depend on a snapshot of another project such as &lt;a class="externalLink" href="http://archiva.apache.org/redback"&gt;Redback&lt;/a&gt;, and you may need to build that first, or configure a snapshot repository. If you're having trouble building Archiva, ask on the &lt;a href="../mail-lists.html"&gt;Development mailing list&lt;/a&gt; and we'll point you in the right direction.&lt;/p&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h2&gt;Documentation&lt;a name="Documentation"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+&lt;p&gt;The version-specific documentation for the latest version of Archiva can be found in &lt;tt&gt;archiva/archiva-docs&lt;/tt&gt;, and the top-level Archiva website --including the page you're reading now -- is in the &lt;tt&gt;site&lt;/tt&gt; directory.&lt;/p&gt;&#010;+&lt;p&gt;To work on the documentation, execute &lt;tt&gt;mvn site:run&lt;/tt&gt; in one of these directories, and then visit http://localhost:8080 to view pages as you edit them. When you're done, submit a patch in the &lt;a href="../issue-tracking.html"&gt;issue tracker&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h2&gt;svn&lt;a name="svn"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+&lt;p&gt;You use checkout all trunks.&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;svn co https://svn.apache.org/repos/asf/archiva/all archiva-all&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h2&gt;git clone&lt;a name="git_clone"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+&lt;p&gt;You can use git svn clone. See &lt;a class="externalLink" href="http://git.apache.org/"&gt;Apache Documentation&lt;/a&gt;.&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;git clone git://github.com/apache/archiva.git; cd archiva ; sh ./init-git-svn.sh&#010; or trough https&#010;-git clone https://github.com/apache/archiva.git; cd archiva ; sh ./init-git-svn.sh&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h2&gt;Running Javascript webapp with tomcat-maven-plugin&lt;a name="Running_Javascript_webapp_with_tomcat-maven-plugin"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;You can use &lt;a class="externalLink" href="http://tomcat.apache.org/maven-plugin.html"&gt;tomcat-maven-plugin&lt;/a&gt; to run the webapp without installing the war in a container. With maven3 in the top directory :&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;mvn tomcat7:run -pl :archiva-webapp -am&#010;+git clone https://github.com/apache/archiva.git; cd archiva ; sh ./init-git-svn.sh&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h2&gt;Running Javascript webapp with tomcat-maven-plugin&lt;a name="Running_Javascript_webapp_with_tomcat-maven-plugin"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+&lt;p&gt;You can use &lt;a class="externalLink" href="http://tomcat.apache.org/maven-plugin.html"&gt;tomcat-maven-plugin&lt;/a&gt; to run the webapp without installing the war in a container. With maven3 in the top directory :&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;mvn tomcat7:run -pl :archiva-webapp -am&#010; or&#010; mvn tomcat6:run -pl :archiva-webapp -am&#010; or&#010;-sh ./t7.sh&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Hit your browser : http://localhost:9091/archiva/index.html&lt;/p&gt;&lt;/div&gt;&#010;+sh ./t7.sh&lt;/pre&gt;&lt;/div&gt;&#010;+&lt;p&gt;Hit your browser : http://localhost:9091/archiva/index.html&lt;/p&gt;&lt;/div&gt;&#010;                   &lt;/div&gt;&#010;           &lt;/div&gt;&#010; &#010;&#010;Modified: archiva/site-content/developers/how-we-do-things.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/developers/how-we-do-things.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/developers/how-we-do-things.html (original)&#010;+++ archiva/site-content/developers/how-we-do-things.html Sat Jun  8 14:05:28 2013&#010;@@ -9,7 +9,7 @@&#010;     &lt;meta charset="UTF-8" /&gt;&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;     &lt;meta name="Date-Creation-yyyymmdd" content="20121008" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - How We Do Things&lt;/title&gt;&#010;     &lt;link rel="stylesheet" href="../css/apache-maven-fluido-1.3.1-SNAPSHOT.min.css" /&gt;&#010;@@ -205,7 +205,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -214,7 +214,41 @@&#010;                 &#010;         &lt;div id="bodyColumn" &gt;&#010;                                   &#010;-            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;!-- NOTE: For help with the syntax of this file, see: --&gt;&lt;!-- http://maven.apache.org/guides/mi&#010; ni/guide-apt-format.html --&gt;&lt;div class="section"&gt;&lt;h2&gt;How We Do Things&lt;a name="How_We_Do_Things"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;Below are the conventions we follow in Archiva.&lt;/p&gt;&lt;div class="section"&gt;&lt;h3&gt;Continuous Integration&lt;a name="Continuous_Integration"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;We use the Jenkins Apache instance for building Archiva (and redback dependencies) on scm changes.&lt;/p&gt;&lt;p&gt;See the tab with various builds: &lt;a class="externalLink" href="https://builds.apache.org/view/A-D/view/Archiva/"&gt;Archiva tab&lt;/a&gt;&lt;/p&gt;&lt;p&gt;You can test fresh builds with downloading from this Jenkins job &lt;a class="externalLink" href="https://builds.apache.org/archiva-all-maven-3.x-jdk-1.6/"&gt;archiva-all-maven-3.x-jdk-1.6&lt;/a&gt;:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a class="externalLink" href="https://builds.apache.org/job/archiva-all-maven-3.x-jdk-1.6/lastSuccessfulBuild/artifact/archiva-modules/archiva-web/archiva-webapp/target/archiva-webapp-1.4.0-SNAPSHOT.war"&gt;war webapp js&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a class="externalLink" href="https://builds.apache.org/job/archiva-a&#010; ll-maven-3.x-jdk-1.6/lastSuccessfulBuild/artifact/archiva-jetty/target/apache-archiva-js-1.4.0-SNAPSHOT-bin.zip"&gt;standalone with embeded jetty&lt;/a&gt; (unzip then cd bin;./archiva start running on 8080)&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h3&gt;Code Style&lt;a name="Code_Style"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;There isn't any code style that needs to be followed as long as it is consistent, can be checked in checkstyle, can be formatted in Eclipse, IDEA and NetBeans. And the following rules must be followed:&lt;/p&gt;&lt;ol style="list-style-type: decimal"&gt;&lt;li&gt;Use spaces, not tabs&lt;ul&gt;&lt;li&gt;4 spaces for Java&lt;/li&gt;&lt;li&gt;2 spaces for XML&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;120 column wrap, not 80&lt;/li&gt;&lt;li&gt;Wrap on spaces, not on '.' in a method call&lt;p&gt;You can use the existing codestyle files:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="./archiva-idea-codestyle.xml"&gt;idea&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="./archiva-eclipse-codestyle.xml"&gt;eclipse&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h3&gt;Versioning&lt;a name="Versioning"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;It has been established in the communi&#010; ty that the following style would be followed for the versioning of releases:&lt;/p&gt;&lt;div&gt;&lt;pre&gt;Milestones -&amp;gt; Final -&amp;gt; Patch releases (e.g. 1.1-M1, 1.1-M2, 1.1, 1.1.1, 1.1.2 )&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;As much as possible, the team is aiming for frequent releases. If the roadmap for the current development version is big, milestone releases can be applied until the final release. But if the roadmap is composed of just a small number of issues, we could proceed immediately to preparing a release candidate and push it out as the final release once it passes the vote.&lt;/p&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h3&gt;References&lt;a name="References"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;&lt;li&gt;&lt;a class="externalLink" href="http://old.nabble.com/Fwd%3A-What-do-we-need-to-establish--td17098487.html"&gt; Mailing list discussion regarding conventions&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&#010;+            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;!-- NOTE: For help with the syntax of this file, see: --&gt;&lt;!-- http://maven.apache.org/guides/mi&#010; ni/guide-apt-format.html --&gt;&lt;div class="section"&gt;&#010;+&lt;h2&gt;How We Do Things&lt;a name="How_We_Do_Things"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+&lt;p&gt;Below are the conventions we follow in Archiva.&lt;/p&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Continuous Integration&lt;a name="Continuous_Integration"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;p&gt;We use the Jenkins Apache instance for building Archiva (and redback dependencies) on scm changes.&lt;/p&gt;&#010;+&lt;p&gt;See the tab with various builds: &lt;a class="externalLink" href="https://builds.apache.org/view/A-D/view/Archiva/"&gt;Archiva tab&lt;/a&gt;&lt;/p&gt;&#010;+&lt;p&gt;You can test fresh builds with downloading from this Jenkins job &lt;a class="externalLink" href="https://builds.apache.org/archiva-all-maven-3.x-jdk-1.6/"&gt;archiva-all-maven-3.x-jdk-1.6&lt;/a&gt;:&lt;/p&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;&lt;a class="externalLink" href="https://builds.apache.org/job/archiva-all-maven-3.x-jdk-1.6/lastSuccessfulBuild/artifact/archiva-modules/archiva-web/archiva-webapp/target/archiva-webapp-1.4.0-SNAPSHOT.war"&gt;war webapp js&lt;/a&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;a class="externalLink" href="https://builds.apache.org/job/archiva-all-maven-3.x-jdk-1.6/lastSuccessfulBuild/artifact/archiva-jetty/target/apache-archiva-js-1.4.0-SNAPSHOT-bin.zip"&gt;standalone with embeded jetty&lt;/a&gt; (unzip then cd bin;./archiva start running on 8080)&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Code Style&lt;a name="Code_Style"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;p&gt;There isn't any code style that needs to be followed as long as it is consistent, can be checked in checkstyle, can be formatted in Eclipse, IDEA and NetBeans. And the following rules must be followed:&lt;/p&gt;&#010;+&lt;ol style="list-style-type: decimal"&gt;&#010;+&lt;li&gt;Use spaces, not tabs&#010;+&lt;ul&gt;&#010;+&lt;li&gt;4 spaces for Java&lt;/li&gt;&#010;+&lt;li&gt;2 spaces for XML&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&#010;+&lt;li&gt;120 column wrap, not 80&lt;/li&gt;&#010;+&lt;li&gt;Wrap on spaces, not on '.' in a method call&#010;+&lt;p&gt;You can use the existing codestyle files:&lt;/p&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;&lt;a href="./archiva-idea-codestyle.xml"&gt;idea&lt;/a&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;a href="./archiva-eclipse-codestyle.xml"&gt;eclipse&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Versioning&lt;a name="Versioning"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;p&gt;It has been established in the community that the following style would be followed for the versioning of releases:&lt;/p&gt;&#010;+&lt;div&gt;&#010;+&lt;pre&gt;Milestones -&amp;gt; Final -&amp;gt; Patch releases (e.g. 1.1-M1, 1.1-M2, 1.1, 1.1.1, 1.1.2 )&lt;/pre&gt;&lt;/div&gt;&#010;+&lt;p&gt;As much as possible, the team is aiming for frequent releases. If the roadmap for the current development version is big, milestone releases can be applied until the final release. But if the roadmap is composed of just a small number of issues, we could proceed immediately to preparing a release candidate and push it out as the final release once it passes the vote.&lt;/p&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;References&lt;a name="References"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;&lt;a class="externalLink" href="http://old.nabble.com/Fwd%3A-What-do-we-need-to-establish--td17098487.html"&gt; Mailing list discussion regarding conventions&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&#010;                   &lt;/div&gt;&#010;           &lt;/div&gt;&#010; &#010;&#010;Modified: archiva/site-content/developers/publishing-site.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/developers/publishing-site.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/developers/publishing-site.html (original)&#010;+++ archiva/site-content/developers/publishing-site.html Sat Jun  8 14:05:28 2013&#010;@@ -8,7 +8,7 @@&#010;   &lt;head&gt;&#010;     &lt;meta charset="UTF-8" /&gt;&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - Archiva Sites Publishing&lt;/title&gt;&#010;     &lt;link rel="stylesheet" href="../css/apache-maven-fluido-1.3.1-SNAPSHOT.min.css" /&gt;&#010;@@ -204,7 +204,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -213,12 +213,67 @@&#010;                 &#010;         &lt;div id="bodyColumn" &gt;&#010;                                   &#010;-            &lt;div class="section"&gt;&lt;h2&gt;Publishing the Archiva Site&lt;a name="Publishing_the_Archiva_Site"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;The Archiva site, documentation and reference documentation are now published to &lt;tt&gt;http://archiva.apache.org/&lt;/tt&gt; using the &lt;a class="externalLink" href="http://www.apache.org/dev/project-site.html#svnpubsub"&gt; ASF's svnpubsub&lt;/a&gt; service.&lt;/p&gt;&lt;p&gt;The files published to the site are all stored under the Subversion repository at &lt;a class="externalLink" href="http://svn.apache.org/repos/asf/archiva/site-content/"&gt;http://svn.apache.org/repos/asf/archiva/site-content/&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;This mostly operates like a normal site deployment, though there are some specific customisations and special instructions for the reference library. The processes follow those described for the &lt;a class="externalLink" href="http://maven.apache.org/plugins/maven-scm-publish-plugin/"&gt;Maven SCM Publish Plugin&lt;/a&gt; for &lt;a class="externalLink" href="http://maven.apache.org/plugins/maven-scm-publis&#010; h-plugin/examples/one-module-configuration.html"&gt; Single module projects&lt;/a&gt; and &lt;a class="externalLink" href="http://maven.apache.org/plugins/maven-scm-publish-plugin/examples/multi-module-configuration.html"&gt; Multi-module projects&lt;/a&gt; as applicable.&lt;/p&gt;&lt;p&gt;Each site checks out the production site data into the &lt;tt&gt;site-publish&lt;/tt&gt; directory of the current project, to avoid being cleaned as part of the build. It is ignored by &lt;tt&gt;svn&lt;/tt&gt; operations, but you should ensure that the checkout is clean if you ever cancel or have a failure during a publish operation. You can check it is clean by ensuring there is no data from &lt;tt&gt;svn status&lt;/tt&gt; in that directory, or by removing it and having it get checked out again.&lt;/p&gt;&lt;div class="section"&gt;&lt;h3&gt;Editing and Publishing the Main Site&lt;a name="Editing_and_Publishing_the_Main_Site"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;The site displayed at the root of &lt;a class="externalLink" href="http://archiva.apache.org"&gt;http://archiva.apache.org&lt;/a&gt; (where you are readin&#010; g this) has its source code in Subversion at &lt;a class="externalLink" href="https://svn.apache.org/repos/asf/archiva/site"&gt;https://svn.apache.org/repos/asf/archiva/site&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;To edit and publish the site, do the following:&lt;/p&gt;&lt;ol style="list-style-type: decimal"&gt;&lt;li&gt;Checkout the source code from Subversion (if you follow the instructions in &lt;a href="./building.html"&gt; Building Archiva&lt;/a&gt;, you will already have it.&lt;/li&gt;&lt;li&gt;Make edits and check them using &lt;tt&gt;mvn site&lt;/tt&gt; or &lt;tt&gt;mvn site:run&lt;/tt&gt; until satisfied.&lt;/li&gt;&lt;li&gt;Commit your changes (making sure your working copy is completely up to date first)&lt;/li&gt;&lt;li&gt;Publish the site:&lt;div&gt;&lt;pre&gt;mvn site-deploy&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;This site deployment can be done at any time, and is not tied to releases.&lt;/p&gt;&lt;p&gt;Note that since the main site also contains the (large!) &lt;tt&gt;docs&lt;/tt&gt; and &lt;tt&gt;ref&lt;/tt&gt; directories in the &lt;tt&gt;site-publish&lt;/tt&gt; directory, there is a special &lt;tt&gt;setup-checkout&lt;/tt&gt; profile in place to get the initial c&#010; heckout without those directories. This will normally be activated whenever the &lt;tt&gt;site-publish&lt;/tt&gt; directory is missing - if you happen to have active profiles from your &lt;tt&gt;settings.xml&lt;/tt&gt; you may need to enable it explicitly whenever you do a deployment and that checkout is missing: &lt;tt&gt;mvn site-deploy -Psetup-checkout&lt;/tt&gt; &lt;/p&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h3&gt;Editing and Publishing the Archiva Documentation&lt;a name="Editing_and_Publishing_the_Archiva_Documentation"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;The documentation displayed under the subdirectories of &lt;a class="externalLink" href="http://archiva.apache.org/docs/"&gt;http://archiva.apache.org/docs/&lt;/a&gt; has its source code in Subversion at &lt;a class="externalLink" href="https://svn.apache.org/repos/asf/archiva/trunk/archiva-docs"&gt;https://svn.apache.org/repos/asf/archiva/trunk/archiva-docs&lt;/a&gt;, which is part of the main project checkout.&lt;/p&gt;&lt;p&gt;The instructions for managing the documentation is the same as for the main site, being published from t&#010; he directory using:&lt;/p&gt;&lt;div&gt;&lt;pre&gt;mvn site-deploy&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;However, in this case it is typically done as part of a release process - see &lt;a href="./releasing.html"&gt; Releasing Archiva&lt;/a&gt; for instructions on doing this.&lt;/p&gt;&lt;p&gt;The documentation remains versioned based on the release it is related to. To best manage this with svnpubsub, the site is always published into a directory &lt;tt&gt;docs/latest&lt;/tt&gt;, only requiring a small number of modifications to be made. Then, as part of the release instructions, the &lt;tt&gt;latest&lt;/tt&gt; directory is copied to the versioned location - for example, &lt;tt&gt;http://svn.apache.org/repos/asf/archiva/site-content/docs/1.4-M4&lt;/tt&gt;.&lt;/p&gt;&lt;p&gt;For &lt;tt&gt;site:stage&lt;/tt&gt; to apply correctly without needing a full checkout, a workaround is applied by setting the &lt;tt&gt;distributionManagement/site/url&lt;/tt&gt; element to match that of the parent site. The value is then overridden with the correct value in the &lt;tt&gt;maven-scm-publish-plugin&lt;/tt&gt; configuration. This avoids&#010;  the Site plugin attempting to relativize links incorrectly.&lt;/p&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h3&gt;Editing and Publishing the Reference Documentation&lt;a name="Editing_and_Publishing_the_Reference_Documentation"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;The reference documentation, including JavaDocs and source cross-reference, is displayed under the URL &lt;a class="externalLink" href="http://archiva.apache.org/ref"&gt;http://archiva.apache.org/ref&lt;/a&gt;. At this time, only the latest reference documents are retained. They require quite a lot of space, and historical information is of less relevance to Archiva developers or users.&lt;/p&gt;&lt;p&gt;To publish the latest reference documents, you need to run:&lt;/p&gt;&lt;div&gt;&lt;pre&gt;cd archiva-modules&#010;+            &lt;div class="section"&gt;&#010;+&lt;h2&gt;Publishing the Archiva Site&lt;a name="Publishing_the_Archiva_Site"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+&lt;p&gt;The Archiva site, documentation and reference documentation are now published to &lt;tt&gt;http://archiva.apache.org/&lt;/tt&gt; using the &lt;a class="externalLink" href="http://www.apache.org/dev/project-site.html#svnpubsub"&gt; ASF's svnpubsub&lt;/a&gt; service.&lt;/p&gt;&#010;+&lt;p&gt;The files published to the site are all stored under the Subversion repository at &lt;a class="externalLink" href="http://svn.apache.org/repos/asf/archiva/site-content/"&gt;http://svn.apache.org/repos/asf/archiva/site-content/&lt;/a&gt;.&lt;/p&gt;&#010;+&lt;p&gt;This mostly operates like a normal site deployment, though there are some specific customisations and special instructions for the reference library. The processes follow those described for the &lt;a class="externalLink" href="http://maven.apache.org/plugins/maven-scm-publish-plugin/"&gt;Maven SCM Publish Plugin&lt;/a&gt; for &lt;a class="externalLink" href="http://maven.apache.org/plugins/maven-scm-publish-plugin/examples/one-module-configuration.html"&gt; Single module projects&lt;/a&gt; and &lt;a class="externalLink" href="http://maven.apache.org/plugins/maven-scm-publish-plugin/examples/multi-module-configuration.html"&gt; Multi-module projects&lt;/a&gt; as applicable.&lt;/p&gt;&#010;+&lt;p&gt;Each site checks out the production site data into the &lt;tt&gt;site-publish&lt;/tt&gt; directory of the current project, to avoid being cleaned as part of the build. It is ignored by &lt;tt&gt;svn&lt;/tt&gt; operations, but you should ensure that the checkout is clean if you ever cancel or have a failure during a publish operation. You can check it is clean by ensuring there is no data from &lt;tt&gt;svn status&lt;/tt&gt; in that directory, or by removing it and having it get checked out again.&lt;/p&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Editing and Publishing the Main Site&lt;a name="Editing_and_Publishing_the_Main_Site"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;p&gt;The site displayed at the root of &lt;a class="externalLink" href="http://archiva.apache.org"&gt;http://archiva.apache.org&lt;/a&gt; (where you are reading this) has its source code in Subversion at &lt;a class="externalLink" href="https://svn.apache.org/repos/asf/archiva/site"&gt;https://svn.apache.org/repos/asf/archiva/site&lt;/a&gt;.&lt;/p&gt;&#010;+&lt;p&gt;To edit and publish the site, do the following:&lt;/p&gt;&#010;+&lt;ol style="list-style-type: decimal"&gt;&#010;+&lt;li&gt;Checkout the source code from Subversion (if you follow the instructions in &lt;a href="./building.html"&gt; Building Archiva&lt;/a&gt;, you will already have it.&lt;/li&gt;&#010;+&lt;li&gt;Make edits and check them using &lt;tt&gt;mvn site&lt;/tt&gt; or &lt;tt&gt;mvn site:run&lt;/tt&gt; until satisfied.&lt;/li&gt;&#010;+&lt;li&gt;Commit your changes (making sure your working copy is completely up to date first)&lt;/li&gt;&#010;+&lt;li&gt;Publish the site:&#010;+&lt;div&gt;&#010;+&lt;pre&gt;mvn site-deploy&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&#010;+&lt;p&gt;This site deployment can be done at any time, and is not tied to releases.&lt;/p&gt;&#010;+&lt;p&gt;Note that since the main site also contains the (large!) &lt;tt&gt;docs&lt;/tt&gt; and &lt;tt&gt;ref&lt;/tt&gt; directories in the &lt;tt&gt;site-publish&lt;/tt&gt; directory, there is a special &lt;tt&gt;setup-checkout&lt;/tt&gt; profile in place to get the initial checkout without those directories. This will normally be activated whenever the &lt;tt&gt;site-publish&lt;/tt&gt; directory is missing - if you happen to have active profiles from your &lt;tt&gt;settings.xml&lt;/tt&gt; you may need to enable it explicitly whenever you do a deployment and that checkout is missing: &lt;tt&gt;mvn site-deploy -Psetup-checkout&lt;/tt&gt; &lt;/p&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Editing and Publishing the Archiva Documentation&lt;a name="Editing_and_Publishing_the_Archiva_Documentation"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;p&gt;The documentation displayed under the subdirectories of &lt;a class="externalLink" href="http://archiva.apache.org/docs/"&gt;http://archiva.apache.org/docs/&lt;/a&gt; has its source code in Subversion at &lt;a class="externalLink" href="https://svn.apache.org/repos/asf/archiva/trunk/archiva-docs"&gt;https://svn.apache.org/repos/asf/archiva/trunk/archiva-docs&lt;/a&gt;, which is part of the main project checkout.&lt;/p&gt;&#010;+&lt;p&gt;The instructions for managing the documentation is the same as for the main site, being published from the directory using:&lt;/p&gt;&#010;+&lt;div&gt;&#010;+&lt;pre&gt;mvn site-deploy&lt;/pre&gt;&lt;/div&gt;&#010;+&lt;p&gt;However, in this case it is typically done as part of a release process - see &lt;a href="./releasing.html"&gt; Releasing Archiva&lt;/a&gt; for instructions on doing this.&lt;/p&gt;&#010;+&lt;p&gt;The documentation remains versioned based on the release it is related to. To best manage this with svnpubsub, the site is always published into a directory &lt;tt&gt;docs/latest&lt;/tt&gt;, only requiring a small number of modifications to be made. Then, as part of the release instructions, the &lt;tt&gt;latest&lt;/tt&gt; directory is copied to the versioned location - for example, &lt;tt&gt;http://svn.apache.org/repos/asf/archiva/site-content/docs/1.4-M4&lt;/tt&gt;.&lt;/p&gt;&#010;+&lt;p&gt;For &lt;tt&gt;site:stage&lt;/tt&gt; to apply correctly without needing a full checkout, a workaround is applied by setting the &lt;tt&gt;distributionManagement/site/url&lt;/tt&gt; element to match that of the parent site. The value is then overridden with the correct value in the &lt;tt&gt;maven-scm-publish-plugin&lt;/tt&gt; configuration. This avoids the Site plugin attempting to relativize links incorrectly.&lt;/p&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Editing and Publishing the Reference Documentation&lt;a name="Editing_and_Publishing_the_Reference_Documentation"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;p&gt;The reference documentation, including JavaDocs and source cross-reference, is displayed under the URL &lt;a class="externalLink" href="http://archiva.apache.org/ref"&gt;http://archiva.apache.org/ref&lt;/a&gt;. At this time, only the latest reference documents are retained. They require quite a lot of space, and historical information is of less relevance to Archiva developers or users.&lt;/p&gt;&#010;+&lt;p&gt;To publish the latest reference documents, you need to run:&lt;/p&gt;&#010;+&lt;div&gt;&#010;+&lt;pre&gt;cd archiva-modules&#010; mvn site site:stage scm-publish:publish-scm&#010; or&#010;-sh ./deploySite.sh&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;This will likely cause a very large commit, and should be done infrequently. Once per release is likely to be adequate.&lt;/p&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h3&gt;Publishing Redback site&lt;a name="Publishing_Redback_site"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;The redback is stored under the Subversion repository at &lt;a class="externalLink" href="https://svn.apache.org/repos/asf/archiva/redback/redback-site/trunk"&gt;https://svn.apache.org/repos/asf/archiva/redback/redback-site/trunk&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;It's displayed under the URL &lt;a class="externalLink" href="http://archiva.apache.org/redback"&gt;http://archiva.apache.org/redback&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;To publish documentation, you need to run:&lt;/p&gt;&lt;div&gt;&lt;pre&gt;mvn site-deploy&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h3&gt;Publishing Redback Core reference&lt;a name="Publishing_Redback_Core_reference"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;The Redback core reference is displayed under the URL &lt;a class="externalLink" href="http://archiva.apache.org/redback/core"&gt;http://archiva.apache.org/redbac&#010; k/core&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;It contains javadoc for Redback core.&lt;/p&gt;&lt;p&gt;To publish documentation, you need to run:&lt;/p&gt;&lt;div&gt;&lt;pre&gt;mvn clean site-deploy scm-publish:publish-scm&#010;+sh ./deploySite.sh&lt;/pre&gt;&lt;/div&gt;&#010;+&lt;p&gt;This will likely cause a very large commit, and should be done infrequently. Once per release is likely to be adequate.&lt;/p&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Publishing Redback site&lt;a name="Publishing_Redback_site"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;p&gt;The redback is stored under the Subversion repository at &lt;a class="externalLink" href="https://svn.apache.org/repos/asf/archiva/redback/redback-site/trunk"&gt;https://svn.apache.org/repos/asf/archiva/redback/redback-site/trunk&lt;/a&gt;.&lt;/p&gt;&#010;+&lt;p&gt;It's displayed under the URL &lt;a class="externalLink" href="http://archiva.apache.org/redback"&gt;http://archiva.apache.org/redback&lt;/a&gt;.&lt;/p&gt;&#010;+&lt;p&gt;To publish documentation, you need to run:&lt;/p&gt;&#010;+&lt;div&gt;&#010;+&lt;pre&gt;mvn site-deploy&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Publishing Redback Core reference&lt;a name="Publishing_Redback_Core_reference"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;p&gt;The Redback core reference is displayed under the URL &lt;a class="externalLink" href="http://archiva.apache.org/redback/core"&gt;http://archiva.apache.org/redback/core&lt;/a&gt;.&lt;/p&gt;&#010;+&lt;p&gt;It contains javadoc for Redback core.&lt;/p&gt;&#010;+&lt;p&gt;To publish documentation, you need to run:&lt;/p&gt;&#010;+&lt;div&gt;&#010;+&lt;pre&gt;mvn clean site-deploy scm-publish:publish-scm&#010; or&#010;-sh ./deploySite.sh&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h3&gt;Publishing Redback Components reference&lt;a name="Publishing_Redback_Components_reference"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;The Redback components reference is displayed under the URL &lt;a class="externalLink" href="http://archiva.apache.org/redback/components"&gt;http://archiva.apache.org/redback/components&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;It contains javadoc for Redback components.&lt;/p&gt;&lt;p&gt;To publish documentation, you need to run:&lt;/p&gt;&lt;div&gt;&lt;pre&gt;mvn clean site-deploy scm-publish:publish-scm&#010;+sh ./deploySite.sh&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Publishing Redback Components reference&lt;a name="Publishing_Redback_Components_reference"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;p&gt;The Redback components reference is displayed under the URL &lt;a class="externalLink" href="http://archiva.apache.org/redback/components"&gt;http://archiva.apache.org/redback/components&lt;/a&gt;.&lt;/p&gt;&#010;+&lt;p&gt;It contains javadoc for Redback components.&lt;/p&gt;&#010;+&lt;p&gt;To publish documentation, you need to run:&lt;/p&gt;&#010;+&lt;div&gt;&#010;+&lt;pre&gt;mvn clean site-deploy scm-publish:publish-scm&#010; or&#010; sh ./deploySite.sh&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&#010;                   &lt;/div&gt;&#010;&#010;Modified: archiva/site-content/developers/releasing.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/developers/releasing.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/developers/releasing.html (original)&#010;+++ archiva/site-content/developers/releasing.html Sat Jun  8 14:05:28 2013&#010;@@ -9,7 +9,7 @@&#010;     &lt;meta charset="UTF-8" /&gt;&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;     &lt;meta name="Date-Creation-yyyymmdd" content="20120119" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - Archiva release process&lt;/title&gt;&#010;     &lt;link rel="stylesheet" href="../css/apache-maven-fluido-1.3.1-SNAPSHOT.min.css" /&gt;&#010;@@ -205,7 +205,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -214,24 +214,57 @@&#010;                 &#010;         &lt;div id="bodyColumn" &gt;&#010;                                   &#010;-            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;!-- NOTE: For help with the syntax of this file, see: --&gt;&lt;!-- http://maven.apache.org/guides/mi&#010; ni/guide-apt-format.html --&gt;&lt;div class="section"&gt;&lt;h2&gt;Archiva release process&lt;a name="Archiva_release_process"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ol style="list-style-type: decimal"&gt;&lt;li&gt;Post to the dev list a few days before you plan to do an Archiva release&lt;/li&gt;&lt;li&gt;Recreate the staging repository on archiva-repository.apache.org - make sure that it is not scanned (so that .index* is not created). Your maven setting must contains the entry to be able to deploy.&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;   &amp;lt;server&amp;gt;&#010;+            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;!-- NOTE: For help with the syntax of this file, see: --&gt;&lt;!-- http://maven.apache.org/guides/mi&#010; ni/guide-apt-format.html --&gt;&lt;div class="section"&gt;&#010;+&lt;h2&gt;Archiva release process&lt;a name="Archiva_release_process"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+&lt;ol style="list-style-type: decimal"&gt;&#010;+&lt;li&gt;Post to the dev list a few days before you plan to do an Archiva release&lt;/li&gt;&#010;+&lt;li&gt;Recreate the staging repository on archiva-repository.apache.org - make sure that it is not scanned (so that .index* is not created). Your maven setting must contains the entry to be able to deploy.&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;   &amp;lt;server&amp;gt;&#010;      &amp;lt;id&amp;gt;archiva-repository.releases&amp;lt;/id&amp;gt;&#010;      &amp;lt;username&amp;gt;&amp;lt;/username&amp;gt;&#010;      &amp;lt;password&amp;gt;&amp;lt;/password&amp;gt;&#010;-   &amp;lt;/server&amp;gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;If there are changes in the parent pom, release parent pom &amp;#x2013; https://svn.apache.org/repos/asf/archiva/parent&lt;ul&gt;&lt;li&gt;mvn release:prepare (verify that it has been properly tagged) * mvn release:perform (verify that it has been deployed correctly in the staging repo)&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;Update the parent pom version of archiva &amp;#x2013; https://svn.apache.org/repos/asf/archiva/trunk&lt;ul&gt;&lt;li&gt;change the parent pom version to the archiva-parent version that has just been released * commit the changes made&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;Update the release notes and the site.xml for version changes in archiva-docs&lt;/li&gt;&lt;li&gt;Verify that the webapp-tests are building successfully. Since it is in a separate profile but inside the Archiva source tree, it will not be released but will still be included in the release tag. If some tests are failing, comment it out first so that only the passing tests are executed when the webapp-tests module are built from the t&#010; ag.&lt;/li&gt;&lt;li&gt;Release archiva You should have a GPG agent running (preferred), and confirm it works by running &amp;quot;gpg -ab&amp;quot; (type some text and press Ctrl-D). If you do not have a GPG agent running, make sure that you have the &amp;quot;apache-release&amp;quot; profile set in your settings.xml as shown below.&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;&amp;lt;profile&amp;gt;&#010;+   &amp;lt;/server&amp;gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;&#010;+&lt;li&gt;If there are changes in the parent pom, release parent pom &amp;#x2013; https://svn.apache.org/repos/asf/archiva/parent&#010;+&lt;ul&gt;&#010;+&lt;li&gt;mvn release:prepare (verify that it has been properly tagged) * mvn release:perform (verify that it has been deployed correctly in the staging repo)&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&#010;+&lt;li&gt;Update the parent pom version of archiva &amp;#x2013; https://svn.apache.org/repos/asf/archiva/trunk&#010;+&lt;ul&gt;&#010;+&lt;li&gt;change the parent pom version to the archiva-parent version that has just been released * commit the changes made&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&#010;+&lt;li&gt;Update the release notes and the site.xml for version changes in archiva-docs&lt;/li&gt;&#010;+&lt;li&gt;Verify that the webapp-tests are building successfully. Since it is in a separate profile but inside the Archiva source tree, it will not be released but will still be included in the release tag. If some tests are failing, comment it out first so that only the passing tests are executed when the webapp-tests module are built from the tag.&lt;/li&gt;&#010;+&lt;li&gt;Release archiva You should have a GPG agent running (preferred), and confirm it works by running &amp;quot;gpg -ab&amp;quot; (type some text and press Ctrl-D). If you do not have a GPG agent running, make sure that you have the &amp;quot;apache-release&amp;quot; profile set in your settings.xml as shown below.&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;&amp;lt;profile&amp;gt;&#010;   &amp;lt;id&amp;gt;apache-release&amp;lt;/id&amp;gt;&#010;   &amp;lt;properties&amp;gt;&#010;     &amp;lt;gpg.passphrase&amp;gt;[GPG_PASSWORD]&amp;lt;/gpg.passphrase&amp;gt;&#010;   &amp;lt;/properties&amp;gt;&#010;-&amp;lt;/profile&amp;gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Set your user credentials for the stage repo in the &lt;i&gt;servers&lt;/i&gt; section of your settings.xml for vmbuild.staging Execute mvn release:prepare (check that it has been properly tagged. the tag name must be.. archiva-[VERSION]) Then execute mvn release:perform Download the uploaded files via wget:&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;ex.&#010;+&amp;lt;/profile&amp;gt;&lt;/pre&gt;&lt;/div&gt;&#010;+&lt;p&gt;Set your user credentials for the stage repo in the &lt;i&gt;servers&lt;/i&gt; section of your settings.xml for vmbuild.staging Execute mvn release:prepare (check that it has been properly tagged. the tag name must be.. archiva-[VERSION]) Then execute mvn release:perform Download the uploaded files via wget:&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;ex.&#010; wget http://archiva-repository.apache.org/archiva/repository/staged-releases/org/apache/archiva/archiva-jetty/1.3/archiva-jetty-1.3-bin.tar.gz&#010; Verify the signatures:&#010; ex.&#010;-gpg -v archiva-jetty-1.3-bin.zip.asc&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;The documentation is deployed as part of the process to the final location for review in the vote: http://archiva.apache.org/docs/1.3/. If the vote doesn't pass, the documentation will need to be removed from the server for redeployment. Commit the sources and binaries from org/apache/archiva/archiva-jetty, and org/apache/archiva/archiva to the svn distribution tree. First in dev tree: https://dist.apache.org/repos/dist/dev/archiva/ (if the vote pass they will be copied to release tree) https://dist.apache.org/repos/dist/release/archiva&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;svn co https://dist.apache.org/repos/dist/dev/archiva/ archiva-dev-release&#010;+gpg -v archiva-jetty-1.3-bin.zip.asc&lt;/pre&gt;&lt;/div&gt;&#010;+&lt;p&gt;The documentation is deployed as part of the process to the final location for review in the vote: http://archiva.apache.org/docs/1.3/. If the vote doesn't pass, the documentation will need to be removed from the server for redeployment. Commit the sources and binaries from org/apache/archiva/archiva-jetty, and org/apache/archiva/archiva to the svn distribution tree. First in dev tree: https://dist.apache.org/repos/dist/dev/archiva/ (if the vote pass they will be copied to release tree) https://dist.apache.org/repos/dist/release/archiva&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;svn co https://dist.apache.org/repos/dist/dev/archiva/ archiva-dev-release&#010; cd archiva-dev-release&#010;-sh ./release-script-svn.sh VERSION STAGING_URL&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Call for a vote in the dev list and wait for 72 hrs. for the vote results. 3 binding votes are necessary for the release to be finalized. example If the vote fails or needs to be canceled, the version number should not be re-used if the version was made available for public download. After the vote has passed, move the files from dist dev to dist release: svn mv https://dist.apache.org/repos/dist/dev/archiva/ to https://dist.apache.org/repos/dist/relase/archiva/ To sync the jars to ibiblio, execute:&lt;/p&gt;&lt;p&gt;&lt;b&gt;NOTE: the stage plugin doesn't work with maven3 you must use maven 2.2.1&lt;/b&gt;&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;  mvn stage:copy -Dsource=&amp;quot;https://archiva-repository.apache.org/archiva/repository/archiva-releases-stage/&amp;quot;&#010;+sh ./release-script-svn.sh VERSION STAGING_URL&lt;/pre&gt;&lt;/div&gt;&#010;+&lt;p&gt;Call for a vote in the dev list and wait for 72 hrs. for the vote results. 3 binding votes are necessary for the release to be finalized. example If the vote fails or needs to be canceled, the version number should not be re-used if the version was made available for public download. After the vote has passed, move the files from dist dev to dist release: svn mv https://dist.apache.org/repos/dist/dev/archiva/ to https://dist.apache.org/repos/dist/relase/archiva/ To sync the jars to ibiblio, execute:&lt;/p&gt;&#010;+&lt;p&gt;&lt;b&gt;NOTE: the stage plugin doesn't work with maven3 you must use maven 2.2.1&lt;/b&gt;&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;  mvn stage:copy -Dsource=&amp;quot;https://archiva-repository.apache.org/archiva/repository/archiva-releases-stage/&amp;quot;&#010;      -Dtarget=&amp;quot;scp://[APACHE_USERNAME]@people.apache.org/www/people.apache.org/repo/m2-ibiblio-rsync-repository&amp;quot;&#010;-     -Dversion=1.3 -DrepositoryId=apache.releases&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;mark the appropriate release version in JIRA as complete Update the archiva site (https://svn.apache.org/repos/asf/archiva/site/) for the versions and release notes URL and run mvn site-deploy. The 3 properties to change are at the bottom of pom.xml before generating the site. Remove old versions from /www/www.apache.org/dist/archiva Publish the reference docs (sh ./deploySite.sh in the archiva-modules directory) from the release tag. You may have to exclude the archiva-webapp module to do this, and will require MAVEN_OPTS=-Xmx256m. You may need to use Maven 2.2.1 instead of Maven 3.x for this.&lt;/p&gt;&lt;p&gt;Send out an announcement of the release to:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;users@archiva.apache.org&lt;/li&gt;&lt;li&gt;users@maven.apache.org&lt;/li&gt;&lt;li&gt;announce@apache.org&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&#010;+     -Dversion=1.3 -DrepositoryId=apache.releases&lt;/pre&gt;&lt;/div&gt;&#010;+&lt;p&gt;mark the appropriate release version in JIRA as complete Update the archiva site (https://svn.apache.org/repos/asf/archiva/site/) for the versions and release notes URL and run mvn site-deploy. The 3 properties to change are at the bottom of pom.xml before generating the site. Remove old versions from /www/www.apache.org/dist/archiva Publish the reference docs (sh ./deploySite.sh in the archiva-modules directory) from the release tag. You may have to exclude the archiva-webapp module to do this, and will require MAVEN_OPTS=-Xmx256m. You may need to use Maven 2.2.1 instead of Maven 3.x for this.&lt;/p&gt;&#010;+&lt;p&gt;Send out an announcement of the release to:&lt;/p&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;users@archiva.apache.org&lt;/li&gt;&#010;+&lt;li&gt;users@maven.apache.org&lt;/li&gt;&#010;+&lt;li&gt;announce@apache.org&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&#010;                   &lt;/div&gt;&#010;           &lt;/div&gt;&#010; &#010;&#010;Modified: archiva/site-content/download.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/download.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/download.html (original)&#010;+++ archiva/site-content/download.html Sat Jun  8 14:05:28 2013&#010;@@ -8,7 +8,7 @@&#010;   &lt;head&gt;&#010;     &lt;meta charset="UTF-8" /&gt;&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - &#010;     Download Apache Archiva&lt;/title&gt;&#010;@@ -206,7 +206,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -232,28 +232,45 @@ KIND, either express or implied.  See th&#010; specific language governing permissions and limitations&#010; under the License. --&gt;&#010;   &#010;-    &lt;div class="section"&gt;&lt;h2&gt;Download Apache Archiva 1.3.6&lt;a name="Download_Apache_Archiva_1.3.6"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;-      &lt;p&gt;Archiva is distributed under the &lt;a class="externalLink" href="http://archiva.apache.org/license.html}"&gt;Apache License, version 2.0&lt;/a&gt;.&lt;/p&gt;&#010;-      &lt;div class="section"&gt;&lt;h3&gt;System Requirements&lt;a name="System_Requirements"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;-        &lt;table border="0" class="table table-striped"&gt;&#010;-          &lt;tr class="a"&gt;&#010;-            &lt;td&gt;&lt;b&gt;JDK&lt;/b&gt;&lt;/td&gt;&#010;-            &lt;td&gt;1.6 or above&lt;/td&gt;&#010;+    &lt;div class="section"&gt;&#010;+&lt;h2&gt;Download Apache Archiva 1.3.6&lt;a name="Download_Apache_Archiva_1.3.6"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+      &#010;+&lt;p&gt;Archiva is distributed under the &lt;a class="externalLink" href="http://archiva.apache.org/license.html}"&gt;Apache License, version 2.0&lt;/a&gt;.&lt;/p&gt;&#010;+      &#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;System Requirements&lt;a name="System_Requirements"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+        &#010;+&lt;table border="0" class="table table-striped"&gt;&#010;+          &#010;+&lt;tr class="a"&gt;&#010;+            &#010;+&lt;td&gt;&lt;b&gt;JDK&lt;/b&gt;&lt;/td&gt;&#010;+            &#010;+&lt;td&gt;1.6 or above&lt;/td&gt;&#010;           &lt;/tr&gt;&#010;-          &lt;tr class="b"&gt;&#010;-            &lt;td&gt;&lt;b&gt;No minimum requirement&lt;/b&gt;&lt;/td&gt;&#010;-            &lt;td&gt;The Archiva application is in itself about 20MB but will use more disk space to store repository contents&lt;/td&gt;&#010;+          &#010;+&lt;tr class="b"&gt;&#010;+            &#010;+&lt;td&gt;&lt;b&gt;No minimum requirement&lt;/b&gt;&lt;/td&gt;&#010;+            &#010;+&lt;td&gt;The Archiva application is in itself about 20MB but will use more disk space to store repository contents&lt;/td&gt;&#010;           &lt;/tr&gt;&#010;-          &lt;tr class="a"&gt;&#010;-            &lt;td&gt;&lt;b&gt;Operating System&lt;/b&gt;&lt;/td&gt;&#010;-            &lt;td&gt;Support for Linux, Mac OS, Solaris and Windows.  Tested on Windows XP SP2, Ubuntu Linux, and Mac OS X.&lt;/td&gt;&#010;+          &#010;+&lt;tr class="a"&gt;&#010;+            &#010;+&lt;td&gt;&lt;b&gt;Operating System&lt;/b&gt;&lt;/td&gt;&#010;+            &#010;+&lt;td&gt;Support for Linux, Mac OS, Solaris and Windows.  Tested on Windows XP SP2, Ubuntu Linux, and Mac OS X.&lt;/td&gt;&#010;           &lt;/tr&gt;&#010;         &lt;/table&gt;&#010;       &lt;/div&gt;&#010;       &lt;a name="mirror"&gt;&lt;/a&gt;&#010;-      &lt;div class="section"&gt;&lt;h3&gt;Mirror&lt;a name="Mirror"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+      &#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Mirror&lt;a name="Mirror"&gt;&lt;/a&gt;&lt;/h3&gt;&#010; &#010;-        &lt;p&gt;&#010;+        &#010;+&lt;p&gt;&#010;           [if-any logo]&#010;           &lt;a href="[link]"&gt;&#010;             &lt;img src="[logo]" align="right" border="0" alt="logo" /&gt;&#010;@@ -291,63 +308,103 @@ under the License. --&gt;&#010;           &lt;input type="submit" value="Change" class="btn" /&gt;&#010;         &lt;/form&gt;&#010; &#010;-        &lt;p&gt;&#010;+        &#010;+&lt;p&gt;&#010;           You may also consult the&#010;           &lt;a class="externalLink" href="http://www.apache.org/mirrors/"&gt;complete list of&#010;             mirrors.&lt;/a&gt;&#010;         &lt;/p&gt;&#010; &#010;       &lt;/div&gt;&#010;-      &lt;div class="section"&gt;&lt;h3&gt;Current Release: Archiva 1.3.6&lt;a name="Current_Release:_Archiva_1.3.6"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;-        &lt;p&gt;&#010;+      &#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Current Release: Archiva 1.3.6&lt;a name="Current_Release:_Archiva_1.3.6"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+        &#010;+&lt;p&gt;&#010;           This is the currently recommended version of Archiva.&#010; &#010;-          &lt;/p&gt;&lt;ul&gt;&#010;-            &lt;li&gt;&lt;a href="./docs/1.3.6/release-notes.html"&gt;Release Notes&lt;/a&gt;&lt;/li&gt;&#010;-            &lt;li&gt;&lt;a href="./known-issues.html"&gt;Known Issues and Errata&lt;/a&gt;&lt;/li&gt;&#010;-              &lt;li&gt;&lt;a href="./security.html"&gt;Security Reports&lt;/a&gt;&lt;/li&gt;&#010;+          &lt;/p&gt;&#010;+&lt;ul&gt;&#010;+            &#010;+&lt;li&gt;&lt;a href="./docs/1.3.6/release-notes.html"&gt;Release Notes&lt;/a&gt;&lt;/li&gt;&#010;+            &#010;+&lt;li&gt;&lt;a href="./known-issues.html"&gt;Known Issues and Errata&lt;/a&gt;&lt;/li&gt;&#010;+              &#010;+&lt;li&gt;&lt;a href="./security.html"&gt;Security Reports&lt;/a&gt;&lt;/li&gt;&#010;           &lt;/ul&gt;&#010;         &#010;-        &lt;p&gt;&#010;-          &lt;/p&gt;&lt;table border="0" class="table table-striped"&gt;&#010;+        &#010;+&lt;p&gt;&#010;+          &lt;/p&gt;&#010;+&lt;table border="0" class="table table-striped"&gt;&#010;             &lt;thead&gt;&#010;-              &lt;tr class="a"&gt;&#010;-                &lt;th&gt;Archiva 1.3.6 &lt;/th&gt;&#010;-                &lt;th&gt;Mirrors&lt;/th&gt;&#010;-                &lt;th&gt;Checksum&lt;/th&gt;&#010;-                &lt;th&gt;Signature&lt;/th&gt;&#010;+              &#010;+&lt;tr class="a"&gt;&#010;+                &#010;+&lt;th&gt;Archiva 1.3.6 &lt;/th&gt;&#010;+                &#010;+&lt;th&gt;Mirrors&lt;/th&gt;&#010;+                &#010;+&lt;th&gt;Checksum&lt;/th&gt;&#010;+                &#010;+&lt;th&gt;Signature&lt;/th&gt;&#010;               &lt;/tr&gt;&#010;             &lt;/thead&gt;&#010;             &lt;tbody&gt;&#010;-              &lt;tr class="b"&gt;&#010;-                &lt;td&gt;Archiva 1.3.6 Standalone&lt;/td&gt;&#010;-                &lt;td&gt;&lt;a href="[preferred]archiva/1.3.6/binaries/apache-archiva-1.3.6-bin.tar.gz"&gt;tar.gz&lt;/a&gt;&lt;/td&gt;&#010;-                &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/binaries/apache-archiva-1.3.6-bin.tar.gz.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;-                &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dyn/closer.cgi/archiva/1.3.6/binaries/apache-archiva-1.3.6-bin.tar.gz.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;+              &#010;+&lt;tr class="b"&gt;&#010;+                &#010;+&lt;td&gt;Archiva 1.3.6 Standalone&lt;/td&gt;&#010;+                &#010;+&lt;td&gt;&lt;a href="[preferred]archiva/1.3.6/binaries/apache-archiva-1.3.6-bin.tar.gz"&gt;tar.gz&lt;/a&gt;&lt;/td&gt;&#010;+                &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/binaries/apache-archiva-1.3.6-bin.tar.gz.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;+                &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dyn/closer.cgi/archiva/1.3.6/binaries/apache-archiva-1.3.6-bin.tar.gz.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;               &lt;/tr&gt;&#010;-              &lt;tr class="a"&gt;&#010;-                &lt;td&gt;&lt;/td&gt;&#010;-                &lt;td&gt;&lt;a href="[preferred]archiva/1.3.6/binaries/apache-archiva-1.3.6-bin.zip"&gt;zip&lt;/a&gt;&lt;/td&gt;&#010;-                &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/binaries/apache-archiva-1.3.6-bin.zip.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;-                &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/binaries/apache-archiva-1.3.6-bin.zip.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;+              &#010;+&lt;tr class="a"&gt;&#010;+                &#010;+&lt;td&gt;&lt;/td&gt;&#010;+                &#010;+&lt;td&gt;&lt;a href="[preferred]archiva/1.3.6/binaries/apache-archiva-1.3.6-bin.zip"&gt;zip&lt;/a&gt;&lt;/td&gt;&#010;+                &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/binaries/apache-archiva-1.3.6-bin.zip.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;+                &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/binaries/apache-archiva-1.3.6-bin.zip.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;               &lt;/tr&gt;&#010;-              &lt;tr class="b"&gt;&#010;-                &lt;td&gt;Archiva 1.3.6 WAR&lt;/td&gt;&#010;-                &lt;td&gt;&lt;a href="[preferred]archiva/1.3.6/binaries/apache-archiva-1.3.6.war"&gt;war&lt;/a&gt;&lt;/td&gt;&#010;-                &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/binaries/apache-archiva-1.3.6.war.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;-                &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/binaries/apache-archiva-1.3.6.war.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;+              &#010;+&lt;tr class="b"&gt;&#010;+                &#010;+&lt;td&gt;Archiva 1.3.6 WAR&lt;/td&gt;&#010;+                &#010;+&lt;td&gt;&lt;a href="[preferred]archiva/1.3.6/binaries/apache-archiva-1.3.6.war"&gt;war&lt;/a&gt;&lt;/td&gt;&#010;+                &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/binaries/apache-archiva-1.3.6.war.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;+                &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/binaries/apache-archiva-1.3.6.war.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;               &lt;/tr&gt;&#010;-              &lt;tr class="a"&gt;&#010;-                &lt;td&gt;Archiva 1.3.6 Documentation&lt;/td&gt;&#010;-                &lt;td&gt;&lt;a href="[preferred]archiva/1.3.6/docs/1.3.6/apache-archiva-1.3.6-docs.zip"&gt;docs zip&lt;/a&gt;&lt;/td&gt;&#010;-                &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/docs/apache-archiva-1.3.6-docs.zip.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;-                &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/docs/apache-archiva-1.3.6-docs.zip.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;+              &#010;+&lt;tr class="a"&gt;&#010;+                &#010;+&lt;td&gt;Archiva 1.3.6 Documentation&lt;/td&gt;&#010;+                &#010;+&lt;td&gt;&lt;a href="[preferred]archiva/1.3.6/docs/1.3.6/apache-archiva-1.3.6-docs.zip"&gt;docs zip&lt;/a&gt;&lt;/td&gt;&#010;+                &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/docs/apache-archiva-1.3.6-docs.zip.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;+                &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/docs/apache-archiva-1.3.6-docs.zip.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;               &lt;/tr&gt;&#010;-              &lt;tr class="b"&gt;&#010;-                &lt;td&gt;Archiva 1.3.6 Sources&lt;/td&gt;&#010;-                &lt;td&gt;&lt;a href="[preferred]archiva/1.3.6/src/1.3.6/apache-archiva-1.3.6-src.zip"&gt;source zip&lt;/a&gt;&lt;/td&gt;&#010;-                &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/src/1.3.6/apache-archiva-1.3.6-src.zip.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;-                &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/src/1.3.6/apache-archiva-1.3.6-src.zip.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;+              &#010;+&lt;tr class="b"&gt;&#010;+                &#010;+&lt;td&gt;Archiva 1.3.6 Sources&lt;/td&gt;&#010;+                &#010;+&lt;td&gt;&lt;a href="[preferred]archiva/1.3.6/src/1.3.6/apache-archiva-1.3.6-src.zip"&gt;source zip&lt;/a&gt;&lt;/td&gt;&#010;+                &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/src/1.3.6/apache-archiva-1.3.6-src.zip.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;+                &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.3.6/src/1.3.6/apache-archiva-1.3.6-src.zip.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;               &lt;/tr&gt;&#010;             &lt;/tbody&gt;&#010;           &lt;/table&gt;&#010;@@ -355,49 +412,83 @@ under the License. --&gt;&#010; &#010;       &lt;/div&gt;&#010; &#010;-                  &lt;div class="section"&gt;&lt;h3&gt;Preview Release: Archiva 1.4-M4&lt;a name="Preview_Release:_Archiva_1.4-M4"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;-            &lt;p&gt;&#010;+                  &#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Preview Release: Archiva 1.4-M4&lt;a name="Preview_Release:_Archiva_1.4-M4"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+            &#010;+&lt;p&gt;&#010;             This is a preview release of the next version of Archiva.&#010;-            &lt;/p&gt;&lt;ul&gt;&#010;-              &lt;li&gt;&lt;a href="./docs/1.4-M4/release-notes.html"&gt;Release Notes&lt;/a&gt;&lt;/li&gt;&#010;-              &lt;li&gt;&lt;a href="./known-issues.html"&gt;Known Issues and Errata&lt;/a&gt;&lt;/li&gt;&#010;-              &lt;li&gt;&lt;a href="./security.html"&gt;Security Reports&lt;/a&gt;&lt;/li&gt;&#010;+            &lt;/p&gt;&#010;+&lt;ul&gt;&#010;+              &#010;+&lt;li&gt;&lt;a href="./docs/1.4-M4/release-notes.html"&gt;Release Notes&lt;/a&gt;&lt;/li&gt;&#010;+              &#010;+&lt;li&gt;&lt;a href="./known-issues.html"&gt;Known Issues and Errata&lt;/a&gt;&lt;/li&gt;&#010;+              &#010;+&lt;li&gt;&lt;a href="./security.html"&gt;Security Reports&lt;/a&gt;&lt;/li&gt;&#010;             &lt;/ul&gt;&#010;             &#010;-            &lt;p&gt;&#010;-              &lt;/p&gt;&lt;table border="0" class="table table-striped"&gt;&#010;+            &#010;+&lt;p&gt;&#010;+              &lt;/p&gt;&#010;+&lt;table border="0" class="table table-striped"&gt;&#010;                 &lt;thead&gt;&#010;-                  &lt;tr class="a"&gt;&#010;-                    &lt;th&gt;Archiva 1.4-M4 &lt;/th&gt;&#010;-                    &lt;th&gt;Mirros&lt;/th&gt;&#010;-                    &lt;th&gt;Checksum&lt;/th&gt;&#010;-                    &lt;th&gt;Signature&lt;/th&gt;&#010;+                  &#010;+&lt;tr class="a"&gt;&#010;+                    &#010;+&lt;th&gt;Archiva 1.4-M4 &lt;/th&gt;&#010;+                    &#010;+&lt;th&gt;Mirros&lt;/th&gt;&#010;+                    &#010;+&lt;th&gt;Checksum&lt;/th&gt;&#010;+                    &#010;+&lt;th&gt;Signature&lt;/th&gt;&#010;                   &lt;/tr&gt;&#010;                 &lt;/thead&gt;&#010;                 &lt;tbody&gt;&#010;-                  &lt;tr class="b"&gt;&#010;-                    &lt;td&gt;Archiva 1.4-M4 Standalone&lt;/td&gt;&#010;-                    &lt;td&gt;&lt;a href="[preferred]archiva/1.4-M4/binaries/apache-archiva-1.4-M4-bin.tar.gz"&gt;tar.gz&lt;/a&gt;&lt;/td&gt;&#010;-                    &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.4-M4/binaries/apache-archiva-1.4-M4-bin.tar.gz.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;-                    &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.4-M4/binaries/apache-archiva-1.4-M4-bin.tar.gz.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;+                  &#010;+&lt;tr class="b"&gt;&#010;+                    &#010;+&lt;td&gt;Archiva 1.4-M4 Standalone&lt;/td&gt;&#010;+                    &#010;+&lt;td&gt;&lt;a href="[preferred]archiva/1.4-M4/binaries/apache-archiva-1.4-M4-bin.tar.gz"&gt;tar.gz&lt;/a&gt;&lt;/td&gt;&#010;+                    &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.4-M4/binaries/apache-archiva-1.4-M4-bin.tar.gz.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;+                    &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.4-M4/binaries/apache-archiva-1.4-M4-bin.tar.gz.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;                   &lt;/tr&gt;&#010;-                  &lt;tr class="a"&gt;&#010;-                    &lt;td&gt;&lt;/td&gt;&#010;-                    &lt;td&gt;&lt;a href="[preferred]archiva/1.4-M4/binaries/apache-archiva-1.4-M4-bin.zip"&gt;zip&lt;/a&gt;&lt;/td&gt;&#010;-                    &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.4-M4/binaries/apache-archiva-1.4-M4-bin.zip.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;-                    &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.4-M4/binaries/apache-archiva-1.4-M4-bin.zip.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;+                  &#010;+&lt;tr class="a"&gt;&#010;+                    &#010;+&lt;td&gt;&lt;/td&gt;&#010;+                    &#010;+&lt;td&gt;&lt;a href="[preferred]archiva/1.4-M4/binaries/apache-archiva-1.4-M4-bin.zip"&gt;zip&lt;/a&gt;&lt;/td&gt;&#010;+                    &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.4-M4/binaries/apache-archiva-1.4-M4-bin.zip.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;+                    &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.4-M4/binaries/apache-archiva-1.4-M4-bin.zip.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;                   &lt;/tr&gt;&#010;-                  &lt;tr class="b"&gt;&#010;-                    &lt;td&gt;Archiva 1.4-M4 WAR&lt;/td&gt;&#010;-                    &lt;td&gt;&lt;a href="[preferred]archiva/1.4-M4/binaries/apache-archiva-1.4-M4.war"&gt;war&lt;/a&gt;&lt;/td&gt;&#010;-                    &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.4-M4/binaries/apache-archiva-1.4-M4.war.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;-                    &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.4-M4/binaries/apache-archiva-1.4-M4.war.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;+                  &#010;+&lt;tr class="b"&gt;&#010;+                    &#010;+&lt;td&gt;Archiva 1.4-M4 WAR&lt;/td&gt;&#010;+                    &#010;+&lt;td&gt;&lt;a href="[preferred]archiva/1.4-M4/binaries/apache-archiva-1.4-M4.war"&gt;war&lt;/a&gt;&lt;/td&gt;&#010;+                    &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.4-M4/binaries/apache-archiva-1.4-M4.war.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;+                    &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.4-M4/binaries/apache-archiva-1.4-M4.war.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;                   &lt;/tr&gt;&#010;-                  &lt;tr class="a"&gt;&#010;-                    &lt;td&gt;Archiva 1.4-M4 Sources&lt;/td&gt;&#010;-                    &lt;td&gt;&lt;a href="[preferred]archiva/1.4-M4/src/apache-archiva-1.4-M4-src.zip"&gt;source zip&lt;/a&gt;&lt;/td&gt;&#010;-                    &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.4-M4/src/apache-archiva-1.4-M4-src.zip.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;-                    &lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.4-M4/src/apache-archiva-1.4-M4-src.zip.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;+                  &#010;+&lt;tr class="a"&gt;&#010;+                    &#010;+&lt;td&gt;Archiva 1.4-M4 Sources&lt;/td&gt;&#010;+                    &#010;+&lt;td&gt;&lt;a href="[preferred]archiva/1.4-M4/src/apache-archiva-1.4-M4-src.zip"&gt;source zip&lt;/a&gt;&lt;/td&gt;&#010;+                    &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.4-M4/src/apache-archiva-1.4-M4-src.zip.md5"&gt;md5&lt;/a&gt;&lt;/td&gt;&#010;+                    &#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.apache.org/dist/archiva/1.4-M4/src/apache-archiva-1.4-M4-src.zip.asc"&gt;asc&lt;/a&gt;&lt;/td&gt;&#010;                   &lt;/tr&gt;&#010;                 &lt;/tbody&gt;&#010;               &lt;/table&gt;&#010;@@ -405,14 +496,20 @@ under the License. --&gt;&#010;           &lt;/div&gt;&#010; &#010;         &#010;-      &lt;div class="section"&gt;&lt;h3&gt;Previous Versions&lt;a name="Previous_Versions"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;-        &lt;p&gt;&#010;+      &#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Previous Versions&lt;a name="Previous_Versions"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+        &#010;+&lt;p&gt;&#010;           More releases are available in the &lt;a class="externalLink" href="http://archive.apache.org/dist/archiva/binaries/"&gt;Apache Archiva Archives&lt;/a&gt;&#010;           or prior to the graduation from Maven, in the &lt;a class="externalLink" href="http://archive.apache.org/dist/maven/binaries/"&gt;Apache Maven Archives&lt;/a&gt;.&#010;         &lt;/p&gt;&#010;       &lt;/div&gt;&#010;-      &lt;div class="section"&gt;&lt;h3&gt;Verify the integrity of the files&lt;a name="Verify_the_integrity_of_the_files"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;-        &lt;p&gt;&#010;+      &#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Verify the integrity of the files&lt;a name="Verify_the_integrity_of_the_files"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+        &#010;+&lt;p&gt;&#010;           We recommend that you verify the integrity of the downloaded files using the PGP signatures and MD5 checksums.&#010; &#010;           The PGP signatures can be verified using PGP or GPG. First download the &lt;a class="externalLink" href="http://www.apache.org/dist/archiva/KEYS"&gt;KEYS&lt;/a&gt;&#010;@@ -421,7 +518,9 @@ under the License. --&gt;&#010;           rather than from a mirror. &lt;br /&gt;&#010;           Then verify the signatures using:&#010;         &lt;/p&gt;&#010;-          &lt;div&gt;&lt;pre&gt;&#010;+          &#010;+&lt;div&gt;&#010;+&lt;pre&gt;&#010;           % pgpk -a KEYS&#010;           % pgpv $filename.tar.gz.asc&#010;           or&#010;@@ -431,7 +530,8 @@ under the License. --&gt;&#010;           % gpg --import KEYS&#010;           % gpg --verify $filename.tar.gz.asc&#010;           &lt;/pre&gt;&lt;/div&gt;&#010;-        &lt;p&gt;&#010;+        &#010;+&lt;p&gt;&#010;           You can also verify the MD5 signature on the files. A Unix program called md5 or md5sum is included in many&#010;           Unix distributions. It is also available as part of &lt;a class="externalLink" href="http://www.gnu.org/software/coreutils/"&gt;GNU Coreutils&lt;/a&gt;.&#010;           Windows users can get binary md5 programs from &lt;a class="externalLink" href="http://www.fourmilab.ch/md5/"&gt;Fourmilab&lt;/a&gt;,&#010;&#010;Modified: archiva/site-content/errors/404.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/errors/404.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/errors/404.html (original)&#010;+++ archiva/site-content/errors/404.html Sat Jun  8 14:05:28 2013&#010;@@ -8,7 +8,7 @@&#010;   &lt;head&gt;&#010;     &lt;meta charset="UTF-8" /&gt;&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - Page Not found&lt;/title&gt;&#010;     &lt;link rel="stylesheet" href="../css/apache-maven-fluido-1.3.1-SNAPSHOT.min.css" /&gt;&#010;@@ -204,7 +204,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -213,7 +213,14 @@&#010;                 &#010;         &lt;div id="bodyColumn" &gt;&#010;                                   &#010;-            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;!-- NOTE: For help with the syntax of this file, see: --&gt;&lt;!-- http://maven.apache.org/guides/mi&#010; ni/guide-apt-format.html --&gt;&lt;div class="section"&gt;&lt;h2&gt;Page Not Found&lt;a name="Page_Not_Found"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;We're sorry, but the page you requested cannot be found. This may be because:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;The page has moved, was outdated, or has not been created yet&lt;/li&gt;&lt;li&gt;You typed the address incorrectly&lt;/li&gt;&lt;li&gt;You followed a link from another site that pointed to this page&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;If you came to this page by following a broken link on our site, you can report the &lt;a class="externalLink" href="http://jira.codehaus.org/browse/MRM"&gt; problem&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&#010;+            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;!-- NOTE: For help with the syntax of this file, see: --&gt;&lt;!-- http://maven.apache.org/guides/mi&#010; ni/guide-apt-format.html --&gt;&lt;div class="section"&gt;&#010;+&lt;h2&gt;Page Not Found&lt;a name="Page_Not_Found"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+&lt;p&gt;We're sorry, but the page you requested cannot be found. This may be because:&lt;/p&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;The page has moved, was outdated, or has not been created yet&lt;/li&gt;&#010;+&lt;li&gt;You typed the address incorrectly&lt;/li&gt;&#010;+&lt;li&gt;You followed a link from another site that pointed to this page&lt;/li&gt;&lt;/ul&gt;&#010;+&lt;p&gt;If you came to this page by following a broken link on our site, you can report the &lt;a class="externalLink" href="http://jira.codehaus.org/browse/MRM"&gt; problem&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&#010;                   &lt;/div&gt;&#010;           &lt;/div&gt;&#010; &#010;&#010;Modified: archiva/site-content/get-involved.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/get-involved.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/get-involved.html (original)&#010;+++ archiva/site-content/get-involved.html Sat Jun  8 14:05:28 2013&#010;@@ -9,7 +9,7 @@&#010;     &lt;meta charset="UTF-8" /&gt;&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;     &lt;meta name="Date-Creation-yyyymmdd" content="20120119" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - Archiva Community - Get Involved&lt;/title&gt;&#010;     &lt;link rel="stylesheet" href="./css/apache-maven-fluido-1.3.1-SNAPSHOT.min.css" /&gt;&#010;@@ -205,7 +205,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -214,7 +214,41 @@&#010;                 &#010;         &lt;div id="bodyColumn" &gt;&#010;                                   &#010;-            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;!-- NOTE: For help with the syntax of this file, see: --&gt;&lt;!-- http://maven.apache.org/guides/mi&#010; ni/guide-apt-format.html --&gt;&lt;div class="section"&gt;&lt;h2&gt;Getting Involved in the Archiva Project&lt;a name="Getting_Involved_in_the_Archiva_Project"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;Archiva is an open source project and relies heavily on an active community. If you need help, you should look to the community. Equally, please look for ways that you may contribute back.&lt;/p&gt;&lt;p&gt;This page provides some pointers for receiving help and contributing to the Archiva community.&lt;/p&gt;&lt;div class="section"&gt;&lt;h3&gt;Getting Help&lt;a name="Getting_Help"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;There are a number of ways to find help if you have an issue. &lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Read the documentation&lt;/b&gt;&lt;br /&gt;Read the &lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4.0-SNAPSHOT/userguide"&gt;user&lt;/a&gt; and &lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4.0-SNAPSHOT/adminguide"&gt;administration&lt;/a&gt; documentation. &lt;/li&gt;&lt;li&gt;&lt;b&gt;Search the Wiki&lt;/b&gt;&lt;br /&gt;Search the &lt;a class="externalLink" href="http://cwiki.apache.org/confluence/display/ARCHIVA"&gt;&#010; Archiva Wiki&lt;/a&gt;. Lots of useful information has been contributed by users here.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Submit an issue&lt;/b&gt;&lt;br /&gt;Search the &lt;a href="./issue-tracking.html"&gt;Jira&lt;/a&gt; issue tracking system. The problem you are experiencing may be a known issue and others may have suggested work-arounds. If the issue is new, you should consider submitting a report.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Search the mailing lists&lt;/b&gt;&lt;br /&gt;Search the mailing lists. Look &lt;a href="./mail-lists.html"&gt;here&lt;/a&gt; for a list of Archiva mailing lists. If you cannot find everything you need, ask a question on the appropriate list.&lt;/li&gt;&lt;/ul&gt;&lt;div class="section"&gt;&lt;h4&gt;More Information&lt;a name="More_Information"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;If you are new to Archiva (or Maven), there are a number of helpful resources on the Maven website which provide step-by-step guides to getting help, useful information regarding etiquette, and lots of other resources.&lt;/p&gt;&lt;p&gt;Check out:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a class="externalLink" href="http://maven.apache.org/community.html"&gt;T&#010; he Maven Community&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a class="externalLink" href="http://maven.apache.org/users/getting-help.html"&gt;Getting Help with Maven&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h3&gt;How to Contribute&lt;a name="How_to_Contribute"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;As with any open source project, there are several ways you can help:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Join a mailing list&lt;/b&gt;&lt;br /&gt;Join a &lt;a href="./mail-lists.html"&gt;mailing list&lt;/a&gt; and answer other user's questions. You can also meet up with developers and users on &lt;tt&gt;#archiva&lt;/tt&gt; on &lt;tt&gt;irc.codehaus.org&lt;/tt&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Fix bugs&lt;/b&gt;&lt;br /&gt;Report bugs, feature requests and other issues in the &lt;a href="./issue-tracking.html"&gt;Jira&lt;/a&gt; issue tracking system. Also, read up on &lt;a href="./developers/how-we-do-things.html"&gt;how we do things&lt;/a&gt; in Archiva.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Build it&lt;/b&gt;&lt;br /&gt;Check out the &lt;a href="./source-repository.html"&gt;source code&lt;/a&gt; and &lt;a href="./developers/building.html"&gt;build Archiva&lt;/a&gt; for yourself. Fix bugs and submit patches for reported i&#010; ssues (both those you find, or that others have filed).&lt;/li&gt;&lt;li&gt;&lt;b&gt;Write documentation&lt;/b&gt;&lt;br /&gt;Help with the documentation by pointing out areas that are lacking or unclear, and if you are so inclined, submitting patches to correct it. You can quickly contribute rough thoughts to the &lt;a class="externalLink" href="http://cwiki.apache.org/confluence/display/ARCHIVA"&gt; wiki&lt;/a&gt;, or you can volunteer to help collate and organise information that is already there.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Your participation in the community is much appreciated!&lt;/p&gt;&lt;div class="section"&gt;&lt;h4&gt;More Information&lt;a name="More_Information"&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;If you are new to Archiva (or Maven), there are a number of helpful resources on the Maven website regarding contribution back to the community.&lt;/p&gt;&lt;p&gt;Check out:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a class="externalLink" href="http://maven.apache.org/community.html"&gt;The Maven Community&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;a class="externalLink" href="http://maven.apache.org/guides/development/guide-helping.html"&gt;Guid&#010; e to helping with Maven&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&#010;+            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;!-- NOTE: For help with the syntax of this file, see: --&gt;&lt;!-- http://maven.apache.org/guides/mi&#010; ni/guide-apt-format.html --&gt;&lt;div class="section"&gt;&#010;+&lt;h2&gt;Getting Involved in the Archiva Project&lt;a name="Getting_Involved_in_the_Archiva_Project"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+&lt;p&gt;Archiva is an open source project and relies heavily on an active community. If you need help, you should look to the community. Equally, please look for ways that you may contribute back.&lt;/p&gt;&#010;+&lt;p&gt;This page provides some pointers for receiving help and contributing to the Archiva community.&lt;/p&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Getting Help&lt;a name="Getting_Help"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;p&gt;There are a number of ways to find help if you have an issue. &lt;/p&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;&lt;b&gt;Read the documentation&lt;/b&gt;&lt;br /&gt;Read the &lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4.0-SNAPSHOT/userguide"&gt;user&lt;/a&gt; and &lt;a class="externalLink" href="http://archiva.apache.org/docs/1.4.0-SNAPSHOT/adminguide"&gt;administration&lt;/a&gt; documentation. &lt;/li&gt;&#010;+&lt;li&gt;&lt;b&gt;Search the Wiki&lt;/b&gt;&lt;br /&gt;Search the &lt;a class="externalLink" href="http://cwiki.apache.org/confluence/display/ARCHIVA"&gt;Archiva Wiki&lt;/a&gt;. Lots of useful information has been contributed by users here.&lt;/li&gt;&#010;+&lt;li&gt;&lt;b&gt;Submit an issue&lt;/b&gt;&lt;br /&gt;Search the &lt;a href="./issue-tracking.html"&gt;Jira&lt;/a&gt; issue tracking system. The problem you are experiencing may be a known issue and others may have suggested work-arounds. If the issue is new, you should consider submitting a report.&lt;/li&gt;&#010;+&lt;li&gt;&lt;b&gt;Search the mailing lists&lt;/b&gt;&lt;br /&gt;Search the mailing lists. Look &lt;a href="./mail-lists.html"&gt;here&lt;/a&gt; for a list of Archiva mailing lists. If you cannot find everything you need, ask a question on the appropriate list.&lt;/li&gt;&lt;/ul&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h4&gt;More Information&lt;a name="More_Information"&gt;&lt;/a&gt;&lt;/h4&gt;&#010;+&lt;p&gt;If you are new to Archiva (or Maven), there are a number of helpful resources on the Maven website which provide step-by-step guides to getting help, useful information regarding etiquette, and lots of other resources.&lt;/p&gt;&#010;+&lt;p&gt;Check out:&lt;/p&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;&lt;a class="externalLink" href="http://maven.apache.org/community.html"&gt;The Maven Community&lt;/a&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;a class="externalLink" href="http://maven.apache.org/users/getting-help.html"&gt;Getting Help with Maven&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;How to Contribute&lt;a name="How_to_Contribute"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;p&gt;As with any open source project, there are several ways you can help:&lt;/p&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;&lt;b&gt;Join a mailing list&lt;/b&gt;&lt;br /&gt;Join a &lt;a href="./mail-lists.html"&gt;mailing list&lt;/a&gt; and answer other user's questions. You can also meet up with developers and users on &lt;tt&gt;#archiva&lt;/tt&gt; on &lt;tt&gt;irc.codehaus.org&lt;/tt&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;b&gt;Fix bugs&lt;/b&gt;&lt;br /&gt;Report bugs, feature requests and other issues in the &lt;a href="./issue-tracking.html"&gt;Jira&lt;/a&gt; issue tracking system. Also, read up on &lt;a href="./developers/how-we-do-things.html"&gt;how we do things&lt;/a&gt; in Archiva.&lt;/li&gt;&#010;+&lt;li&gt;&lt;b&gt;Build it&lt;/b&gt;&lt;br /&gt;Check out the &lt;a href="./source-repository.html"&gt;source code&lt;/a&gt; and &lt;a href="./developers/building.html"&gt;build Archiva&lt;/a&gt; for yourself. Fix bugs and submit patches for reported issues (both those you find, or that others have filed).&lt;/li&gt;&#010;+&lt;li&gt;&lt;b&gt;Write documentation&lt;/b&gt;&lt;br /&gt;Help with the documentation by pointing out areas that are lacking or unclear, and if you are so inclined, submitting patches to correct it. You can quickly contribute rough thoughts to the &lt;a class="externalLink" href="http://cwiki.apache.org/confluence/display/ARCHIVA"&gt; wiki&lt;/a&gt;, or you can volunteer to help collate and organise information that is already there.&lt;/li&gt;&lt;/ul&gt;&#010;+&lt;p&gt;Your participation in the community is much appreciated!&lt;/p&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h4&gt;More Information&lt;a name="More_Information"&gt;&lt;/a&gt;&lt;/h4&gt;&#010;+&lt;p&gt;If you are new to Archiva (or Maven), there are a number of helpful resources on the Maven website regarding contribution back to the community.&lt;/p&gt;&#010;+&lt;p&gt;Check out:&lt;/p&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;&lt;a class="externalLink" href="http://maven.apache.org/community.html"&gt;The Maven Community&lt;/a&gt; &lt;/li&gt;&#010;+&lt;li&gt;&lt;a class="externalLink" href="http://maven.apache.org/guides/development/guide-helping.html"&gt;Guide to helping with Maven&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&#010;                   &lt;/div&gt;&#010;           &lt;/div&gt;&#010; &#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r1490981 [3/3] - in /archiva/site-content: ./ developers/ errors/ jsui/</title>
<author><name>olamy@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/archiva-commits/201306.mbox/%3c20130608140530.296122388A36@eris.apache.org%3e"/>
<id>urn:uuid:%3c20130608140530-296122388A36@eris-apache-org%3e</id>
<updated>2013-06-08T14:05:28Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Modified: archiva/site-content/license.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/license.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/license.html (original)&#010;+++ archiva/site-content/license.html Sat Jun  8 14:05:28 2013&#010;@@ -8,7 +8,7 @@&#010;   &lt;head&gt;&#010;     &lt;meta charset="UTF-8" /&gt;&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - Project License&lt;/title&gt;&#010;     &lt;link rel="stylesheet" href="./css/apache-maven-fluido-1.3.1-SNAPSHOT.min.css" /&gt;&#010;@@ -204,7 +204,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -212,7 +212,15 @@&#010;       &#010;                 &#010;         &lt;div id="bodyColumn" &gt;&#010;-                      &lt;div class="section"&gt;&lt;h2&gt;Overview&lt;a name="Overview"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Overview"&gt;&lt;/a&gt;&lt;p&gt;Typically the licenses listed for the project are that of the project itself, and not of dependencies.&lt;/p&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h2&gt;Project License&lt;a name="Project_License"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Project_License"&gt;&lt;/a&gt;&lt;div class="section"&gt;&lt;h3&gt;The Apache Software License, Version 2.0&lt;a name="The_Apache_Software_License_Version_2.0"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;a name="The_Apache_Software_License_Version_2.0"&gt;&lt;/a&gt;&lt;div class="source"&gt;&lt;pre&gt;&#010;+                      &lt;div class="section"&gt;&#010;+&lt;h2&gt;Overview&lt;a name="Overview"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Overview"&gt;&lt;/a&gt;&#010;+&lt;p&gt;Typically the licenses listed for the project are that of the project itself, and not of dependencies.&lt;/p&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h2&gt;Project License&lt;a name="Project_License"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Project_License"&gt;&lt;/a&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;The Apache Software License, Version 2.0&lt;a name="The_Apache_Software_License_Version_2.0"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;a name="The_Apache_Software_License_Version_2.0"&gt;&lt;/a&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;&#010;                                  Apache License&#010;                            Version 2.0, January 2004&#010;                         http://www.apache.org/licenses/&#010;&#010;Modified: archiva/site-content/mail-lists.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/mail-lists.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/mail-lists.html (original)&#010;+++ archiva/site-content/mail-lists.html Sat Jun  8 14:05:28 2013&#010;@@ -8,7 +8,7 @@&#010;   &lt;head&gt;&#010;     &lt;meta charset="UTF-8" /&gt;&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - Project Mailing Lists&lt;/title&gt;&#010;     &lt;link rel="stylesheet" href="./css/apache-maven-fluido-1.3.1-SNAPSHOT.min.css" /&gt;&#010;@@ -204,7 +204,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -213,7 +213,101 @@&#010;                 &#010;         &lt;div id="bodyColumn" &gt;&#010;                                   &#010;-            &lt;div class="section"&gt;&lt;h2&gt;Project Mailing Lists&lt;a name="Project_Mailing_Lists"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Project_Mailing_Lists"&gt;&lt;/a&gt;&lt;p&gt;These are the mailing lists that have been established for this project. For each list, there is a subscribe, unsubscribe, and an archive link.&lt;/p&gt;&lt;table border="0" class="table table-striped"&gt;&lt;tr class="a"&gt;&lt;th&gt;Name&lt;/th&gt;&lt;th&gt;Subscribe&lt;/th&gt;&lt;th&gt;Unsubscribe&lt;/th&gt;&lt;th&gt;Post&lt;/th&gt;&lt;th&gt;Archive&lt;/th&gt;&lt;th&gt;Other Archives&lt;/th&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Archiva User List&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:users-subscribe@archiva.apache.org"&gt;Subscribe&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:users-unsubscribe@archiva.apache.org"&gt;Unsubscribe&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:users@archiva.apache.org"&gt;Post&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="http://mail-archives.apache.org/mod_mbox/archiva-users/"&gt;mail-archives.apache.org&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="http://www.mail-archive.com/users@archiva.apache.org"&gt;www.mail-a&#010; rchive.com&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="http://old.nabble.com/archiva-users-f16426.html"&gt;old.nabble.com&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="http://markmail.org/list/org.apache.archiva.users"&gt;markmail.org&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Archiva Developer List&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:dev-subscribe@archiva.apache.org"&gt;Subscribe&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:dev-unsubscribe@archiva.apache.org"&gt;Unsubscribe&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:dev@archiva.apache.org"&gt;Post&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="http://mail-archives.apache.org/mod_mbox/archiva-dev"&gt;mail-archives.apache.org&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="http://www.mail-archive.com/dev@archiva.apache.org"&gt;www.mail-archive.com&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/&#010; td&gt;&lt;td&gt;&lt;a class="externalLink" href="http://old.nabble.com/archiva-dev-f16427.html"&gt;old.nabble.com&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="http://markmail.org/list/org.apache.archiva.dev"&gt;markmail.org&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Archiva Commits List&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:commits-subscribe@archiva.apache.org"&gt;Subscribe&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:commits-unsubscribe@archiva.apache.org"&gt;Unsubscribe&lt;/a&gt;&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="http://mail-archives.apache.org/mod_mbox/archiva-commits"&gt;mail-archives.apache.org&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="http://www.mail-archive.com/commits@archiva.apache.org"&gt;www.mail-archive.com&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="http://markmail.org/list/org.apache.archiva.commits"&gt;markmail.org&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Archiva I&#010; ssues List&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:issues-subscribe@archiva.apache.org"&gt;Subscribe&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:issues-unsubscribe@archiva.apache.org"&gt;Unsubscribe&lt;/a&gt;&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="http://mail-archives.apache.org/mod_mbox/archiva-issues"&gt;mail-archives.apache.org&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="http://www.mail-archive.com/issues@archiva.apache.org"&gt;www.mail-archive.com&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="http://old.nabble.com/Archiva---Issues-f29617.html"&gt;old.nabble.com&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Archiva Notifications List&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:notifications-subscribe@archiva.apache.org"&gt;Subscribe&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:notifications-unsubscribe@archiva.apache.org"&gt;Unsubscribe&lt;/a&gt;&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="http://mail-archives.apache.org/mod_mbox&#010; /archiva-notifications/"&gt;mail-archives.apache.org&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="http://www.mail-archive.com/notifications@archiva.apache.org"&gt;www.mail-archive.com&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="http://archiva.notifications.markmail.org/"&gt;archiva.notifications.markmail.org&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&#010;+            &lt;div class="section"&gt;&#010;+&lt;h2&gt;Project Mailing Lists&lt;a name="Project_Mailing_Lists"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Project_Mailing_Lists"&gt;&lt;/a&gt;&#010;+&lt;p&gt;These are the mailing lists that have been established for this project. For each list, there is a subscribe, unsubscribe, and an archive link.&lt;/p&gt;&#010;+&lt;table border="0" class="table table-striped"&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;th&gt;Name&lt;/th&gt;&#010;+&lt;th&gt;Subscribe&lt;/th&gt;&#010;+&lt;th&gt;Unsubscribe&lt;/th&gt;&#010;+&lt;th&gt;Post&lt;/th&gt;&#010;+&lt;th&gt;Archive&lt;/th&gt;&#010;+&lt;th&gt;Other Archives&lt;/th&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Archiva User List&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:users-subscribe@archiva.apache.org"&gt;Subscribe&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:users-unsubscribe@archiva.apache.org"&gt;Unsubscribe&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:users@archiva.apache.org"&gt;Post&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="http://mail-archives.apache.org/mod_mbox/archiva-users/"&gt;mail-archives.apache.org&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.mail-archive.com/users@archiva.apache.org"&gt;www.mail-archive.com&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="http://old.nabble.com/archiva-users-f16426.html"&gt;old.nabble.com&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="http://markmail.org/list/org.apache.archiva.users"&gt;markmail.org&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Archiva Developer List&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:dev-subscribe@archiva.apache.org"&gt;Subscribe&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:dev-unsubscribe@archiva.apache.org"&gt;Unsubscribe&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:dev@archiva.apache.org"&gt;Post&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="http://mail-archives.apache.org/mod_mbox/archiva-dev"&gt;mail-archives.apache.org&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.mail-archive.com/dev@archiva.apache.org"&gt;www.mail-archive.com&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="http://old.nabble.com/archiva-dev-f16427.html"&gt;old.nabble.com&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="http://markmail.org/list/org.apache.archiva.dev"&gt;markmail.org&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Archiva Commits List&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:commits-subscribe@archiva.apache.org"&gt;Subscribe&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:commits-unsubscribe@archiva.apache.org"&gt;Unsubscribe&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="http://mail-archives.apache.org/mod_mbox/archiva-commits"&gt;mail-archives.apache.org&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.mail-archive.com/commits@archiva.apache.org"&gt;www.mail-archive.com&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="http://markmail.org/list/org.apache.archiva.commits"&gt;markmail.org&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Archiva Issues List&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:issues-subscribe@archiva.apache.org"&gt;Subscribe&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:issues-unsubscribe@archiva.apache.org"&gt;Unsubscribe&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="http://mail-archives.apache.org/mod_mbox/archiva-issues"&gt;mail-archives.apache.org&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.mail-archive.com/issues@archiva.apache.org"&gt;www.mail-archive.com&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="http://old.nabble.com/Archiva---Issues-f29617.html"&gt;old.nabble.com&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Archiva Notifications List&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:notifications-subscribe@archiva.apache.org"&gt;Subscribe&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:notifications-unsubscribe@archiva.apache.org"&gt;Unsubscribe&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="http://mail-archives.apache.org/mod_mbox/archiva-notifications/"&gt;mail-archives.apache.org&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="http://www.mail-archive.com/notifications@archiva.apache.org"&gt;www.mail-archive.com&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="http://archiva.notifications.markmail.org/"&gt;archiva.notifications.markmail.org&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&#010;                   &lt;/div&gt;&#010;           &lt;/div&gt;&#010; &#010;&#010;Modified: archiva/site-content/privacy-policy.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/privacy-policy.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/privacy-policy.html (original)&#010;+++ archiva/site-content/privacy-policy.html Sat Jun  8 14:05:28 2013&#010;@@ -10,7 +10,7 @@&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;     &lt;meta name="author" content="Vincent Siveton" /&gt;&#010;     &lt;meta name="Date-Creation-yyyymmdd" content="20081203" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - Privacy Policy&lt;/title&gt;&#010;     &lt;link rel="stylesheet" href="./css/apache-maven-fluido-1.3.1-SNAPSHOT.min.css" /&gt;&#010;@@ -206,7 +206,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -215,7 +215,18 @@&#010;                 &#010;         &lt;div id="bodyColumn" &gt;&#010;                                   &#010;-            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;div class="section"&gt;&lt;h2&gt;Privacy Policy&lt;a name="Privacy_Policy"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;Information about yo&#010; ur use of this website is collected using server access logs and a tracking cookie. The collected information consists of the following:&lt;/p&gt;&lt;ol style="list-style-type: decimal"&gt;&lt;li&gt;The IP address from which you access the website;&lt;/li&gt;&lt;li&gt;The type of browser and operating system you use to access our site;&lt;/li&gt;&lt;li&gt;The date and time you access our site;&lt;/li&gt;&lt;li&gt;The pages you visit; and&lt;/li&gt;&lt;li&gt;The addresses of pages from where you followed a link to our site.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Part of this information is gathered using a tracking cookie set by the &lt;a class="externalLink" href="http://www.google.com/analytics/"&gt;Google Analytics&lt;/a&gt; service and handled by Google as described in their &lt;a class="externalLink" href="http://www.google.com/privacy.html"&gt;privacy policy&lt;/a&gt;. See your browser documentation for instructions on how to disable the cookie if you prefer not to share this data with Google.&lt;/p&gt;&lt;p&gt;We use the gathered information to help us make our site more useful to visitors and t&#010; o better understand how and when our site is used. We do not track or collect personally identifiable information or associate gathered data with any personally identifying information from other sources.&lt;/p&gt;&lt;p&gt;By using this website, you consent to the collection of this data in the manner and for the purpose described above.&lt;/p&gt;&lt;/div&gt;&#010;+            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;div class="section"&gt;&#010;+&lt;h2&gt;Privacy Policy&lt;a name="Privacy_Policy"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+&lt;p&gt;Information about your use of this website is collected using server access logs and a tracking cookie. The collected information consists of the following:&lt;/p&gt;&#010;+&lt;ol style="list-style-type: decimal"&gt;&#010;+&lt;li&gt;The IP address from which you access the website;&lt;/li&gt;&#010;+&lt;li&gt;The type of browser and operating system you use to access our site;&lt;/li&gt;&#010;+&lt;li&gt;The date and time you access our site;&lt;/li&gt;&#010;+&lt;li&gt;The pages you visit; and&lt;/li&gt;&#010;+&lt;li&gt;The addresses of pages from where you followed a link to our site.&lt;/li&gt;&lt;/ol&gt;&#010;+&lt;p&gt;Part of this information is gathered using a tracking cookie set by the &lt;a class="externalLink" href="http://www.google.com/analytics/"&gt;Google Analytics&lt;/a&gt; service and handled by Google as described in their &lt;a class="externalLink" href="http://www.google.com/privacy.html"&gt;privacy policy&lt;/a&gt;. See your browser documentation for instructions on how to disable the cookie if you prefer not to share this data with Google.&lt;/p&gt;&#010;+&lt;p&gt;We use the gathered information to help us make our site more useful to visitors and to better understand how and when our site is used. We do not track or collect personally identifiable information or associate gathered data with any personally identifying information from other sources.&lt;/p&gt;&#010;+&lt;p&gt;By using this website, you consent to the collection of this data in the manner and for the purpose described above.&lt;/p&gt;&lt;/div&gt;&#010;                   &lt;/div&gt;&#010;           &lt;/div&gt;&#010; &#010;&#010;Modified: archiva/site-content/project-info.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/project-info.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/project-info.html (original)&#010;+++ archiva/site-content/project-info.html Sat Jun  8 14:05:28 2013&#010;@@ -8,7 +8,7 @@&#010;   &lt;head&gt;&#010;     &lt;meta charset="UTF-8" /&gt;&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - Project Information&lt;/title&gt;&#010;     &lt;link rel="stylesheet" href="./css/apache-maven-fluido-1.3.1-SNAPSHOT.min.css" /&gt;&#010;@@ -204,7 +204,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -213,7 +213,33 @@&#010;                 &#010;         &lt;div id="bodyColumn" &gt;&#010;                                   &#010;-            &lt;div class="section"&gt;&lt;h2&gt;Project Information&lt;a name="Project_Information"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;This document provides an overview of the various documents and links that are part of this project's general information. All of this content is automatically generated by &lt;a class="externalLink" href="http://maven.apache.org"&gt;Maven&lt;/a&gt; on behalf of the project.&lt;/p&gt;&lt;div class="section"&gt;&lt;h3&gt;Overview&lt;a name="Overview"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;table border="0" class="table table-striped"&gt;&lt;tr class="a"&gt;&lt;th&gt;Document&lt;/th&gt;&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;&lt;a href="integration.html"&gt;Continuous Integration&lt;/a&gt;&lt;/td&gt;&lt;td&gt;This is a link to the definitions of all continuous integration processes that builds and tests code on a frequent, regular basis.&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;&lt;a href="mail-lists.html"&gt;Mailing Lists&lt;/a&gt;&lt;/td&gt;&lt;td&gt;This document provides subscription and archive information for this project's mailing lists.&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;&lt;a href="issue-tracking.html"&gt;Issue Tracking&lt;/a&gt;&lt;/&#010; td&gt;&lt;td&gt;This is a link to the issue management system for this project. Issues (bugs, features, change requests) can be created and queried using this link.&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;&lt;a href="license.html"&gt;Project License&lt;/a&gt;&lt;/td&gt;&lt;td&gt;This is a link to the definitions of project licenses.&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;&lt;a href="team-list.html"&gt;Project Team&lt;/a&gt;&lt;/td&gt;&lt;td&gt;This document provides information on the members of this project. These are the individuals who have contributed to the project in one form or another.&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;&lt;a href="source-repository.html"&gt;Source Repository&lt;/a&gt;&lt;/td&gt;&lt;td&gt;This is a link to the online source repository that can be viewed via a web browser.&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&#010;+            &lt;div class="section"&gt;&#010;+&lt;h2&gt;Project Information&lt;a name="Project_Information"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+&lt;p&gt;This document provides an overview of the various documents and links that are part of this project's general information. All of this content is automatically generated by &lt;a class="externalLink" href="http://maven.apache.org"&gt;Maven&lt;/a&gt; on behalf of the project.&lt;/p&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Overview&lt;a name="Overview"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;table border="0" class="table table-striped"&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;th&gt;Document&lt;/th&gt;&#010;+&lt;th&gt;Description&lt;/th&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;&lt;a href="integration.html"&gt;Continuous Integration&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;This is a link to the definitions of all continuous integration processes that builds and tests code on a frequent, regular basis.&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;&lt;a href="mail-lists.html"&gt;Mailing Lists&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;This document provides subscription and archive information for this project's mailing lists.&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;&lt;a href="issue-tracking.html"&gt;Issue Tracking&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;This is a link to the issue management system for this project. Issues (bugs, features, change requests) can be created and queried using this link.&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;&lt;a href="license.html"&gt;Project License&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;This is a link to the definitions of project licenses.&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;&lt;a href="team-list.html"&gt;Project Team&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;This document provides information on the members of this project. These are the individuals who have contributed to the project in one form or another.&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;&lt;a href="source-repository.html"&gt;Source Repository&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;This is a link to the online source repository that can be viewed via a web browser.&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&#010;                   &lt;/div&gt;&#010;           &lt;/div&gt;&#010; &#010;&#010;Modified: archiva/site-content/security.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/security.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/security.html (original)&#010;+++ archiva/site-content/security.html Sat Jun  8 14:05:28 2013&#010;@@ -8,7 +8,7 @@&#010;   &lt;head&gt;&#010;     &lt;meta charset="UTF-8" /&gt;&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - Security Vulnerabilities&lt;/title&gt;&#010;     &lt;link rel="stylesheet" href="./css/apache-maven-fluido-1.3.1-SNAPSHOT.min.css" /&gt;&#010;@@ -204,7 +204,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -213,7 +213,50 @@&#010;                 &#010;         &lt;div id="bodyColumn" &gt;&#010;                                   &#010;-            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;!-- NOTE: For help with the syntax of this file, see: --&gt;&lt;!-- http://maven.apache.org/guides/mi&#010; ni/guide-apt-format.html --&gt;&lt;div class="section"&gt;&lt;h2&gt;Security Vulnerabilities&lt;a name="Security_Vulnerabilities"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;Please note that binary patches are not produced for individual vulnerabilities. To obtain the binary fix for a particular vulnerability you should upgrade to an Apache Archiva version where that vulnerability has been fixed.&lt;/p&gt;&lt;p&gt;For more information about reporting vulnerabilities, see the &lt;a class="externalLink" href="http://www.apache.org/security/"&gt; Apache Security Team&lt;/a&gt; page.&lt;/p&gt;&lt;div class="section"&gt;&lt;h3&gt;CVE-2010-1870: Struts2 remote commands execution&lt;a name="CVE-2010-1870:_Struts2_remote_commands_execution"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Apache Archiva is affected by a vulnerability in the version of the Struts library being used, which allows a malicious user to run code on the server remotely. More details about the vulnerability can be found at &lt;a class="externalLink" href="http://struts.apache.org/2.2.1/docs/s2-005.html"&gt;http://struts.apache.org/2.2.1/docs/&#010; s2-005.html&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;Versions Affected:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Archiva 1.3 to Archiva 1.3.5&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;The unsupported versions Archiva 1.2 to 1.2.2 are also affected.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;All users are recommended to upgrade to &lt;a href="./download.cgi"&gt; Archiva 1.3.6&lt;/a&gt;, which configures Struts in such a way that it is not affected by this issue.&lt;/p&gt;&lt;p&gt;Archiva 1.4-M3 and later is not affected by this issue.&lt;/p&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h3&gt;CVE-2011-1077: Multiple XSS issues&lt;a name="CVE-2011-1077:_Multiple_XSS_issues"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Apache Archiva is vulnerable to multiple XSS issues, both stored (persistent) and reflected (non-persistent). Javascript which might contain malicious code can be appended in a request parameter or stored as a value in a submitted form, and get executed.&lt;/p&gt;&lt;p&gt;Versions Affected:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Archiva 1.3 to 1.3.4&lt;/li&gt;&lt;li&gt;The unsupported versions Archiva 1.0 to 1.2.2 are also affected.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h3&gt;CVE-2011-1026: Multiple CSRF issues&lt;a n&#010; ame="CVE-2011-1026:_Multiple_CSRF_issues"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;An attacker can build a simple html page containing a hidden Image tag (eg: &lt;tt&gt;&amp;lt;img src=vulnurl width=0 height=0 /&lt;/tt&gt;&amp;gt;) and entice the administrator to access the page.&lt;/p&gt;&lt;p&gt;Versions Affected:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Archiva 1.3 to 1.3.4&lt;/li&gt;&lt;li&gt;The unsupported versions Archiva 1.0 to 1.2.2 are also affected.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h3&gt;CVE-2011-0533: Apache Archiva cross-site scripting vulnerability&lt;a name="CVE-2011-0533:_Apache_Archiva_cross-site_scripting_vulnerability"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;A request that included a specially crafted request parameter could be used to inject arbitrary HTML or Javascript into the Archiva user management page. This fix is available in version &lt;a href="./download.html"&gt; 1.3.4&lt;/a&gt; of Apache Archiva. All users must upgrade to this version (or higher).&lt;/p&gt;&lt;p&gt;Versions Affected:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Archiva 1.3 to 1.3.3&lt;/li&gt;&lt;li&gt;The unsupported versions Archiva 1.0 to 1.2.2 are also affected.&lt;/li&gt;&lt;/ul&gt;&lt;/&#010; div&gt;&lt;div class="section"&gt;&lt;h3&gt;CVE-2010-3449: Apache Archiva CSRF Vulnerability&lt;a name="CVE-2010-3449:_Apache_Archiva_CSRF_Vulnerability"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Apache Archiva doesn't check which form sends credentials. An attacker can create a specially crafted page and force archiva administrators to view it and change their credentials. To fix this, a referrer check was added to the security interceptor for all secured actions. A prompt for the administrator's password when changing a user account was also set in place. This fix is available in version &lt;a href="./download.html"&gt; 1.3.2&lt;/a&gt; of Apache Archiva. All users must upgrade to this version (or higher).&lt;/p&gt;&lt;p&gt;Versions Affected:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Archiva 1.3 to 1.3.1&lt;/li&gt;&lt;li&gt;Archiva 1.2 to 1.2.2 (end of life)&lt;/li&gt;&lt;li&gt;Archiva 1.1 to 1.1.4 (end of life)&lt;/li&gt;&lt;li&gt;Archiva 1.0 to 1.0.3 (end of life)&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&#010;+            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;!-- NOTE: For help with the syntax of this file, see: --&gt;&lt;!-- http://maven.apache.org/guides/mi&#010; ni/guide-apt-format.html --&gt;&lt;div class="section"&gt;&#010;+&lt;h2&gt;Security Vulnerabilities&lt;a name="Security_Vulnerabilities"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+&lt;p&gt;Please note that binary patches are not produced for individual vulnerabilities. To obtain the binary fix for a particular vulnerability you should upgrade to an Apache Archiva version where that vulnerability has been fixed.&lt;/p&gt;&#010;+&lt;p&gt;For more information about reporting vulnerabilities, see the &lt;a class="externalLink" href="http://www.apache.org/security/"&gt; Apache Security Team&lt;/a&gt; page.&lt;/p&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;CVE-2010-1870: Struts2 remote commands execution&lt;a name="CVE-2010-1870:_Struts2_remote_commands_execution"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;p&gt;Apache Archiva is affected by a vulnerability in the version of the Struts library being used, which allows a malicious user to run code on the server remotely. More details about the vulnerability can be found at &lt;a class="externalLink" href="http://struts.apache.org/2.2.1/docs/s2-005.html"&gt;http://struts.apache.org/2.2.1/docs/s2-005.html&lt;/a&gt;.&lt;/p&gt;&#010;+&lt;p&gt;Versions Affected:&lt;/p&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;Archiva 1.3 to Archiva 1.3.5&lt;/li&gt;&lt;/ul&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;The unsupported versions Archiva 1.2 to 1.2.2 are also affected.&lt;/li&gt;&lt;/ul&gt;&#010;+&lt;p&gt;All users are recommended to upgrade to &lt;a href="./download.cgi"&gt; Archiva 1.3.6&lt;/a&gt;, which configures Struts in such a way that it is not affected by this issue.&lt;/p&gt;&#010;+&lt;p&gt;Archiva 1.4-M3 and later is not affected by this issue.&lt;/p&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;CVE-2011-1077: Multiple XSS issues&lt;a name="CVE-2011-1077:_Multiple_XSS_issues"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;p&gt;Apache Archiva is vulnerable to multiple XSS issues, both stored (persistent) and reflected (non-persistent). Javascript which might contain malicious code can be appended in a request parameter or stored as a value in a submitted form, and get executed.&lt;/p&gt;&#010;+&lt;p&gt;Versions Affected:&lt;/p&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;Archiva 1.3 to 1.3.4&lt;/li&gt;&#010;+&lt;li&gt;The unsupported versions Archiva 1.0 to 1.2.2 are also affected.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;CVE-2011-1026: Multiple CSRF issues&lt;a name="CVE-2011-1026:_Multiple_CSRF_issues"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;p&gt;An attacker can build a simple html page containing a hidden Image tag (eg: &lt;tt&gt;&amp;lt;img src=vulnurl width=0 height=0 /&lt;/tt&gt;&amp;gt;) and entice the administrator to access the page.&lt;/p&gt;&#010;+&lt;p&gt;Versions Affected:&lt;/p&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;Archiva 1.3 to 1.3.4&lt;/li&gt;&#010;+&lt;li&gt;The unsupported versions Archiva 1.0 to 1.2.2 are also affected.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;CVE-2011-0533: Apache Archiva cross-site scripting vulnerability&lt;a name="CVE-2011-0533:_Apache_Archiva_cross-site_scripting_vulnerability"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;p&gt;A request that included a specially crafted request parameter could be used to inject arbitrary HTML or Javascript into the Archiva user management page. This fix is available in version &lt;a href="./download.html"&gt; 1.3.4&lt;/a&gt; of Apache Archiva. All users must upgrade to this version (or higher).&lt;/p&gt;&#010;+&lt;p&gt;Versions Affected:&lt;/p&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;Archiva 1.3 to 1.3.3&lt;/li&gt;&#010;+&lt;li&gt;The unsupported versions Archiva 1.0 to 1.2.2 are also affected.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;CVE-2010-3449: Apache Archiva CSRF Vulnerability&lt;a name="CVE-2010-3449:_Apache_Archiva_CSRF_Vulnerability"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;p&gt;Apache Archiva doesn't check which form sends credentials. An attacker can create a specially crafted page and force archiva administrators to view it and change their credentials. To fix this, a referrer check was added to the security interceptor for all secured actions. A prompt for the administrator's password when changing a user account was also set in place. This fix is available in version &lt;a href="./download.html"&gt; 1.3.2&lt;/a&gt; of Apache Archiva. All users must upgrade to this version (or higher).&lt;/p&gt;&#010;+&lt;p&gt;Versions Affected:&lt;/p&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;Archiva 1.3 to 1.3.1&lt;/li&gt;&#010;+&lt;li&gt;Archiva 1.2 to 1.2.2 (end of life)&lt;/li&gt;&#010;+&lt;li&gt;Archiva 1.1 to 1.1.4 (end of life)&lt;/li&gt;&#010;+&lt;li&gt;Archiva 1.0 to 1.0.3 (end of life)&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&#010;                   &lt;/div&gt;&#010;           &lt;/div&gt;&#010; &#010;&#010;Modified: archiva/site-content/source-repository.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/source-repository.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/source-repository.html (original)&#010;+++ archiva/site-content/source-repository.html Sat Jun  8 14:05:28 2013&#010;@@ -8,7 +8,7 @@&#010;   &lt;head&gt;&#010;     &lt;meta charset="UTF-8" /&gt;&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - Source Repository&lt;/title&gt;&#010;     &lt;link rel="stylesheet" href="./css/apache-maven-fluido-1.3.1-SNAPSHOT.min.css" /&gt;&#010;@@ -204,7 +204,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -213,7 +213,39 @@&#010;                 &#010;         &lt;div id="bodyColumn" &gt;&#010;                                   &#010;-            &lt;div class="section"&gt;&lt;h2&gt;Overview&lt;a name="Overview"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Overview"&gt;&lt;/a&gt;&lt;p&gt;This project uses &lt;a class="externalLink" href="http://subversion.apache.org/"&gt;Subversion&lt;/a&gt; to manage its source code. Instructions on Subversion use can be found at &lt;a class="externalLink" href="http://svnbook.red-bean.com/"&gt;http://svnbook.red-bean.com/&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h2&gt;Web Access&lt;a name="Web_Access"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Web_Access"&gt;&lt;/a&gt;&lt;p&gt;The following is a link to the online source repository.&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;&lt;a class="externalLink" href="http://svn.apache.org/viewvc/archiva/"&gt;http://svn.apache.org/viewvc/archiva/&lt;/a&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h2&gt;Anonymous access&lt;a name="Anonymous_access"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Anonymous_access"&gt;&lt;/a&gt;&lt;p&gt;The source can be checked out anonymously from SVN with this command:&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;$ svn checkout http://svn.apache.org/repos/asf/archiva/all archi&#010; va-all&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h2&gt;Developer access&lt;a name="Developer_access"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Developer_access"&gt;&lt;/a&gt;&lt;p&gt;Everyone can access the Subversion repository via HTTP, but Committers must checkout the Subversion repository via HTTPS.&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;$ svn checkout https://svn.apache.org/repos/asf/archiva/all archiva-all&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;To commit changes to the repository, execute the following command to commit your changes (svn will prompt you for your password)&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyprint"&gt;$ svn commit --username your-username -m &amp;quot;A message&amp;quot;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h2&gt;Access from behind a firewall&lt;a name="Access_from_behind_a_firewall"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Access_from_behind_a_firewall"&gt;&lt;/a&gt;&lt;p&gt;For those users who are stuck behind a corporate firewall which is blocking HTTP access to the Subversion repository, you can try to access it via the developer connection:&lt;/p&gt;&lt;div class="so&#010; urce"&gt;&lt;pre class="prettyprint"&gt;$ svn checkout https://svn.apache.org/repos/asf/archiva/all archiva-all&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h2&gt;Access through a proxy&lt;a name="Access_through_a_proxy"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Access_through_a_proxy"&gt;&lt;/a&gt;&lt;p&gt;The Subversion client can go through a proxy, if you configure it to do so. First, edit your &amp;quot;servers&amp;quot; configuration file to indicate which proxy to use. The file's location depends on your operating system. On Linux or Unix it is located in the directory &amp;quot;~/.subversion&amp;quot;. On Windows it is in &amp;quot;%APPDATA%\Subversion&amp;quot;. (Try &amp;quot;echo %APPDATA%&amp;quot;, note this is a hidden directory.)&lt;/p&gt;&lt;p&gt;There are comments in the file explaining what to do. If you don't have that file, get the latest Subversion client and run any command; this will cause the configuration directory and template files to be created.&lt;/p&gt;&lt;p&gt;Example: Edit the 'servers' file and add something like:&lt;/p&gt;&lt;div class="source"&gt;&lt;pre class="prettyp&#010; rint"&gt;[global]&#010;+            &lt;div class="section"&gt;&#010;+&lt;h2&gt;Overview&lt;a name="Overview"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Overview"&gt;&lt;/a&gt;&#010;+&lt;p&gt;This project uses &lt;a class="externalLink" href="http://subversion.apache.org/"&gt;Subversion&lt;/a&gt; to manage its source code. Instructions on Subversion use can be found at &lt;a class="externalLink" href="http://svnbook.red-bean.com/"&gt;http://svnbook.red-bean.com/&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h2&gt;Web Access&lt;a name="Web_Access"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Web_Access"&gt;&lt;/a&gt;&#010;+&lt;p&gt;The following is a link to the online source repository.&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;&lt;a class="externalLink" href="http://svn.apache.org/viewvc/archiva/"&gt;http://svn.apache.org/viewvc/archiva/&lt;/a&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h2&gt;Anonymous access&lt;a name="Anonymous_access"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Anonymous_access"&gt;&lt;/a&gt;&#010;+&lt;p&gt;The source can be checked out anonymously from SVN with this command:&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;$ svn checkout http://svn.apache.org/repos/asf/archiva/all archiva-all&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h2&gt;Developer access&lt;a name="Developer_access"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Developer_access"&gt;&lt;/a&gt;&#010;+&lt;p&gt;Everyone can access the Subversion repository via HTTP, but Committers must checkout the Subversion repository via HTTPS.&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;$ svn checkout https://svn.apache.org/repos/asf/archiva/all archiva-all&lt;/pre&gt;&lt;/div&gt;&#010;+&lt;p&gt;To commit changes to the repository, execute the following command to commit your changes (svn will prompt you for your password)&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;$ svn commit --username your-username -m &amp;quot;A message&amp;quot;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h2&gt;Access from behind a firewall&lt;a name="Access_from_behind_a_firewall"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Access_from_behind_a_firewall"&gt;&lt;/a&gt;&#010;+&lt;p&gt;For those users who are stuck behind a corporate firewall which is blocking HTTP access to the Subversion repository, you can try to access it via the developer connection:&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;$ svn checkout https://svn.apache.org/repos/asf/archiva/all archiva-all&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h2&gt;Access through a proxy&lt;a name="Access_through_a_proxy"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="Access_through_a_proxy"&gt;&lt;/a&gt;&#010;+&lt;p&gt;The Subversion client can go through a proxy, if you configure it to do so. First, edit your &amp;quot;servers&amp;quot; configuration file to indicate which proxy to use. The file's location depends on your operating system. On Linux or Unix it is located in the directory &amp;quot;~/.subversion&amp;quot;. On Windows it is in &amp;quot;%APPDATA%\Subversion&amp;quot;. (Try &amp;quot;echo %APPDATA%&amp;quot;, note this is a hidden directory.)&lt;/p&gt;&#010;+&lt;p&gt;There are comments in the file explaining what to do. If you don't have that file, get the latest Subversion client and run any command; this will cause the configuration directory and template files to be created.&lt;/p&gt;&#010;+&lt;p&gt;Example: Edit the 'servers' file and add something like:&lt;/p&gt;&#010;+&lt;div class="source"&gt;&#010;+&lt;pre&gt;[global]&#010; http-proxy-host = your.proxy.name&#010; http-proxy-port = 3128&#010; &lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#010;&#010;Modified: archiva/site-content/team-list.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/team-list.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/team-list.html (original)&#010;+++ archiva/site-content/team-list.html Sat Jun  8 14:05:28 2013&#010;@@ -8,7 +8,7 @@&#010;   &lt;head&gt;&#010;     &lt;meta charset="UTF-8" /&gt;&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - Team list&lt;/title&gt;&#010;     &lt;link rel="stylesheet" href="./css/apache-maven-fluido-1.3.1-SNAPSHOT.min.css" /&gt;&#010;@@ -204,7 +204,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -213,7 +213,361 @@&#010;                 &#010;         &lt;div id="bodyColumn" &gt;&#010;                                   &#010;-            &lt;div class="section"&gt;&lt;h2&gt;The Team&lt;a name="The_Team"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="The_Team"&gt;&lt;/a&gt;&lt;p&gt;A successful project requires many people to play many roles. Some members write code or documentation, while others are valuable as testers, submitting patches and suggestions.&lt;/p&gt;&lt;p&gt;The team is comprised of Members and Contributors. Members have direct access to the source of a project and actively evolve the code-base. Contributors improve the project through submission of patches and suggestions to the Members. The number of Contributors to the project is unbounded. Get involved today. All contributions to the project are greatly appreciated.&lt;/p&gt;&lt;div class="section"&gt;&lt;h3&gt;Members&lt;a name="Members"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;a name="Members"&gt;&lt;/a&gt;&lt;p&gt;The following is a list of developers with commit privileges that have directly contributed to the project in one way or another.&lt;/p&gt;&lt;table border="0" class="table table-striped"&gt;&lt;tr class="a"&gt;&lt;th&gt;Image&lt;/th&gt;&lt;th&gt;Id&lt;/th&gt;&lt;th&gt;Name&lt;/th&gt;&lt;th&gt;Email&lt;/th&gt;&lt;th&gt;O&#010; rganization&lt;/th&gt;&lt;th&gt;Roles&lt;/th&gt;&lt;th&gt;Time Zone&lt;/th&gt;&lt;th&gt;Actual Time (GMT)&lt;/th&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/a49e2c09c4c36374c40e6cb819157eda?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&lt;td&gt;&lt;a name="oching"&gt;&lt;/a&gt;oching&lt;/td&gt;&lt;td&gt;Maria Odea B. Ching&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:oching@apache.org"&gt;oching@apache.org&lt;/a&gt;&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;PMC Chair&lt;/td&gt;&lt;td&gt;+8&lt;/td&gt;&lt;td&gt;&lt;span id="developer-0"&gt;+8&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/1db61ec29963d4a77ef2275140144fd4?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&lt;td&gt;&lt;a name="brett"&gt;&lt;/a&gt;brett&lt;/td&gt;&lt;td&gt;Brett Porter&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:brett@apache.org"&gt;brett@apache.org&lt;/a&gt;&lt;/td&gt;&lt;td&gt;ASF&lt;/td&gt;&lt;td&gt;PMC Member&lt;/td&gt;&lt;td&gt;+10&lt;/td&gt;&lt;td&gt;&lt;span id="developer-1"&gt;+10&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/6559d4b2de15cb1433fc13c34599e4c7?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&lt;td&gt;&lt;a name="carlos"&gt;&lt;/a&gt;carlos&lt;/td&gt;&lt;td&gt;Carlos Sanchez&lt;/td&gt;&lt;td&gt;&lt;a class="externalLi&#010; nk" href="mailto:carlos@apache.org"&gt;carlos@apache.org&lt;/a&gt;&lt;/td&gt;&lt;td&gt;ASF&lt;/td&gt;&lt;td&gt;PMC Member&lt;/td&gt;&lt;td&gt;+1&lt;/td&gt;&lt;td&gt;&lt;span id="developer-2"&gt;+1&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/89d1772a8f19085482a13decc709cda2?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&lt;td&gt;&lt;a name="epunzalan"&gt;&lt;/a&gt;epunzalan&lt;/td&gt;&lt;td&gt;Edwin Punzalan&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:epunzalan@apache.org"&gt;epunzalan@apache.org&lt;/a&gt;&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;PMC Member&lt;/td&gt;&lt;td&gt;-8&lt;/td&gt;&lt;td&gt;&lt;span id="developer-3"&gt;-8&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/3fe23ff82e7920b5941e18515adf9bba?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&lt;td&gt;&lt;a name="nicolas"&gt;&lt;/a&gt;nicolas&lt;/td&gt;&lt;td&gt;Nicolas De Loof&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:nicolas@apache.org"&gt;nicolas@apache.org&lt;/a&gt;&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;PMC Member&lt;/td&gt;&lt;td&gt;+1&lt;/td&gt;&lt;td&gt;&lt;span id="developer-4"&gt;+1&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/bab29f762bea8e578505424443d8cd41?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/&#010; td&gt;&lt;td&gt;&lt;a name="olamy"&gt;&lt;/a&gt;olamy&lt;/td&gt;&lt;td&gt;Olivier Lamy&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:olamy@apache.org"&gt;olamy@apache.org&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Talend&lt;/td&gt;&lt;td&gt;PMC Member&lt;/td&gt;&lt;td&gt;Australia/Melbourne&lt;/td&gt;&lt;td&gt;&lt;span id="developer-5"&gt;Australia/Melbourne&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/c8686cad245196c9e392201ad7bb364f?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&lt;td&gt;&lt;a name="dennisl"&gt;&lt;/a&gt;dennisl&lt;/td&gt;&lt;td&gt;Dennis Lundberg&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:dennisl@apache.org"&gt;dennisl@apache.org&lt;/a&gt;&lt;/td&gt;&lt;td&gt;ASF&lt;/td&gt;&lt;td&gt;Committer&lt;/td&gt;&lt;td&gt;+1&lt;/td&gt;&lt;td&gt;&lt;span id="developer-6"&gt;+1&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/76f1823568e5f31931bd32415a4cffa7?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&lt;td&gt;&lt;a name="martinc"&gt;&lt;/a&gt;martinc&lt;/td&gt;&lt;td&gt;Martin Cooper&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:martinc@apache.org"&gt;martinc@apache.org&lt;/a&gt;&lt;/td&gt;&lt;td&gt;ASF&lt;/td&gt;&lt;td&gt;Committer&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;&lt;span id="developer-7"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class=&#010; "b"&gt;&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/07a0055c4259569aff19ee558ee3999d?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&lt;td&gt;&lt;a name="mbaclay"&gt;&lt;/a&gt;mbaclay&lt;/td&gt;&lt;td&gt;Marecor M. Baclay&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:mbaclay@apache.org"&gt;mbaclay@apache.org&lt;/a&gt;&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;Committer&lt;/td&gt;&lt;td&gt;+8&lt;/td&gt;&lt;td&gt;&lt;span id="developer-8"&gt;+8&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/026acc6fb60c44ed137de35517837065?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&lt;td&gt;&lt;a name="jzurbano"&gt;&lt;/a&gt;jzurbano&lt;/td&gt;&lt;td&gt;Jevica Arianne B. Zurbano&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:jzurbano@apache.org"&gt;jzurbano@apache.org&lt;/a&gt;&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;Committer&lt;/td&gt;&lt;td&gt;+8&lt;/td&gt;&lt;td&gt;&lt;span id="developer-9"&gt;+8&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/27790393b874159fe05609ca7ed812f9?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&lt;td&gt;&lt;a name="jbonofre"&gt;&lt;/a&gt;jbonofre&lt;/td&gt;&lt;td&gt;Jean-Baptiste Onofr&amp;#xe9;&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:jbonofre@apache.org"&gt;jbonofre@apach&#010; e.org&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Talend&lt;/td&gt;&lt;td&gt;Committer&lt;/td&gt;&lt;td&gt;+1&lt;/td&gt;&lt;td&gt;&lt;span id="developer-10"&gt;+1&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/030e414fc478d45703ba0cbf6fa431f9?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&lt;td&gt;&lt;a name="skygo"&gt;&lt;/a&gt;skygo&lt;/td&gt;&lt;td&gt;Eric Barboni&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:skygo@apache.org"&gt;skygo@apache.org&lt;/a&gt;&lt;/td&gt;&lt;td&gt;ASF&lt;/td&gt;&lt;td&gt;Committer&lt;/td&gt;&lt;td&gt;+1&lt;/td&gt;&lt;td&gt;&lt;span id="developer-11"&gt;+1&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/aeb4e8e65a6c91233e1a9128d8989093?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&lt;td&gt;&lt;a name="alecharp"&gt;&lt;/a&gt;alecharp&lt;/td&gt;&lt;td&gt;Adrien Lecharpentier&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:alecharp@apache.org"&gt;alecharp@apache.org&lt;/a&gt;&lt;/td&gt;&lt;td&gt;Zenika&lt;/td&gt;&lt;td&gt;Committer&lt;/td&gt;&lt;td&gt;+1&lt;/td&gt;&lt;td&gt;&lt;span id="developer-12"&gt;+1&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/38f7796e51a469f8efc08de2d88fa335?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&lt;td&gt;&lt;a name="joakime"&gt;&lt;/a&gt;joakime&lt;/td&gt;&lt;td&gt;Jo&#010; akim Erdfelt&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:joakime@apache.org"&gt;joakime@apache.org&lt;/a&gt;&lt;/td&gt;&lt;td&gt;ASF&lt;/td&gt;&lt;td&gt;Emeritus&lt;/td&gt;&lt;td&gt;-5&lt;/td&gt;&lt;td&gt;&lt;span id="developer-13"&gt;-5&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/00000000000000000000000000000000?d=blank&amp;amp;f=y&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&lt;td&gt;&lt;a name="jvanzyl"&gt;&lt;/a&gt;jvanzyl&lt;/td&gt;&lt;td&gt;Jason van Zyl&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;Emeritus&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;&lt;span id="developer-14"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/00000000000000000000000000000000?d=blank&amp;amp;f=y&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&lt;td&gt;&lt;a name="bayard"&gt;&lt;/a&gt;bayard&lt;/td&gt;&lt;td&gt;Henri Yandell&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;Emeritus&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;&lt;span id="developer-15"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/00000000000000000000000000000000?d=blank&amp;amp;f=y&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&lt;td&gt;&lt;a name="kenney"&gt;&lt;/a&gt;kenney&lt;/td&gt;&lt;td&gt;Kenney Westerhof&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;Emeritus&lt;/td&#010; &gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;&lt;span id="developer-16"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/00000000000000000000000000000000?d=blank&amp;amp;f=y&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&lt;td&gt;&lt;a name="aheritier"&gt;&lt;/a&gt;aheritier&lt;/td&gt;&lt;td&gt;Arnaud Heritier&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;Emeritus&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;&lt;span id="developer-17"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/00000000000000000000000000000000?d=blank&amp;amp;f=y&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&lt;td&gt;&lt;a name="bellingard"&gt;&lt;/a&gt;bellingard&lt;/td&gt;&lt;td&gt;Fabrice Bellingard&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;Emeritus&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;&lt;span id="developer-18"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/00000000000000000000000000000000?d=blank&amp;amp;f=y&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&lt;td&gt;&lt;a name="jdumay"&gt;&lt;/a&gt;jdumay&lt;/td&gt;&lt;td&gt;James William Dumay&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;Emeritus&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;&lt;span id="developer-19"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;&lt;img src="http://www.gravatar.com/avat&#010; ar/00000000000000000000000000000000?d=blank&amp;amp;f=y&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&lt;td&gt;&lt;a name="jmcconnell"&gt;&lt;/a&gt;jmcconnell&lt;/td&gt;&lt;td&gt;Jesse McConnell&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;Emeritus&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;&lt;span id="developer-20"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/efe7252f3b18253bf4318062ece95a3b?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&lt;td&gt;&lt;a name="evenisse"&gt;&lt;/a&gt;evenisse&lt;/td&gt;&lt;td&gt;Emmanuel Venisse&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:evenisse@apache.org"&gt;evenisse@apache.org&lt;/a&gt;&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;Emeritus&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;&lt;span id="developer-21"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/b38a3be83226b10b399985496c058e4c?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&lt;td&gt;&lt;a name="jtolentino"&gt;&lt;/a&gt;jtolentino&lt;/td&gt;&lt;td&gt;Ernesto Tolentino Jr.&lt;/td&gt;&lt;td&gt;&lt;a class="externalLink" href="mailto:jtolentino@apache.org"&gt;jtolentino@apache.org&lt;/a&gt;&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;Emeritus&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;&lt;span id="developer-22"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;&lt;im&#010; g src="http://www.gravatar.com/avatar/00000000000000000000000000000000?d=blank&amp;amp;f=y&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&lt;td&gt;&lt;a name="wsmoak"&gt;&lt;/a&gt;wsmoak&lt;/td&gt;&lt;td&gt;Wendy Smoak&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;Emeritus&lt;/td&gt;&lt;td&gt;-&lt;/td&gt;&lt;td&gt;&lt;span id="developer-23"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h3&gt;Contributors&lt;a name="Contributors"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;a name="Contributors"&gt;&lt;/a&gt;&lt;p&gt;The following additional people have contributed to this project through the way of suggestions, patches or documentation.&lt;/p&gt;&lt;table border="0" class="table table-striped"&gt;&lt;tr class="a"&gt;&lt;th&gt;Name&lt;/th&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Steffen Grunwald&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Stefan Prange&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;John Michael Luy&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Martin H&amp;#xf6;ller&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Stephen Gargan&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Dario Oliveros&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;james ahlborn&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Jim Jackson&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Daniel Harvey&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Aleksandr Taru&#010; tin&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Teodoro Cue Jr.&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Jan Ancajas&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Jens M&amp;#xfc;hlenhoff&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Dawn Angelito&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Henry Isidro&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Antoine Veret&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Christian Gruber&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Allan Ramirez&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Pete Marvin King&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Joel Sudiacal&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Milos Kleint&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Nick Gonzalez&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Maria Catherine Tan&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Dan Tran&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Gwen Harold Autencio&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Mark Jeffery&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Fabrice Daugan&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Doron Solomon&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Michal Stochmialek&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Julien Henry&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Andreas Baumann&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Adelita L. Padilla&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Daniel Triphaus&lt;/td&gt;&lt;/tr&gt;&lt;&#010; tr class="a"&gt;&lt;td&gt;Patti Arachchige Eshan Sudharaka&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Shinsuke Sugaya&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Marcus Dimand&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Catalino Pineda Jr.&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Warner Pinero&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Dave Brosius&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Jim Sellers&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Igor Galic&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Mark Struberg&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Marc Jansen Tan Chua&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Lucien Weller&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Greg Michael Meneses&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Chris Graham&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Fredrik Jonson&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Lester Ecarma&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Eirik Bj&amp;#xf8;rsn&amp;#xf8;s&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Jan Ancajas&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Damien Blugeon&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;John Michael Luy&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Wolfgang Strunk&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Jevica Arianne B. Zurbano&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Stefan Prange&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Napoleon&#010;  Esmundo C. Ramirez&lt;/td&gt;&lt;/tr&gt;&lt;tr class="b"&gt;&lt;td&gt;Brent Atkinson&lt;/td&gt;&lt;/tr&gt;&lt;tr class="a"&gt;&lt;td&gt;Antoine ROUAZE&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;script type="text/javascript"&gt;&#010;+            &lt;div class="section"&gt;&#010;+&lt;h2&gt;The Team&lt;a name="The_Team"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;a name="The_Team"&gt;&lt;/a&gt;&#010;+&lt;p&gt;A successful project requires many people to play many roles. Some members write code or documentation, while others are valuable as testers, submitting patches and suggestions.&lt;/p&gt;&#010;+&lt;p&gt;The team is comprised of Members and Contributors. Members have direct access to the source of a project and actively evolve the code-base. Contributors improve the project through submission of patches and suggestions to the Members. The number of Contributors to the project is unbounded. Get involved today. All contributions to the project are greatly appreciated.&lt;/p&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Members&lt;a name="Members"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;a name="Members"&gt;&lt;/a&gt;&#010;+&lt;p&gt;The following is a list of developers with commit privileges that have directly contributed to the project in one way or another.&lt;/p&gt;&#010;+&lt;table border="0" class="table table-striped"&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;th&gt;Image&lt;/th&gt;&#010;+&lt;th&gt;Id&lt;/th&gt;&#010;+&lt;th&gt;Name&lt;/th&gt;&#010;+&lt;th&gt;Email&lt;/th&gt;&#010;+&lt;th&gt;Organization&lt;/th&gt;&#010;+&lt;th&gt;Roles&lt;/th&gt;&#010;+&lt;th&gt;Time Zone&lt;/th&gt;&#010;+&lt;th&gt;Actual Time (GMT)&lt;/th&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/a49e2c09c4c36374c40e6cb819157eda?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a name="oching"&gt;&lt;/a&gt;oching&lt;/td&gt;&#010;+&lt;td&gt;Maria Odea B. Ching&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:oching@apache.org"&gt;oching@apache.org&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;PMC Chair&lt;/td&gt;&#010;+&lt;td&gt;+8&lt;/td&gt;&#010;+&lt;td&gt;&lt;span id="developer-0"&gt;+8&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/1db61ec29963d4a77ef2275140144fd4?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a name="brett"&gt;&lt;/a&gt;brett&lt;/td&gt;&#010;+&lt;td&gt;Brett Porter&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:brett@apache.org"&gt;brett@apache.org&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;ASF&lt;/td&gt;&#010;+&lt;td&gt;PMC Member&lt;/td&gt;&#010;+&lt;td&gt;+10&lt;/td&gt;&#010;+&lt;td&gt;&lt;span id="developer-1"&gt;+10&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/6559d4b2de15cb1433fc13c34599e4c7?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a name="carlos"&gt;&lt;/a&gt;carlos&lt;/td&gt;&#010;+&lt;td&gt;Carlos Sanchez&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:carlos@apache.org"&gt;carlos@apache.org&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;ASF&lt;/td&gt;&#010;+&lt;td&gt;PMC Member&lt;/td&gt;&#010;+&lt;td&gt;+1&lt;/td&gt;&#010;+&lt;td&gt;&lt;span id="developer-2"&gt;+1&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/89d1772a8f19085482a13decc709cda2?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a name="epunzalan"&gt;&lt;/a&gt;epunzalan&lt;/td&gt;&#010;+&lt;td&gt;Edwin Punzalan&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:epunzalan@apache.org"&gt;epunzalan@apache.org&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;PMC Member&lt;/td&gt;&#010;+&lt;td&gt;-8&lt;/td&gt;&#010;+&lt;td&gt;&lt;span id="developer-3"&gt;-8&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/3fe23ff82e7920b5941e18515adf9bba?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a name="nicolas"&gt;&lt;/a&gt;nicolas&lt;/td&gt;&#010;+&lt;td&gt;Nicolas De Loof&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:nicolas@apache.org"&gt;nicolas@apache.org&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;PMC Member&lt;/td&gt;&#010;+&lt;td&gt;+1&lt;/td&gt;&#010;+&lt;td&gt;&lt;span id="developer-4"&gt;+1&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/bab29f762bea8e578505424443d8cd41?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a name="olamy"&gt;&lt;/a&gt;olamy&lt;/td&gt;&#010;+&lt;td&gt;Olivier Lamy&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:olamy@apache.org"&gt;olamy@apache.org&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;Ecetera.com.au&lt;/td&gt;&#010;+&lt;td&gt;PMC Member&lt;/td&gt;&#010;+&lt;td&gt;Australia/Melbourne&lt;/td&gt;&#010;+&lt;td&gt;&lt;span id="developer-5"&gt;Australia/Melbourne&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/c8686cad245196c9e392201ad7bb364f?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a name="dennisl"&gt;&lt;/a&gt;dennisl&lt;/td&gt;&#010;+&lt;td&gt;Dennis Lundberg&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:dennisl@apache.org"&gt;dennisl@apache.org&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;ASF&lt;/td&gt;&#010;+&lt;td&gt;Committer&lt;/td&gt;&#010;+&lt;td&gt;+1&lt;/td&gt;&#010;+&lt;td&gt;&lt;span id="developer-6"&gt;+1&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/76f1823568e5f31931bd32415a4cffa7?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a name="martinc"&gt;&lt;/a&gt;martinc&lt;/td&gt;&#010;+&lt;td&gt;Martin Cooper&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:martinc@apache.org"&gt;martinc@apache.org&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;ASF&lt;/td&gt;&#010;+&lt;td&gt;Committer&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;&lt;span id="developer-7"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/07a0055c4259569aff19ee558ee3999d?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a name="mbaclay"&gt;&lt;/a&gt;mbaclay&lt;/td&gt;&#010;+&lt;td&gt;Marecor M. Baclay&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:mbaclay@apache.org"&gt;mbaclay@apache.org&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;Committer&lt;/td&gt;&#010;+&lt;td&gt;+8&lt;/td&gt;&#010;+&lt;td&gt;&lt;span id="developer-8"&gt;+8&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/026acc6fb60c44ed137de35517837065?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a name="jzurbano"&gt;&lt;/a&gt;jzurbano&lt;/td&gt;&#010;+&lt;td&gt;Jevica Arianne B. Zurbano&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:jzurbano@apache.org"&gt;jzurbano@apache.org&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;Committer&lt;/td&gt;&#010;+&lt;td&gt;+8&lt;/td&gt;&#010;+&lt;td&gt;&lt;span id="developer-9"&gt;+8&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/27790393b874159fe05609ca7ed812f9?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a name="jbonofre"&gt;&lt;/a&gt;jbonofre&lt;/td&gt;&#010;+&lt;td&gt;Jean-Baptiste Onofr&amp;#xe9;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:jbonofre@apache.org"&gt;jbonofre@apache.org&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;Talend&lt;/td&gt;&#010;+&lt;td&gt;Committer&lt;/td&gt;&#010;+&lt;td&gt;+1&lt;/td&gt;&#010;+&lt;td&gt;&lt;span id="developer-10"&gt;+1&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/030e414fc478d45703ba0cbf6fa431f9?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a name="skygo"&gt;&lt;/a&gt;skygo&lt;/td&gt;&#010;+&lt;td&gt;Eric Barboni&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:skygo@apache.org"&gt;skygo@apache.org&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;ASF&lt;/td&gt;&#010;+&lt;td&gt;Committer&lt;/td&gt;&#010;+&lt;td&gt;+1&lt;/td&gt;&#010;+&lt;td&gt;&lt;span id="developer-11"&gt;+1&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/aeb4e8e65a6c91233e1a9128d8989093?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a name="alecharp"&gt;&lt;/a&gt;alecharp&lt;/td&gt;&#010;+&lt;td&gt;Adrien Lecharpentier&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:alecharp@apache.org"&gt;alecharp@apache.org&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;Zenika&lt;/td&gt;&#010;+&lt;td&gt;Committer&lt;/td&gt;&#010;+&lt;td&gt;+1&lt;/td&gt;&#010;+&lt;td&gt;&lt;span id="developer-12"&gt;+1&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/38f7796e51a469f8efc08de2d88fa335?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a name="joakime"&gt;&lt;/a&gt;joakime&lt;/td&gt;&#010;+&lt;td&gt;Joakim Erdfelt&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:joakime@apache.org"&gt;joakime@apache.org&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;ASF&lt;/td&gt;&#010;+&lt;td&gt;Emeritus&lt;/td&gt;&#010;+&lt;td&gt;-5&lt;/td&gt;&#010;+&lt;td&gt;&lt;span id="developer-13"&gt;-5&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/00000000000000000000000000000000?d=blank&amp;amp;f=y&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a name="jvanzyl"&gt;&lt;/a&gt;jvanzyl&lt;/td&gt;&#010;+&lt;td&gt;Jason van Zyl&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;Emeritus&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;&lt;span id="developer-14"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/00000000000000000000000000000000?d=blank&amp;amp;f=y&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a name="bayard"&gt;&lt;/a&gt;bayard&lt;/td&gt;&#010;+&lt;td&gt;Henri Yandell&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;Emeritus&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;&lt;span id="developer-15"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/00000000000000000000000000000000?d=blank&amp;amp;f=y&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a name="kenney"&gt;&lt;/a&gt;kenney&lt;/td&gt;&#010;+&lt;td&gt;Kenney Westerhof&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;Emeritus&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;&lt;span id="developer-16"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/00000000000000000000000000000000?d=blank&amp;amp;f=y&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a name="aheritier"&gt;&lt;/a&gt;aheritier&lt;/td&gt;&#010;+&lt;td&gt;Arnaud Heritier&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;Emeritus&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;&lt;span id="developer-17"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/00000000000000000000000000000000?d=blank&amp;amp;f=y&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a name="bellingard"&gt;&lt;/a&gt;bellingard&lt;/td&gt;&#010;+&lt;td&gt;Fabrice Bellingard&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;Emeritus&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;&lt;span id="developer-18"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/00000000000000000000000000000000?d=blank&amp;amp;f=y&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a name="jdumay"&gt;&lt;/a&gt;jdumay&lt;/td&gt;&#010;+&lt;td&gt;James William Dumay&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;Emeritus&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;&lt;span id="developer-19"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/00000000000000000000000000000000?d=blank&amp;amp;f=y&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a name="jmcconnell"&gt;&lt;/a&gt;jmcconnell&lt;/td&gt;&#010;+&lt;td&gt;Jesse McConnell&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;Emeritus&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;&lt;span id="developer-20"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/efe7252f3b18253bf4318062ece95a3b?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a name="evenisse"&gt;&lt;/a&gt;evenisse&lt;/td&gt;&#010;+&lt;td&gt;Emmanuel Venisse&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:evenisse@apache.org"&gt;evenisse@apache.org&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;Emeritus&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;&lt;span id="developer-21"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/b38a3be83226b10b399985496c058e4c?d=mm&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a name="jtolentino"&gt;&lt;/a&gt;jtolentino&lt;/td&gt;&#010;+&lt;td&gt;Ernesto Tolentino Jr.&lt;/td&gt;&#010;+&lt;td&gt;&lt;a class="externalLink" href="mailto:jtolentino@apache.org"&gt;jtolentino@apache.org&lt;/a&gt;&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;Emeritus&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;&lt;span id="developer-22"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;&lt;img src="http://www.gravatar.com/avatar/00000000000000000000000000000000?d=blank&amp;amp;f=y&amp;amp;s=60" alt="" /&gt;&lt;/td&gt;&#010;+&lt;td&gt;&lt;a name="wsmoak"&gt;&lt;/a&gt;wsmoak&lt;/td&gt;&#010;+&lt;td&gt;Wendy Smoak&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;Emeritus&lt;/td&gt;&#010;+&lt;td&gt;-&lt;/td&gt;&#010;+&lt;td&gt;&lt;span id="developer-23"&gt;-&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Contributors&lt;a name="Contributors"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;a name="Contributors"&gt;&lt;/a&gt;&#010;+&lt;p&gt;The following additional people have contributed to this project through the way of suggestions, patches or documentation.&lt;/p&gt;&#010;+&lt;table border="0" class="table table-striped"&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;th&gt;Name&lt;/th&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Steffen Grunwald&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Stefan Prange&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;John Michael Luy&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Martin H&amp;#xf6;ller&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Stephen Gargan&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Dario Oliveros&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;james ahlborn&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Jim Jackson&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Daniel Harvey&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Aleksandr Tarutin&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Teodoro Cue Jr.&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Jan Ancajas&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Jens M&amp;#xfc;hlenhoff&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Dawn Angelito&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Henry Isidro&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Antoine Veret&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Christian Gruber&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Allan Ramirez&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Pete Marvin King&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Joel Sudiacal&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Milos Kleint&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Nick Gonzalez&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Maria Catherine Tan&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Dan Tran&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Gwen Harold Autencio&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Mark Jeffery&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Fabrice Daugan&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Doron Solomon&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Michal Stochmialek&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Julien Henry&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Andreas Baumann&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Adelita L. Padilla&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Daniel Triphaus&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Patti Arachchige Eshan Sudharaka&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Shinsuke Sugaya&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Marcus Dimand&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Catalino Pineda Jr.&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Warner Pinero&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Dave Brosius&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Jim Sellers&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Igor Galic&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Mark Struberg&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Marc Jansen Tan Chua&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Lucien Weller&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Greg Michael Meneses&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Chris Graham&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Fredrik Jonson&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Lester Ecarma&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Eirik Bj&amp;#xf8;rsn&amp;#xf8;s&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Jan Ancajas&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Damien Blugeon&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;John Michael Luy&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Wolfgang Strunk&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Jevica Arianne B. Zurbano&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Stefan Prange&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Napoleon Esmundo C. Ramirez&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="b"&gt;&#010;+&lt;td&gt;Brent Atkinson&lt;/td&gt;&lt;/tr&gt;&#010;+&lt;tr class="a"&gt;&#010;+&lt;td&gt;Antoine ROUAZE&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;script type="text/javascript"&gt;&#010; function offsetDate(id, offset) {&#010;     var now = new Date();&#010;     var nowTime = now.getTime();&#010;&#010;Modified: archiva/site-content/versions.html&#010;URL: http://svn.apache.org/viewvc/archiva/site-content/versions.html?rev=1490981&amp;r1=1490980&amp;r2=1490981&amp;view=diff&#010;==============================================================================&#010;--- archiva/site-content/versions.html (original)&#010;+++ archiva/site-content/versions.html Sat Jun  8 14:05:28 2013&#010;@@ -9,7 +9,7 @@&#010;     &lt;meta charset="UTF-8" /&gt;&#010;     &lt;meta name="viewport" content="width=device-width, initial-scale=1.0" /&gt;&#010;     &lt;meta name="author" content="Brett Porter" /&gt;&#010;-    &lt;meta name="Date-Revision-yyyymmdd" content="20130603" /&gt;&#010;+    &lt;meta name="Date-Revision-yyyymmdd" content="20130609" /&gt;&#010;     &lt;meta http-equiv="Content-Language" content="en" /&gt;&#010;     &lt;title&gt;Archiva - Documentation - All Versions&lt;/title&gt;&#010;     &lt;link rel="stylesheet" href="./css/apache-maven-fluido-1.3.1-SNAPSHOT.min.css" /&gt;&#010;@@ -205,7 +205,7 @@&#010;         &#010;                 &#010;                     &#010;-                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 03 Jun 2013&lt;/li&gt; &#010;+                  &lt;li id="publishDate" class="pull-right"&gt;Last Published: 09 Jun 2013&lt;/li&gt; &#010;             &#010;                             &lt;/ul&gt;&#010;       &lt;/div&gt;&#010;@@ -214,7 +214,25 @@&#010;                 &#010;         &lt;div id="bodyColumn" &gt;&#010;                                   &#010;-            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;!-- NOTE: For help with the syntax of this file, see: --&gt;&lt;!-- http://maven.apache.org/guides/mi&#010; ni/guide-apt-format.html --&gt;&lt;div class="section"&gt;&lt;h2&gt;Archiva Documentation&lt;a name="Archiva_Documentation"&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div class="section"&gt;&lt;h3&gt;Current Release: Archiva 1.3.6&lt;a name="Current_Release:_Archiva_1.3.6"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;The current stable release of Archiva is &lt;i&gt;1.3.6&lt;/i&gt;.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="./docs/1.3.6/release-notes.html"&gt; Release Notes&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="./docs/1.3.6/index.html"&gt; Documentation&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="./ref/1.3.6/index.html"&gt; Developer Reference&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;!-- TODO: have more specific links than Documentation, and find a better link for developer reference --&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h3&gt;Preview Release: Archiva 1.4-M4&lt;a name="Preview_Release:_Archiva_1.4-M4"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;The current stable release of Archiva is &lt;i&gt;1.4-M4&lt;/i&gt;.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="./docs/1.4-M4/release-notes.html"&gt; Release Notes&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="./docs/1.4-M4/index.html"&gt; Documentation&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="./ref/1.4-M4/index.html"&gt; Developer Reference&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;!-- TODO: hav&#010; e more specific links than Documentation, and find a better link for developer reference --&gt;&lt;/div&gt;&lt;div class="section"&gt;&lt;h3&gt;Unsupported Releases&lt;a name="Unsupported_Releases"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;!-- rough list of unsupported version because materials (RNotes,Docs,Refs are not yet available) --&gt;&lt;p&gt;1.3.5,1.3.4,1.3.3,1.3.2,1.3.1,1.3,1.2.2,1.2.1,1.2,1.1.3,1.1.2,1.1.1,1.1,1.0.2,1.0.1,1.0&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&#010;+            &lt;!-- Licensed to the Apache Software Foundation (ASF) under one --&gt;&lt;!-- or more contributor license agreements.  See the NOTICE file --&gt;&lt;!-- distributed with this work for additional information --&gt;&lt;!-- regarding copyright ownership.  The ASF licenses this file --&gt;&lt;!-- to you under the Apache License, Version 2.0 (the --&gt;&lt;!-- "License"); you may not use this file except in compliance --&gt;&lt;!-- with the License.  You may obtain a copy of the License at --&gt;&lt;!--  --&gt;&lt;!-- http://www.apache.org/licenses/LICENSE-2.0 --&gt;&lt;!--  --&gt;&lt;!-- Unless required by applicable law or agreed to in writing, --&gt;&lt;!-- software distributed under the License is distributed on an --&gt;&lt;!-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY --&gt;&lt;!-- KIND, either express or implied.  See the License for the --&gt;&lt;!-- specific language governing permissions and limitations --&gt;&lt;!-- under the License. --&gt;&lt;!-- NOTE: For help with the syntax of this file, see: --&gt;&lt;!-- http://maven.apache.org/guides/mi&#010; ni/guide-apt-format.html --&gt;&lt;div class="section"&gt;&#010;+&lt;h2&gt;Archiva Documentation&lt;a name="Archiva_Documentation"&gt;&lt;/a&gt;&lt;/h2&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Current Release: Archiva 1.3.6&lt;a name="Current_Release:_Archiva_1.3.6"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;p&gt;The current stable release of Archiva is &lt;i&gt;1.3.6&lt;/i&gt;.&lt;/p&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;&lt;a href="./docs/1.3.6/release-notes.html"&gt; Release Notes&lt;/a&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;a href="./docs/1.3.6/index.html"&gt; Documentation&lt;/a&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;a href="./ref/1.3.6/index.html"&gt; Developer Reference&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;!-- TODO: have more specific links than Documentation, and find a better link for developer reference --&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Preview Release: Archiva 1.4-M4&lt;a name="Preview_Release:_Archiva_1.4-M4"&gt;&lt;/a&gt;&lt;/h3&gt;&#010;+&lt;p&gt;The current stable release of Archiva is &lt;i&gt;1.4-M4&lt;/i&gt;.&lt;/p&gt;&#010;+&lt;ul&gt;&#010;+&lt;li&gt;&lt;a href="./docs/1.4-M4/release-notes.html"&gt; Release Notes&lt;/a&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;a href="./docs/1.4-M4/index.html"&gt; Documentation&lt;/a&gt;&lt;/li&gt;&#010;+&lt;li&gt;&lt;a href="./ref/1.4-M4/index.html"&gt; Developer Reference&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;!-- TODO: have more specific links than Documentation, and find a better link for developer reference --&gt;&lt;/div&gt;&#010;+&lt;div class="section"&gt;&#010;+&lt;h3&gt;Unsupported Releases&lt;a name="Unsupported_Releases"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;!-- rough list of unsupported version because materials (RNotes,Docs,Refs are not yet available) --&gt;&#010;+&lt;p&gt;1.3.5,1.3.4,1.3.3,1.3.2,1.3.1,1.3,1.2.2,1.2.1,1.2,1.1.3,1.1.2,1.1.1,1.1,1.0.2,1.0.1,1.0&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&#010;                   &lt;/div&gt;&#010;           &lt;/div&gt;&#010; &#010;&#010;&#010;&#010;
</pre>
</div>
</content>
</entry>
</feed>
