Author: nicolas
Date: Fri Feb 22 02:37:31 2008
New Revision: 630147
URL: http://svn.apache.org/viewvc?rev=630147&view=rev
Log:
fix javadoc
Modified:
maven/archiva/branches/springy/archiva-base/archiva-common/src/main/java/org/apache/maven/archiva/common/spring/BeansOfTypeFactoryBean.java
Modified:
maven/archiva/branches/springy/archiva-base/archiva-common/src/main/java/org/apache/maven/archiva/common/spring/BeansOfTypeFactoryBean.java
URL:
http://svn.apache.org/viewvc/maven/archiva/branches/springy/archiva-base/archiva-common/src/main/java/org/apache/maven/archiva/common/spring/BeansOfTypeFactoryBean.java?rev=630147&r1=630146&r2=630147&view=diff
==============================================================================
---
maven/archiva/branches/springy/archiva-base/archiva-common/src/main/java/org/apache/maven/archiva/common/spring/BeansOfTypeFactoryBean.java
(original)
+++
maven/archiva/branches/springy/archiva-base/archiva-common/src/main/java/org/apache/maven/archiva/common/spring/BeansOfTypeFactoryBean.java
Fri Feb 22 02:37:31 2008
@@ -23,12 +23,23 @@
import java.util.Iterator;
import java.util.Map;
+import org.springframework.beans.factory.BeanInitializationException;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.beans.factory.ListableBeanFactory;
import org.springframework.beans.factory.config.AbstractFactoryBean;
/**
- * XPathFunction to convert plexus property-name to Spring propertyName.
+ * A FactoryBean to port to Spring the plexus "get all components with role
..." feature.
+ * <p>
+ * Plexus allows to define a requirement this way :
+ * <pre>
+ * \/**
+ * * @plexus.requirement
role="org.apache.maven.archiva.policies.PreDownloadPolicy"
+ * *\/
+ * private Map<String, PreDownloadPolicy> prePolicies;
+ * </pre>
+ * This FactoryBean generates the expected Map from a ListableBeanFactory,
based on the role
+ * to be the FQCN of the component interface.
*
* @author <a href="mailto:[EMAIL PROTECTED]">Nicolas De Loof</a>
* @since 1.1
@@ -50,6 +61,12 @@
throws Exception
{
beansOfType = new HashMap<String, Object>();
+ if ( !( getBeanFactory() instanceof ListableBeanFactory ) )
+ {
+ String error = "A ListableBeanFactory bean factory is required to
create a bean-of-types Map";
+ logger.error( error );
+ throw new BeanInitializationException( error );
+ }
Map beans = ((ListableBeanFactory) getBeanFactory()).getBeansOfType(
type );
for ( Iterator iterator = beans.entrySet().iterator();
iterator.hasNext(); )
{