Modified: maven/archiva/trunk/archiva-scheduled/src/test/java/org/apache/maven/archiva/scheduled/executors/ArchivaDatabaseUpdateTaskExecutorTest.java URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-scheduled/src/test/java/org/apache/maven/archiva/scheduled/executors/ArchivaDatabaseUpdateTaskExecutorTest.java?view=diff&rev=539145&r1=539144&r2=539145 ============================================================================== --- maven/archiva/trunk/archiva-scheduled/src/test/java/org/apache/maven/archiva/scheduled/executors/ArchivaDatabaseUpdateTaskExecutorTest.java (original) +++ maven/archiva/trunk/archiva-scheduled/src/test/java/org/apache/maven/archiva/scheduled/executors/ArchivaDatabaseUpdateTaskExecutorTest.java Thu May 17 15:16:57 2007 @@ -57,40 +57,40 @@ private TaskExecutor taskExecutor; protected ArchivaDAO dao; - + protected void setUp() throws Exception { super.setUp(); - + DefaultConfigurableJdoFactory jdoFactory = (DefaultConfigurableJdoFactory) lookup( JdoFactory.ROLE, "archiva" ); assertEquals( DefaultConfigurableJdoFactory.class.getName(), jdoFactory.getClass().getName() ); - jdoFactory.setPersistenceManagerFactoryClass( "org.jpox.PersistenceManagerFactoryImpl" ); + jdoFactory.setPersistenceManagerFactoryClass( "org.jpox.PersistenceManagerFactoryImpl" ); /* derby version - File derbyDbDir = new File( "target/plexus-home/testdb" ); - if ( derbyDbDir.exists() ) - { - FileUtils.deleteDirectory( derbyDbDir ); - } - - jdoFactory.setDriverName( System.getProperty( "jdo.test.driver", "org.apache.derby.jdbc.EmbeddedDriver" ) ); - jdoFactory.setUrl( System.getProperty( "jdo.test.url", "jdbc:derby:" + derbyDbDir.getAbsolutePath() + ";create=true" ) ); - */ + File derbyDbDir = new File( "target/plexus-home/testdb" ); + if ( derbyDbDir.exists() ) + { + FileUtils.deleteDirectory( derbyDbDir ); + } + + jdoFactory.setDriverName( System.getProperty( "jdo.test.driver", "org.apache.derby.jdbc.EmbeddedDriver" ) ); + jdoFactory.setUrl( System.getProperty( "jdo.test.url", "jdbc:derby:" + derbyDbDir.getAbsolutePath() + ";create=true" ) ); + */ - jdoFactory.setDriverName( System.getProperty( "jdo.test.driver", "org.hsqldb.jdbcDriver" ) ); + jdoFactory.setDriverName( System.getProperty( "jdo.test.driver", "org.hsqldb.jdbcDriver" ) ); jdoFactory.setUrl( System.getProperty( "jdo.test.url", "jdbc:hsqldb:mem:" + getName() ) ); - - jdoFactory.setUserName( System.getProperty( "jdo.test.user", "sa" ) ); - jdoFactory.setPassword( System.getProperty( "jdo.test.pass", "" ) ); + jdoFactory.setUserName( System.getProperty( "jdo.test.user", "sa" ) ); - jdoFactory.setProperty( "org.jpox.transactionIsolation", "READ_COMMITTED" ); + jdoFactory.setPassword( System.getProperty( "jdo.test.pass", "" ) ); - jdoFactory.setProperty( "org.jpox.poid.transactionIsolation", "READ_COMMITTED" ); + jdoFactory.setProperty( "org.jpox.transactionIsolation", "READ_COMMITTED" ); - jdoFactory.setProperty( "org.jpox.autoCreateSchema", "true" ); + jdoFactory.setProperty( "org.jpox.poid.transactionIsolation", "READ_COMMITTED" ); + + jdoFactory.setProperty( "org.jpox.autoCreateSchema", "true" ); jdoFactory.setProperty( "javax.jdo.option.RetainValues", "true" ); @@ -113,8 +113,7 @@ System.setProperty( (String) entry.getKey(), (String) entry.getValue() ); } - URL jdoFileUrls[] = new URL[] { getClass() - .getResource( "/org/apache/maven/archiva/model/package.jdo" ) }; + URL jdoFileUrls[] = new URL[] { getClass().getResource( "/org/apache/maven/archiva/model/package.jdo" ) }; if ( ( jdoFileUrls == null ) || ( jdoFileUrls[0] == null ) ) { @@ -140,7 +139,8 @@ taskExecutor = (TaskExecutor) lookup( TaskExecutor.class, "test-database-update" ); } - public void testExecutor() throws Exception + public void testExecutor() + throws Exception { RepositoryDAO repoDao = dao.getRepositoryDAO(); @@ -151,8 +151,7 @@ String repoUri = "file://" + StringUtils.replace( repoDir.getAbsolutePath(), "\\", "/" ); // Create it - ArchivaRepository repo = - repoDao.createRepository( "testRepo", "Test Repository", repoUri ); + ArchivaRepository repo = repoDao.createRepository( "testRepo", "Test Repository", repoUri ); assertNotNull( repo ); // Set some mandatory values @@ -166,35 +165,44 @@ assertEquals( "testRepo", JDOHelper.getObjectId( repoSaved.getModel() ).toString() ); ArtifactDAO adao = dao.getArtifactDAO(); - + ArchivaArtifact sqlArtifact = adao.createArtifact( "javax.sql", "jdbc", "2.0", "", "jar" ); sqlArtifact.getModel().setLastModified( new Date() ); sqlArtifact.getModel().setSize( 1234 ); sqlArtifact.getModel().setOrigin( "testcase" ); sqlArtifact.getModel().setWhenProcessed( null ); - + adao.saveArtifact( sqlArtifact ); - + ArchivaArtifact artifact = adao.getArtifact( "javax.sql", "jdbc", "2.0", null, "jar" ); - + assertNotNull( artifact ); + + // Test for artifact existance. + List artifactList = adao.queryArtifacts( null ); + assertNotNull( "Artifact list should not be null.", artifactList ); + assertEquals( "Artifact list size", 1, artifactList.size() ); + // Test for unprocessed artifacts. List unprocessedResultList = adao.queryArtifacts( new ArtifactsProcessedConstraint( false ) ); - - assertNotNull( unprocessedResultList ); - assertEquals("Incorrect number of unprocessed artifacts detected.", 1, unprocessedResultList.size() ); - + assertNotNull( "Unprocessed Results should not be null.", unprocessedResultList ); + assertEquals( "Incorrect number of unprocessed artifacts detected.", 1, unprocessedResultList.size() ); + + // Execute the database task. DatabaseTask dataTask = new DatabaseTask(); - + dataTask.setName( "testDataTask" ); taskExecutor.executeTask( dataTask ); - List processedResultList = adao.queryArtifacts( new ArtifactsProcessedConstraint( true ) ); + // Test for artifact existance. + artifactList = adao.queryArtifacts( null ); + assertNotNull( "Artifact list should not be null.", artifactList ); + assertEquals( "Artifact list size", 1, artifactList.size() ); - assertNotNull( processedResultList ); - assertEquals("Incorrect number of processed artifacts detected.", 1, processedResultList.size() ); - + // Test for processed artifacts. + List processedResultList = adao.queryArtifacts( new ArtifactsProcessedConstraint( true ) ); + assertNotNull( "Processed Results should not be null.", processedResultList ); + assertEquals( "Incorrect number of processed artifacts detected.", 1, processedResultList.size() ); } - }
Modified: maven/archiva/trunk/archiva-scheduled/src/test/java/org/apache/maven/archiva/scheduled/executors/ArchivaRepositoryScanningTaskExecutorTest.java URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-scheduled/src/test/java/org/apache/maven/archiva/scheduled/executors/ArchivaRepositoryScanningTaskExecutorTest.java?view=diff&rev=539145&r1=539144&r2=539145 ============================================================================== --- maven/archiva/trunk/archiva-scheduled/src/test/java/org/apache/maven/archiva/scheduled/executors/ArchivaRepositoryScanningTaskExecutorTest.java (original) +++ maven/archiva/trunk/archiva-scheduled/src/test/java/org/apache/maven/archiva/scheduled/executors/ArchivaRepositoryScanningTaskExecutorTest.java Thu May 17 15:16:57 2007 @@ -147,7 +147,6 @@ assertTrue( "Default Test Repository should exist.", repoDir.exists() && repoDir.isDirectory() ); String repoUri = "file://" + StringUtils.replace( repoDir.getAbsolutePath(), "\\", "/" ); - // Create it ArchivaRepository repo = Added: maven/archiva/trunk/archiva-scheduled/src/test/resources/archiva-test.xml URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-scheduled/src/test/resources/archiva-test.xml?view=auto&rev=539145 ============================================================================== --- maven/archiva/trunk/archiva-scheduled/src/test/resources/archiva-test.xml (added) +++ maven/archiva/trunk/archiva-scheduled/src/test/resources/archiva-test.xml Thu May 17 15:16:57 2007 @@ -0,0 +1,122 @@ +<?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. + --> + +<configuration> + <repositories> + <repository> + <id>testRepo</id> + <name>Archiva Test Repository</name> + <url>file://${basedir}/src/test/repositories/default-repository</url> + <layout>default</layout> + <releases>true</releases> + <snapshots>false</snapshots> + <indexed>true</indexed> + <refreshCronExpression>0 0 * * ?</refreshCronExpression> + </repository> + </repositories> + + <proxyConnectors /> + + <networkProxies /> + + <repositoryScanning> + <fileTypes> + <fileType> + <id>artifacts</id> + <patterns> + <pattern>**/*.pom</pattern> + <pattern>**/*.jar</pattern> + <pattern>**/*.ear</pattern> + <pattern>**/*.war</pattern> + <pattern>**/*.car</pattern> + <pattern>**/*.sar</pattern> + <pattern>**/*.mar</pattern> + <pattern>**/*.rar</pattern> + <pattern>**/*.dtd</pattern> + <pattern>**/*.tld</pattern> + <pattern>**/*.tar.gz</pattern> + <pattern>**/*.tar.bz2</pattern> + <pattern>**/*.zip</pattern> + </patterns> + </fileType> + <fileType> + <id>indexable-content</id> + <patterns> + <pattern>**/*.txt</pattern> + <pattern>**/*.TXT</pattern> + <pattern>**/*.block</pattern> + <pattern>**/*.config</pattern> + <pattern>**/*.pom</pattern> + <pattern>**/*.xml</pattern> + <pattern>**/*.xsd</pattern> + <pattern>**/*.dtd</pattern> + <pattern>**/*.tld</pattern> + </patterns> + </fileType> + <fileType> + <id>auto-remove</id> + <patterns> + <pattern>**/*.bak</pattern> + <pattern>**/*~</pattern> + <pattern>**/*-</pattern> + </patterns> + </fileType> + <fileType> + <id>ignored</id> + <patterns> + <pattern>**/.htaccess</pattern> + <pattern>**/KEYS</pattern> + <pattern>**/*.rb</pattern> + <pattern>**/*.sh</pattern> + <pattern>**/.svn/**</pattern> + <pattern>**/.DAV/**</pattern> + </patterns> + </fileType> + </fileTypes> + <knownContentConsumers> + <knownContentConsumer>update-db-artifact</knownContentConsumer> + <knownContentConsumer>create-missing-checksums</knownContentConsumer> + <knownContentConsumer>update-db-repository-metadata</knownContentConsumer> + <knownContentConsumer>validate-checksum</knownContentConsumer> + <knownContentConsumer>validate-signature</knownContentConsumer> + <knownContentConsumer>index-content</knownContentConsumer> + <knownContentConsumer>auto-remove</knownContentConsumer> + <knownContentConsumer>auto-rename</knownContentConsumer> + </knownContentConsumers> + <invalidContentConsumers> + <invalidContentConsumer>update-db-bad-content</invalidContentConsumer> + </invalidContentConsumers> + </repositoryScanning> + + <databaseScanning> + <cronExpression>0 0 * * ?</cronExpression> + <unprocessedConsumers> + <unprocessedConsumer>test-db-unprocessed</unprocessedConsumer> + <unprocessedConsumer>update-db-artifact</unprocessedConsumer> + </unprocessedConsumers> + <cleanupConsumers> + <cleanupConsumer>test-db-cleanup</cleanupConsumer> + <cleanupConsumer>not-present-remove-db-artifact</cleanupConsumer> + <cleanupConsumer>not-present-remove-db-project</cleanupConsumer> + <cleanupConsumer>not-present-remove-indexed</cleanupConsumer> + </cleanupConsumers> + </databaseScanning> + +</configuration> Propchange: maven/archiva/trunk/archiva-scheduled/src/test/resources/archiva-test.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/archiva/trunk/archiva-scheduled/src/test/resources/archiva-test.xml ------------------------------------------------------------------------------ svn:keywords = Author Date Id Revision Propchange: maven/archiva/trunk/archiva-scheduled/src/test/resources/archiva-test.xml ------------------------------------------------------------------------------ svn:mime-type = text/xml Modified: maven/archiva/trunk/archiva-scheduled/src/test/resources/org/apache/maven/archiva/scheduled/executors/ArchivaDatabaseUpdateTaskExecutorTest.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=539145&r1=539144&r2=539145 ============================================================================== --- maven/archiva/trunk/archiva-scheduled/src/test/resources/org/apache/maven/archiva/scheduled/executors/ArchivaDatabaseUpdateTaskExecutorTest.xml (original) +++ maven/archiva/trunk/archiva-scheduled/src/test/resources/org/apache/maven/archiva/scheduled/executors/ArchivaDatabaseUpdateTaskExecutorTest.xml Thu May 17 15:16:57 2007 @@ -36,7 +36,6 @@ <component> <role>org.apache.maven.archiva.configuration.ArchivaConfiguration</role> - <role-hint>test-configuration</role-hint> <implementation>org.apache.maven.archiva.configuration.DefaultArchivaConfiguration</implementation> <requirements> <requirement> @@ -53,11 +52,24 @@ <configuration> <properties> <system/> - <xml fileName="${basedir}/src/test/conf/repository-manager.xml" + <xml fileName="${basedir}/src/test/resources/archiva-test.xml" config-name="org.apache.maven.archiva" config-at="org.apache.maven.archiva"/> </properties> </configuration> </component> + + <component> + <role>org.apache.maven.archiva.consumers.DatabaseCleanupConsumer</role> + <role-hint>test-db-cleanup</role-hint> + <implementation>org.apache.maven.archiva.scheduled.TestDatabaseCleanupConsumer</implementation> + </component> + + <component> + <role>org.apache.maven.archiva.consumers.DatabaseUnprocessedArtifactConsumer</role> + <role-hint>test-db-unprocessed</role-hint> + <implementation>org.apache.maven.archiva.scheduled.TestDatabaseUnprocessedConsumer</implementation> + </component> + <component> <role>org.codehaus.plexus.jdo.JdoFactory</role> Modified: 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=diff&rev=539145&r1=539144&r2=539145 ============================================================================== --- maven/archiva/trunk/archiva-scheduled/src/test/resources/org/apache/maven/archiva/scheduled/executors/ArchivaRepositoryScanningTaskExecutorTest.xml (original) +++ maven/archiva/trunk/archiva-scheduled/src/test/resources/org/apache/maven/archiva/scheduled/executors/ArchivaRepositoryScanningTaskExecutorTest.xml Thu May 17 15:16:57 2007 @@ -61,7 +61,7 @@ <configuration> <properties> <system/> - <xml fileName="${basedir}/src/test/conf/repository-manager.xml" + <xml fileName="${basedir}/src/test/resources/archiva-test.xml" config-name="org.apache.maven.archiva" config-at="org.apache.maven.archiva"/> </properties> </configuration> Modified: maven/archiva/trunk/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/ShowArtifactAction.java URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/ShowArtifactAction.java?view=diff&rev=539145&r1=539144&r2=539145 ============================================================================== --- maven/archiva/trunk/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/ShowArtifactAction.java (original) +++ maven/archiva/trunk/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/ShowArtifactAction.java Thu May 17 15:16:57 2007 @@ -25,6 +25,7 @@ import org.apache.maven.archiva.database.ArchivaDAO; import org.apache.maven.archiva.database.ArchivaDatabaseException; import org.apache.maven.archiva.database.ObjectNotFoundException; +import org.apache.maven.archiva.database.browsing.RepositoryBrowsing; import org.apache.maven.archiva.model.ArchivaProjectModel; import org.apache.maven.archiva.web.util.VersionMerger; import org.apache.maven.wagon.ResourceDoesNotExistException; @@ -52,15 +53,10 @@ /* .\ Not Exposed \._____________________________________________ */ /** - * @plexus.requirement role-hint="jdo" + * @plexus.requirement role-hint="default" */ - private ArchivaDAO dao; + private RepositoryBrowsing repoBrowsing; - /** - * @plexus.requirement - */ - private ArchivaConfiguration archivaConfiguration; - /* .\ Input Parameters \.________________________________________ */ private String groupId; @@ -193,9 +189,9 @@ } private ArchivaProjectModel readProject() - throws ObjectNotFoundException, ArchivaDatabaseException + throws ArchivaDatabaseException { - return dao.getProjectModelDAO().getProjectModel( groupId, artifactId, version ); + return repoBrowsing.selectVersion( groupId, artifactId, version ); } private boolean checkParameters() 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=539145&r1=539144&r2=539145 ============================================================================== --- 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 Thu May 17 15:16:57 2007 @@ -21,10 +21,6 @@ <plexus> <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>
