diff options
author | Olivier Lamy <olamy@apache.org> | 2011-05-29 18:00:17 +0000 |
---|---|---|
committer | Olivier Lamy <olamy@apache.org> | 2011-05-29 18:00:17 +0000 |
commit | 5b69ca4fd3676a7719ded265d52132848c74f9c2 (patch) | |
tree | ed3956c7bb5fd28dffd853ca7a2902e0f331af2a /archiva-modules/archiva-base | |
parent | cc963c71da896976e08c48d7ba34d5be2d8b3a14 (diff) | |
download | archiva-5b69ca4fd3676a7719ded265d52132848c74f9c2.tar.gz archiva-5b69ca4fd3676a7719ded265d52132848c74f9c2.zip |
remove use of plexus api (Initializable phase)
git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@1128918 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'archiva-modules/archiva-base')
5 files changed, 64 insertions, 43 deletions
diff --git a/archiva-modules/archiva-base/archiva-configuration/src/main/java/org/apache/maven/archiva/configuration/DefaultArchivaConfiguration.java b/archiva-modules/archiva-base/archiva-configuration/src/main/java/org/apache/maven/archiva/configuration/DefaultArchivaConfiguration.java index bdc82ebdd..39a9b2048 100644 --- a/archiva-modules/archiva-base/archiva-configuration/src/main/java/org/apache/maven/archiva/configuration/DefaultArchivaConfiguration.java +++ b/archiva-modules/archiva-base/archiva-configuration/src/main/java/org/apache/maven/archiva/configuration/DefaultArchivaConfiguration.java @@ -91,7 +91,6 @@ import java.util.Set; @Service( "archivaConfiguration#default" ) public class DefaultArchivaConfiguration implements ArchivaConfiguration, RegistryListener - //, Initializable { private Logger log = LoggerFactory.getLogger( DefaultArchivaConfiguration.class ); diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-metadata-consumer/src/main/java/org/apache/archiva/consumers/metadata/ArchivaMetadataCreationConsumer.java b/archiva-modules/archiva-base/archiva-consumers/archiva-metadata-consumer/src/main/java/org/apache/archiva/consumers/metadata/ArchivaMetadataCreationConsumer.java index 6cecc467e..6a774f591 100644 --- a/archiva-modules/archiva-base/archiva-consumers/archiva-metadata-consumer/src/main/java/org/apache/archiva/consumers/metadata/ArchivaMetadataCreationConsumer.java +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-metadata-consumer/src/main/java/org/apache/archiva/consumers/metadata/ArchivaMetadataCreationConsumer.java @@ -37,13 +37,16 @@ import org.apache.maven.archiva.configuration.ManagedRepositoryConfiguration; import org.apache.maven.archiva.consumers.AbstractMonitoredConsumer; import org.apache.maven.archiva.consumers.ConsumerException; import org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer; -import org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable; -import org.codehaus.plexus.personality.plexus.lifecycle.phase.InitializationException; import org.codehaus.plexus.registry.Registry; import org.codehaus.plexus.registry.RegistryListener; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.context.annotation.Scope; +import org.springframework.stereotype.Service; +import javax.annotation.PostConstruct; +import javax.inject.Inject; +import javax.inject.Named; import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -52,31 +55,35 @@ import java.util.List; * Take an artifact off of disk and put it into the metadata repository. * * @version $Id: ArtifactUpdateDatabaseConsumer.java 718864 2008-11-19 06:33:35Z brett $ - * @plexus.component role="org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer" + * plexus.component role="org.apache.maven.archiva.consumers.KnownRepositoryContentConsumer" * role-hint="create-archiva-metadata" instantiation-strategy="per-lookup" */ +@Service("knownRepositoryContentConsumer#create-archiva-metadata") +@Scope("prototype") public class ArchivaMetadataCreationConsumer extends AbstractMonitoredConsumer - implements KnownRepositoryContentConsumer, RegistryListener, Initializable + implements KnownRepositoryContentConsumer, RegistryListener { /** - * @plexus.configuration default-value="create-archiva-metadata" + * plexus.configuration default-value="create-archiva-metadata" */ - private String id; + private String id = "create-archiva-metadata"; /** - * @plexus.configuration default-value="Create basic metadata for Archiva to be able to reference the artifact" + * plexus.configuration default-value="Create basic metadata for Archiva to be able to reference the artifact" */ - private String description; + private String description = "Create basic metadata for Archiva to be able to reference the artifact"; /** - * @plexus.requirement + * plexus.requirement */ + @Inject private ArchivaConfiguration configuration; /** - * @plexus.requirement + * plexus.requirement */ + @Inject private FileTypes filetypes; private Date whenGathered; @@ -88,14 +95,17 @@ public class ArchivaMetadataCreationConsumer * * @plexus.requirement */ + @Inject private RepositorySessionFactory repositorySessionFactory; /** * FIXME: this needs to be configurable based on storage type - and could also be instantiated per repo. Change to a * factory. * - * @plexus.requirement role-hint="maven2" + * plexus.requirement role-hint="maven2" */ + @Inject + @Named(value = "repositoryStorage#maven2") private RepositoryStorage repositoryStorage; private static final Logger log = LoggerFactory.getLogger( ArchivaMetadataCreationConsumer.class ); @@ -243,8 +253,8 @@ public class ArchivaMetadataCreationConsumer includes.addAll( filetypes.getFileTypePatterns( FileTypes.ARTIFACTS ) ); } + @PostConstruct public void initialize() - throws InitializationException { configuration.addChangeListener( this ); diff --git a/archiva-modules/archiva-base/archiva-consumers/archiva-metadata-consumer/src/main/resources/META-INF/spring-context.xml b/archiva-modules/archiva-base/archiva-consumers/archiva-metadata-consumer/src/main/resources/META-INF/spring-context.xml new file mode 100644 index 000000000..b08c32dd7 --- /dev/null +++ b/archiva-modules/archiva-base/archiva-consumers/archiva-metadata-consumer/src/main/resources/META-INF/spring-context.xml @@ -0,0 +1,33 @@ +<?xml version="1.0"?> + +<!-- + ~ 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. + --> +<beans xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:context="http://www.springframework.org/schema/context" + xsi:schemaLocation="http://www.springframework.org/schema/beans + http://www.springframework.org/schema/beans/spring-beans-3.0.xsd + http://www.springframework.org/schema/context + http://www.springframework.org/schema/context/spring-context-3.0.xsd" + default-lazy-init="true"> + + <context:annotation-config/> + <context:component-scan base-package="org.apache.archiva.consumers.metadata"/> + +</beans>
\ No newline at end of file diff --git a/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/archiva/metadata/repository/TestRepositorySessionFactory.java b/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/archiva/metadata/repository/TestRepositorySessionFactory.java index 7fbcda0fd..f836043ff 100644 --- a/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/archiva/metadata/repository/TestRepositorySessionFactory.java +++ b/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/archiva/metadata/repository/TestRepositorySessionFactory.java @@ -1,5 +1,8 @@ package org.apache.archiva.metadata.repository; +import org.codehaus.plexus.personality.plexus.lifecycle.phase.Configurable; +import org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable; +import org.codehaus.plexus.personality.plexus.lifecycle.phase.Startable; import org.springframework.stereotype.Service; /* @@ -33,6 +36,8 @@ public class TestRepositorySessionFactory public void setResolver( MetadataResolver resolver ) { + Configurable configurable; + Startable startable; this.resolver = resolver; } } diff --git a/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/MockConfiguration.java b/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/MockConfiguration.java index cb21dc0e1..b6e1ea480 100644 --- a/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/MockConfiguration.java +++ b/archiva-modules/archiva-base/archiva-proxy/src/test/java/org/apache/maven/archiva/proxy/MockConfiguration.java @@ -31,11 +31,11 @@ import org.codehaus.plexus.registry.RegistryException; import org.codehaus.plexus.registry.RegistryListener; import org.easymock.MockControl; import org.springframework.context.ApplicationContext; +import org.springframework.context.annotation.Scope; import org.springframework.stereotype.Service; import javax.annotation.PostConstruct; import javax.inject.Inject; -import java.io.File; import java.util.Collections; import java.util.HashSet; import java.util.List; @@ -50,13 +50,11 @@ import java.util.Set; * role-hint="mock" */ @Service( "archivaConfiguration#mock" ) +@Scope( "prototype" ) public class MockConfiguration implements ArchivaConfiguration { - @Inject - protected ApplicationContext applicationContext; - private Configuration configuration = new Configuration(); private Set<RegistryListener> registryListeners = new HashSet<RegistryListener>(); @@ -77,17 +75,8 @@ public class MockConfiguration public void initialize() throws Exception { - - // random name or cleanup ?? - String repoPath = "target/test-repository/managed/" + "foo";//getName(); - File repoLocation = new File( repoPath ); - ManagedRepositoryContent managedDefaultRepository = - createRepository( AbstractProxyTestCase.ID_DEFAULT_MANAGED, "Default Managed Repository", repoPath, - "default" ); - ManagedRepositoryConfiguration repoConfig = managedDefaultRepository.getRepository(); - //configuration.addManagedRepository( repoConfig ); - - configuration.setRepositoryScanning( new RepositoryScanningConfiguration(){ + configuration.setRepositoryScanning( new RepositoryScanningConfiguration() + { @Override public List<FileType> getFileTypes() { @@ -96,21 +85,6 @@ public class MockConfiguration } ); } - protected ManagedRepositoryContent createRepository( String id, String name, String path, String layout ) - throws Exception - { - ManagedRepositoryConfiguration repo = new ManagedRepositoryConfiguration(); - repo.setId( id ); - repo.setName( name ); - repo.setLocation( path ); - repo.setLayout( layout ); - - ManagedRepositoryContent repoContent = - applicationContext.getBean( "managedRepositoryContent#" + layout, ManagedRepositoryContent.class ); - repoContent.setRepository( repo ); - return repoContent; - } - public void addChangeListener( RegistryListener listener ) { registryListeners.add( listener ); |