You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@archiva.apache.org by jo...@apache.org on 2007/05/12 00:25:14 UTC

svn commit: r537304 [2/2] - in /maven/archiva/trunk: archiva-base/archiva-model/src/main/mdo/ archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/scanner/ archiva-cli/src/main/java/org/apache/maven/archiva/cli/ archi...

Copied: maven/archiva/trunk/archiva-scheduled/src/test/resources/org/apache/maven/archiva/scheduled/executors/ArchivaDatabaseUpdateTaskExecutorTest.xml (from r537027, maven/archiva/trunk/archiva-scheduled/src/test/resources/org/apache/maven/archiva/scheduled/executors/ArchivaScheduledTaskExecutorTest.xml)
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-scheduled/src/test/resources/org/apache/maven/archiva/scheduled/executors/ArchivaDatabaseUpdateTaskExecutorTest.xml?view=diff&rev=537304&p1=maven/archiva/trunk/archiva-scheduled/src/test/resources/org/apache/maven/archiva/scheduled/executors/ArchivaScheduledTaskExecutorTest.xml&r1=537027&p2=maven/archiva/trunk/archiva-scheduled/src/test/resources/org/apache/maven/archiva/scheduled/executors/ArchivaDatabaseUpdateTaskExecutorTest.xml&r2=537304
==============================================================================
--- maven/archiva/trunk/archiva-scheduled/src/test/resources/org/apache/maven/archiva/scheduled/executors/ArchivaScheduledTaskExecutorTest.xml (original)
+++ maven/archiva/trunk/archiva-scheduled/src/test/resources/org/apache/maven/archiva/scheduled/executors/ArchivaDatabaseUpdateTaskExecutorTest.xml Fri May 11 15:25:12 2007
@@ -22,32 +22,14 @@
   <components>
     <component>
       <role>org.codehaus.plexus.taskqueue.execution.TaskExecutor</role>
-      <role-hint>test-archiva-task-executor</role-hint>
-      <implementation>org.apache.maven.archiva.scheduled.executors.ArchivaScheduledTaskExecutor</implementation>
+      <role-hint>test-database-update</role-hint>
+      <implementation>org.apache.maven.archiva.scheduled.executors.ArchivaDatabaseUpdateTaskExecutor</implementation>
       <description></description>
       <requirements>
         <requirement>
-          <role>org.apache.maven.archiva.configuration.ArchivaConfiguration</role>
-          <field-name>archivaConfiguration</field-name>
-          <role-hint>test-configuration</role-hint>
-        </requirement>
-        <requirement>
           <role>org.apache.maven.archiva.database.updater.DatabaseUpdater</role>
           <role-hint>jdo</role-hint>
           <field-name>databaseUpdater</field-name>
-        </requirement>
-        <requirement>
-          <role>org.apache.maven.archiva.database.RepositoryDAO</role>
-          <role-hint>jdo</role-hint>
-          <field-name>repositoryDAO</field-name>
-        </requirement>
-        <requirement>
-          <role>org.apache.maven.archiva.consumers.ArchivaArtifactConsumer</role>
-          <field-name>availableDBConsumers</field-name>
-        </requirement>
-        <requirement>
-          <role>org.apache.maven.archiva.consumers.RepositoryContentConsumer</role>
-          <field-name>availableRepositoryConsumers</field-name>
         </requirement>
       </requirements>
     </component>

Added: maven/archiva/trunk/archiva-scheduled/src/test/resources/org/apache/maven/archiva/scheduled/executors/ArchivaRepositoryScanningTaskExecutorTest.xml
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-scheduled/src/test/resources/org/apache/maven/archiva/scheduled/executors/ArchivaRepositoryScanningTaskExecutorTest.xml?view=auto&rev=537304
==============================================================================
--- maven/archiva/trunk/archiva-scheduled/src/test/resources/org/apache/maven/archiva/scheduled/executors/ArchivaRepositoryScanningTaskExecutorTest.xml (added)
+++ maven/archiva/trunk/archiva-scheduled/src/test/resources/org/apache/maven/archiva/scheduled/executors/ArchivaRepositoryScanningTaskExecutorTest.xml Fri May 11 15:25:12 2007
@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+
+<component-set>
+  <components>
+    <component>
+      <role>org.codehaus.plexus.taskqueue.execution.TaskExecutor</role>
+      <role-hint>test-repository-scanning</role-hint>
+      <implementation>org.apache.maven.archiva.scheduled.executors.ArchivaRepositoryScanningTaskExecutor</implementation>
+      <description></description>
+      <requirements>
+        <requirement>
+          <role>org.apache.maven.archiva.database.ArchivaDAO</role>
+          <role-hint>jdo</role-hint>
+          <field-name>dao</field-name>
+        </requirement>
+        <requirement>
+          <role>org.apache.maven.archiva.database.RepositoryDAO</role>
+          <role-hint>jdo</role-hint>
+          <field-name>repositoryDAO</field-name>
+        </requirement>
+        <requirement>
+          <role>org.apache.maven.archiva.repository.scanner.RepositoryScanner</role>
+          <field-name>repoScanner</field-name>
+        </requirement>
+      </requirements>
+    </component>
+
+    <component>
+      <role>org.apache.maven.archiva.configuration.ArchivaConfiguration</role>
+      <implementation>org.apache.maven.archiva.configuration.DefaultArchivaConfiguration</implementation>
+      <requirements>
+        <requirement>
+          <role>org.codehaus.plexus.registry.Registry</role>
+          <role-hint>configured</role-hint>
+        </requirement>
+      </requirements>
+    </component>
+    
+    <component>
+      <role>org.codehaus.plexus.registry.Registry</role>
+      <role-hint>configured</role-hint>
+      <implementation>org.codehaus.plexus.registry.commons.CommonsConfigurationRegistry</implementation>
+      <configuration>
+        <properties>
+          <system/>
+          <xml fileName="${basedir}/src/test/conf/repository-manager.xml"
+               config-name="org.apache.maven.archiva" config-at="org.apache.maven.archiva"/>
+        </properties>
+      </configuration>
+    </component>
+    
+    <component>
+      <role>org.codehaus.plexus.jdo.JdoFactory</role>
+      <role-hint>archiva</role-hint>
+      <implementation>org.codehaus.plexus.jdo.DefaultConfigurableJdoFactory</implementation>
+      <configuration>
+        <persistenceManagerFactoryClass>org.jpox.PersistenceManagerFactoryImpl</persistenceManagerFactoryClass>
+        <otherProperties>
+          <property>
+            <name>javax.jdo.PersistenceManagerFactoryClass</name>
+            <value>org.jpox.PersistenceManagerFactoryImpl</value>
+          </property>
+        </otherProperties>
+      </configuration>
+    </component>
+ 
+  </components>
+</component-set>

Propchange: maven/archiva/trunk/archiva-scheduled/src/test/resources/org/apache/maven/archiva/scheduled/executors/ArchivaRepositoryScanningTaskExecutorTest.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/archiva/trunk/archiva-scheduled/src/test/resources/org/apache/maven/archiva/scheduled/executors/ArchivaRepositoryScanningTaskExecutorTest.xml
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Propchange: maven/archiva/trunk/archiva-scheduled/src/test/resources/org/apache/maven/archiva/scheduled/executors/ArchivaRepositoryScanningTaskExecutorTest.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Modified: maven/archiva/trunk/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/IndexRepositoryAction.java
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/IndexRepositoryAction.java?view=diff&rev=537304&r1=537303&r2=537304
==============================================================================
--- maven/archiva/trunk/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/IndexRepositoryAction.java (original)
+++ maven/archiva/trunk/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/admin/IndexRepositoryAction.java Fri May 11 15:25:12 2007
@@ -20,6 +20,7 @@
  */
 
 import org.apache.commons.lang.StringUtils;
+import org.apache.maven.archiva.common.ArchivaException;
 import org.apache.maven.archiva.scheduled.ArchivaTaskScheduler;
 import org.apache.maven.archiva.scheduled.DefaultArchivaTaskScheduler;
 import org.apache.maven.archiva.scheduled.tasks.ArchivaTask;
@@ -63,27 +64,35 @@
 
         boolean scheduleTask = false;
 
-        if ( taskScheduler.getTaskQueue().hasFilesystemTaskInQueue() )
+        try
         {
-            if ( taskScheduler.getTaskQueue().hasRepositoryTaskInQueue( repoid ) )
+            if ( taskScheduler.isProcessingAnyRepositoryTask() )
             {
-                addActionError( "Repository [" + repoid + "] task was already queued." );
+                if ( taskScheduler.isProcessingRepositoryTask( repoid ) )
+                {
+                    addActionError( "Repository [" + repoid + "] task was already queued." );
+                }
+                else
+                {
+                    scheduleTask = true;
+                }
             }
             else
             {
                 scheduleTask = true;
             }
         }
-        else
+        catch ( ArchivaException e )
         {
-            scheduleTask = true;
+            scheduleTask = false;
+            addActionError( e.getMessage() );
         }
 
         if ( scheduleTask )
         {
             try
             {
-                taskScheduler.getTaskQueue().put( task );
+                taskScheduler.queueRepositoryTask( task );
                 addActionMessage( "Your request to have repository [" + repoid + "] be indexed has been queued." );
             }
             catch ( TaskQueueException e )
@@ -95,6 +104,18 @@
 
         // Return to the repositories screen.
         return SUCCESS;
+    }
+
+    public void addActionMessage( String aMessage )
+    {
+        super.addActionMessage( aMessage );
+        getLogger().info( "[ActionMessage] " + aMessage );
+    }
+
+    public void addActionError( String anErrorMessage )
+    {
+        super.addActionError( anErrorMessage );
+        getLogger().warn( "[ActionError] " + anErrorMessage );
     }
 
     public SecureActionBundle getSecureActionBundle()

Modified: maven/archiva/trunk/archiva-web/archiva-webapp/src/main/resources/META-INF/plexus/application.xml
URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-web/archiva-webapp/src/main/resources/META-INF/plexus/application.xml?view=diff&rev=537304&r1=537303&r2=537304
==============================================================================
--- maven/archiva/trunk/archiva-web/archiva-webapp/src/main/resources/META-INF/plexus/application.xml (original)
+++ maven/archiva/trunk/archiva-web/archiva-webapp/src/main/resources/META-INF/plexus/application.xml Fri May 11 15:25:12 2007
@@ -19,8 +19,30 @@
   -->
 
 <plexus>
-  <components>
+  <load-on-start>
+    <component>
+      <role>org.apache.maven.archiva.configuration.ConfigurationUpgrade</role>
+      <role-hint>default</role-hint>
+    </component>
+    <component>
+      <role>org.apache.maven.archiva.web.startup.ConfigurationSynchronization</role>
+      <role-hint>default</role-hint>
+    </component>
+    <component>
+      <role>org.apache.maven.archiva.scheduled.ArchivaTaskScheduler</role>
+      <role-hint>default</role-hint>
+    </component>
+    <component>
+      <role>org.codehaus.plexus.taskqueue.execution.TaskQueueExecutor</role>
+      <role-hint>database-update</role-hint>
+    </component>
+    <component>
+      <role>org.codehaus.plexus.taskqueue.execution.TaskQueueExecutor</role>
+      <role-hint>repository-scanning</role-hint>
+    </component>
+  </load-on-start>
 
+  <components>
     <component>
       <role>org.codehaus.plexus.registry.Registry</role>
       <implementation>org.codehaus.plexus.registry.commons.CommonsConfigurationRegistry</implementation>
@@ -193,29 +215,6 @@
       <lifecycle-handler>basic</lifecycle-handler>
     </component>
   </components>
-
-  <load-on-start>
-    <component>
-      <role>org.apache.maven.archiva.configuration.ConfigurationUpgrade</role>
-      <role-hint>default</role-hint>
-    </component>
-    <component>
-      <role>org.apache.maven.archiva.web.startup.ConfigurationSynchronization</role>
-      <role-hint>default</role-hint>
-    </component>
-    <component>
-      <role>org.apache.maven.archiva.web.startup.ConfigurationSynchronization</role>
-      <role-hint>default</role-hint>
-    </component>
-    <component>
-      <role>org.apache.maven.archiva.scheduled.ArchivaTaskScheduler</role>
-      <role-hint>default</role-hint>
-    </component>
-    <component>
-      <role>org.codehaus.plexus.taskqueue.execution.TaskExecutor</role>
-      <role-hint>archiva-task-executor</role-hint>
-    </component>
-  </load-on-start>
 
   <lifecycle-handler-manager implementation="org.codehaus.plexus.lifecycle.DefaultLifecycleHandlerManager">
     <default-lifecycle-handler-id>plexus</default-lifecycle-handler-id>