You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by er...@apache.org on 2013/02/07 18:54:28 UTC

svn commit: r1443630 [1/2] - in /james/server/trunk: app/src/main/resources/META-INF/org/apache/james/ container-spring/ container-spring/src/main/java/org/apache/james/container/spring/bean/factory/mailetcontainer/ container-spring/src/main/java/org/a...

Author: eric
Date: Thu Feb  7 17:54:26 2013
New Revision: 1443630

URL: http://svn.apache.org/r1443630
Log:
First implementation of Replace @Resource with @Inject where it can (JAMES-1477)

Modified:
    james/server/trunk/app/src/main/resources/META-INF/org/apache/james/spring-server.xml
    james/server/trunk/container-spring/pom.xml
    james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/bean/factory/mailetcontainer/AbstractLoaderBeanFactory.java
    james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/bean/factory/mailrepositorystore/MailRepositoryStoreBeanFactory.java
    james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/bean/factory/protocols/ProtocolHandlerLoaderBeanFactory.java
    james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/bean/factorypostprocessor/FileSystemBeanFactoryPostProcessor.java
    james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/mailbox/MailboxCopierManagement.java
    james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/tool/James23Importer.java
    james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/tool/James23ImporterManagement.java
    james/server/trunk/data/data-file/pom.xml
    james/server/trunk/data/data-file/src/main/java/org/apache/james/mailrepository/file/FileMailRepository.java
    james/server/trunk/data/data-file/src/main/java/org/apache/james/user/file/UsersFileRepository.java
    james/server/trunk/data/data-jcr/pom.xml
    james/server/trunk/data/data-jcr/src/main/java/org/apache/james/mailrepository/jcr/JCRMailRepository.java
    james/server/trunk/data/data-jcr/src/main/java/org/apache/james/user/jcr/JCRUsersRepository.java
    james/server/trunk/data/data-jdbc/pom.xml
    james/server/trunk/data/data-jdbc/src/main/java/org/apache/james/mailrepository/jdbc/JDBCMailRepository.java
    james/server/trunk/data/data-jdbc/src/main/java/org/apache/james/rrt/jdbc/JDBCRecipientRewriteTable.java
    james/server/trunk/data/data-jdbc/src/main/java/org/apache/james/user/jdbc/AbstractJdbcUsersRepository.java
    james/server/trunk/data/data-library/pom.xml
    james/server/trunk/data/data-library/src/main/java/org/apache/james/domainlist/lib/AbstractDomainList.java
    james/server/trunk/data/data-library/src/main/java/org/apache/james/domainlist/lib/DomainListManagement.java
    james/server/trunk/data/data-library/src/main/java/org/apache/james/repository/file/AbstractFileRepository.java
    james/server/trunk/data/data-library/src/main/java/org/apache/james/rrt/lib/AbstractRecipientRewriteTable.java
    james/server/trunk/data/data-library/src/main/java/org/apache/james/rrt/lib/RecipientRewriteTableManagement.java
    james/server/trunk/data/data-library/src/main/java/org/apache/james/user/lib/AbstractUsersRepository.java
    james/server/trunk/data/data-library/src/main/java/org/apache/james/user/lib/UsersRepositoryManagement.java
    james/server/trunk/fetchmail/pom.xml
    james/server/trunk/fetchmail/src/main/java/org/apache/james/fetchmail/FetchScheduler.java
    james/server/trunk/filesystem-api/pom.xml
    james/server/trunk/filesystem-api/src/main/java/org/apache/james/filesystem/api/SieveFileRepository.java
    james/server/trunk/lifecycle-spring/src/main/java/org/apache/james/container/spring/lifecycle/AbstractLifecycleBeanPostProcessor.java
    james/server/trunk/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/MailboxManagerManagement.java
    james/server/trunk/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/store/UserRepositoryAuthenticator.java
    james/server/trunk/mailetcontainer-camel/pom.xml
    james/server/trunk/mailetcontainer-camel/src/main/java/org/apache/james/mailetcontainer/impl/JamesMailSpooler.java
    james/server/trunk/mailetcontainer-camel/src/main/java/org/apache/james/mailetcontainer/impl/JamesMailetContext.java
    james/server/trunk/mailetcontainer-camel/src/main/java/org/apache/james/mailetcontainer/impl/camel/CamelCompositeProcessor.java
    james/server/trunk/mailetcontainer-camel/src/main/java/org/apache/james/mailetcontainer/lib/AbstractStateMailetProcessor.java
    james/server/trunk/mailets/pom.xml
    james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/AbstractRecipientRewriteTable.java
    james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/AbstractRecipientRewriteTableMailet.java
    james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/AbstractRedirect.java
    james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/BayesianAnalysis.java
    james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/BayesianAnalysisFeeder.java
    james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/FromRepository.java
    james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/JDBCAlias.java
    james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/JDBCRecipientRewriteTable.java
    james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/LocalDelivery.java
    james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/RecipientRewriteTable.java
    james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/RemoteDelivery.java
    james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/SieveMailet.java
    james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/ToRecipientFolder.java
    james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/ToRepository.java
    james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/ToSenderFolder.java
    james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/UsersRepositoryAliasingForwarding.java
    james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/WhiteListManager.java
    james/server/trunk/mailets/src/main/java/org/apache/james/transport/matchers/AbstractNetworkMatcher.java
    james/server/trunk/mailets/src/main/java/org/apache/james/transport/matchers/AbstractSQLWhitelistMatcher.java
    james/server/trunk/mailets/src/main/java/org/apache/james/transport/matchers/AbstractStorageQuota.java
    james/server/trunk/mailets/src/main/java/org/apache/james/transport/matchers/InSpammerBlacklist.java
    james/server/trunk/mailets/src/main/java/org/apache/james/transport/matchers/NetworkIsInWhitelist.java
    james/server/trunk/protocols/protocols-imap4/pom.xml
    james/server/trunk/protocols/protocols-imap4/src/main/java/org/apache/james/imapserver/netty/IMAPServer.java
    james/server/trunk/protocols/protocols-imap4/src/main/java/org/apache/james/imapserver/netty/IMAPServerFactory.java
    james/server/trunk/protocols/protocols-library/pom.xml
    james/server/trunk/protocols/protocols-library/src/main/java/org/apache/james/protocols/lib/ProtocolHandlerChainImpl.java
    james/server/trunk/protocols/protocols-library/src/main/java/org/apache/james/protocols/lib/handler/ProtocolHandlerLoader.java
    james/server/trunk/protocols/protocols-library/src/main/java/org/apache/james/protocols/lib/netty/AbstractConfigurableAsyncServer.java
    james/server/trunk/protocols/protocols-library/src/main/java/org/apache/james/protocols/lib/netty/AbstractProtocolAsyncServer.java
    james/server/trunk/protocols/protocols-library/src/main/java/org/apache/james/protocols/lib/netty/AbstractServerFactory.java
    james/server/trunk/protocols/protocols-lmtp/pom.xml
    james/server/trunk/protocols/protocols-lmtp/src/main/java/org/apache/james/lmtpserver/hook/MailboxDeliverToRecipientHandler.java
    james/server/trunk/protocols/protocols-lmtp/src/main/java/org/apache/james/lmtpserver/netty/LMTPServerFactory.java
    james/server/trunk/protocols/protocols-pop3/pom.xml
    james/server/trunk/protocols/protocols-pop3/src/main/java/org/apache/james/pop3server/core/PassCmdHandler.java
    james/server/trunk/protocols/protocols-pop3/src/main/java/org/apache/james/pop3server/netty/POP3ServerFactory.java
    james/server/trunk/protocols/protocols-pop3/src/test/java/org/apache/james/pop3server/POP3ServerTest.java
    james/server/trunk/protocols/protocols-smtp/pom.xml
    james/server/trunk/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/AuthRequiredToRelayRcptHook.java
    james/server/trunk/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/JamesMailCmdHandler.java
    james/server/trunk/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/JamesRcptCmdHandler.java
    james/server/trunk/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/SendMailHandler.java
    james/server/trunk/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/SenderAuthIdentifyVerificationRcptHook.java
    james/server/trunk/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/UsersRepositoryAuthHook.java
    james/server/trunk/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/fastfail/DNSRBLHandler.java
    james/server/trunk/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/fastfail/JDBCGreylistHandler.java
    james/server/trunk/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/fastfail/ResolvableEhloHeloHandler.java
    james/server/trunk/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/fastfail/ReverseEqualsEhloHeloHandler.java
    james/server/trunk/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/fastfail/URIRBLHandler.java
    james/server/trunk/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/fastfail/ValidRcptHandler.java
    james/server/trunk/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/fastfail/ValidRcptMX.java
    james/server/trunk/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/fastfail/ValidSenderDomainHandler.java
    james/server/trunk/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/netty/SMTPServer.java
    james/server/trunk/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/netty/SMTPServerFactory.java
    james/server/trunk/protocols/protocols-smtp/src/test/java/org/apache/james/smtpserver/SMTPServerTest.java
    james/server/trunk/queue/queue-activemq/pom.xml
    james/server/trunk/queue/queue-activemq/src/main/java/org/apache/james/queue/activemq/FileSystemBlobStrategy.java
    james/server/trunk/queue/queue-activemq/src/main/java/org/apache/james/queue/activemq/FileSystemBlobTransferPolicy.java
    james/server/trunk/queue/queue-file/pom.xml
    james/server/trunk/queue/queue-file/src/main/java/org/apache/james/queue/file/FileMailQueueFactory.java
    james/server/trunk/queue/queue-jms/pom.xml
    james/server/trunk/queue/queue-jms/src/main/java/org/apache/james/queue/jms/JMSMailQueueFactory.java
    james/server/trunk/queue/queue-jms/src/main/java/org/apache/james/queue/library/AbstractMailQueueFactory.java

Modified: james/server/trunk/app/src/main/resources/META-INF/org/apache/james/spring-server.xml
URL: http://svn.apache.org/viewvc/james/server/trunk/app/src/main/resources/META-INF/org/apache/james/spring-server.xml?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/app/src/main/resources/META-INF/org/apache/james/spring-server.xml (original)
+++ james/server/trunk/app/src/main/resources/META-INF/org/apache/james/spring-server.xml Thu Feb  7 17:54:26 2013
@@ -86,15 +86,16 @@
               <!-- no alias needed -->
               <value></value>
             </entry>
+<!-- 
             <entry>
               <key>
                 <value>usersrepository23</value>
               </key>
-<!--               no alias needed -->
               <value></value>
             </entry>
+-->
           </map>
-        </property>
+         </property>
     </bean>
 
     <!-- 
@@ -169,7 +170,7 @@
         </amq:prefetchPolicy>
         <property name="blobTransferPolicy" ref="blobTransferPolicy"/>
     </amq:connectionFactory>
-    <bean id="blobTransferPolicy" class="org.apache.james.queue.activemq.FileSystemBlobTransferPolicy">
+    <bean id="blobTransferPolicy" class="org.apache.james.queue.activemq.FileSystemBlobTransferPolicy" autowire="byName">
         <property name="defaultUploadUrl" value="file://var/store/activemq/blob-transfer"/>
     </bean>
     <bean id="jmsConnectionFactory" class="org.springframework.jms.connection.CachingConnectionFactory">
@@ -191,21 +192,21 @@
     <!-- 
       Mailet Container Beans.
      -->
-    <bean id="mailprocessor" name="processorRoute" class="org.apache.james.mailetcontainer.impl.camel.CamelCompositeProcessor"/>
+    <bean id="mailprocessor" name="processorRoute" class="org.apache.james.mailetcontainer.impl.camel.CamelCompositeProcessor" autowire="byType" />
 
     <!-- 
       !!! mailetcontext bean must be defined after mailProcessor 
           otherwise LogEnabled injection via LogEnabledBeanPostProcessor will not occur before 
           it is used - Seems like a Spring bug...
     -->
-    <bean id="mailetcontext" class="org.apache.james.mailetcontainer.impl.JamesMailetContext"/>
-    <bean id="mailspooler" class="org.apache.james.mailetcontainer.impl.JamesMailSpooler"/>
+    <bean id="mailetcontext" class="org.apache.james.mailetcontainer.impl.JamesMailetContext" autowire="byType" />
+    <bean id="mailspooler" class="org.apache.james.mailetcontainer.impl.JamesMailSpooler" autowire="byType" />
 
     <!-- 
       Mailet and Matcher "Bean-Factory".
      -->
-    <bean id="mailetloader" class="org.apache.james.container.spring.bean.factory.mailetcontainer.MailetLoaderBeanFactory" />
-    <bean id="matcherloader" class="org.apache.james.container.spring.bean.factory.mailetcontainer.MatcherLoaderBeanFactory" />
+    <bean id="mailetloader" class="org.apache.james.container.spring.bean.factory.mailetcontainer.MailetLoaderBeanFactory" autowire="byType" />
+    <bean id="matcherloader" class="org.apache.james.container.spring.bean.factory.mailetcontainer.MatcherLoaderBeanFactory" autowire="byType" />
 
     <!-- 
       Camel Context
@@ -223,7 +224,7 @@
     <bean class="org.apache.james.container.spring.bean.factorypostprocessor.FileSystemBeanFactoryPostProcessor">
         <property name="fileSystem" ref="filesystem" />
     </bean>
-    <bean id="filesystem" class="org.apache.james.container.spring.filesystem.FileSystemImpl" />
+    <bean id="filesystem" class="org.apache.james.container.spring.filesystem.FileSystemImpl" autowire="byName" />
 
     <!-- 
     ===========================================================================
@@ -231,7 +232,7 @@
     ===========================================================================
     -->
 
-    <bean id="dnsservice" class="org.apache.james.dnsservice.dnsjava.DNSJavaService" />
+    <bean id="dnsservice" class="org.apache.james.dnsservice.dnsjava.DNSJavaService" autowire="byName" />
 
     <!-- 
     ===========================================================================
@@ -239,7 +240,7 @@
     ===========================================================================
     -->
 
-    <bean id="fetchmail" class="org.apache.james.fetchmail.FetchScheduler" />
+    <bean id="fetchmail" class="org.apache.james.fetchmail.FetchScheduler" autowire="byName" />
 
 
     <!-- 
@@ -315,8 +316,9 @@
     <!-- 
       Mailbox Importer
      -->
+<!-- 
     <bean id="james23importer" class="org.apache.james.container.spring.tool.James23Importer"/>
-
+ -->
     <!-- 
     ===========================================================================
        Database DataSource
@@ -404,8 +406,10 @@
           <entry key="org.apache.james:type=component,name=mailboxmanagement" value-ref="mailboxmanagermanagement"/>
           <entry key="org.apache.james:type=component,component=mailetcontainer,name=mailspooler" value-ref="mailspooler"/>
           <entry key="org.apache.james:type=component,name=mailboxcopier" value-ref="mailboxcopiermanagement"/>
+<!-- 
           <entry key="org.apache.james:type=component,name=james23importer" value-ref="james23importermanagement"/>
-          <entry key="org.apache.james:type=container,name=logprovider" value-ref="logprovider"/>
+-->
+           <entry key="org.apache.james:type=container,name=logprovider" value-ref="logprovider"/>
         </map>
       </property>
       <property name="assembler">
@@ -419,7 +423,9 @@
     <bean id="domainlistmanagement" class="org.apache.james.domainlist.lib.DomainListManagement" />
     <bean id="mailboxmanagermanagement" class="org.apache.james.adapter.mailbox.MailboxManagerManagement" />
     <bean id="mailboxcopiermanagement" class="org.apache.james.container.spring.mailbox.MailboxCopierManagement" />
+<!-- 
     <bean id="james23importermanagement" class="org.apache.james.container.spring.tool.James23ImporterManagement" />
+-->
 
 <!-- uncomment the folowing line to enable JETM monitoring -->
 <!--

Modified: james/server/trunk/container-spring/pom.xml
URL: http://svn.apache.org/viewvc/james/server/trunk/container-spring/pom.xml?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/container-spring/pom.xml (original)
+++ james/server/trunk/container-spring/pom.xml Thu Feb  7 17:54:26 2013
@@ -125,6 +125,10 @@
             <artifactId>${javax.mail.artifactId}</artifactId>
         </dependency>
         <dependency>
+          <groupId>javax.inject</groupId>
+          <artifactId>javax.inject</artifactId>
+        </dependency>
+        <dependency>
             <groupId>log4j</groupId>
             <artifactId>log4j</artifactId>
         </dependency>

Modified: james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/bean/factory/mailetcontainer/AbstractLoaderBeanFactory.java
URL: http://svn.apache.org/viewvc/james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/bean/factory/mailetcontainer/AbstractLoaderBeanFactory.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/bean/factory/mailetcontainer/AbstractLoaderBeanFactory.java (original)
+++ james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/bean/factory/mailetcontainer/AbstractLoaderBeanFactory.java Thu Feb  7 17:54:26 2013
@@ -19,7 +19,9 @@
 package org.apache.james.container.spring.bean.factory.mailetcontainer;
 
 import org.apache.james.container.spring.bean.factory.AbstractBeanFactory;
+import org.apache.james.filesystem.api.FileSystem;
 import org.apache.mailet.MailetException;
+import org.springframework.beans.factory.config.AutowireCapableBeanFactory;
 
 public abstract class AbstractLoaderBeanFactory<T> extends AbstractBeanFactory {
 
@@ -42,7 +44,14 @@ public abstract class AbstractLoaderBean
         }
         // Use the classloader which is used for bean instance stuff
         Class<T> c = (Class<T>) getBeanFactory().getBeanClassLoader().loadClass(fullName);
-        return (T) getBeanFactory().createBean(c);
+        T t = (T) getBeanFactory().createBean(c, AutowireCapableBeanFactory.AUTOWIRE_AUTODETECT, true);
+        if (name.equals("LocalDelivery")) {
+            System.out.println(t);
+        }
+        if (name.equals("SieveMailet")) {
+            System.out.println(t);
+        }
+        return t;
 
     }
 

Modified: james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/bean/factory/mailrepositorystore/MailRepositoryStoreBeanFactory.java
URL: http://svn.apache.org/viewvc/james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/bean/factory/mailrepositorystore/MailRepositoryStoreBeanFactory.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/bean/factory/mailrepositorystore/MailRepositoryStoreBeanFactory.java (original)
+++ james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/bean/factory/mailrepositorystore/MailRepositoryStoreBeanFactory.java Thu Feb  7 17:54:26 2013
@@ -200,7 +200,7 @@ public class MailRepositoryStoreBeanFact
             try {
                 // Use the classloader which is used for bean instance stuff
                 Class<MailRepository> clazz = (Class<MailRepository>) getBeanFactory().getBeanClassLoader().loadClass(repClass);
-                reply = (MailRepository) getBeanFactory().autowire(clazz, ConfigurableListableBeanFactory.AUTOWIRE_NO, false);
+                reply = (MailRepository) getBeanFactory().autowire(clazz, ConfigurableListableBeanFactory.AUTOWIRE_AUTODETECT, false);
 
                 if (reply instanceof LogEnabled) {
                     ((LogEnabled) reply).setLog(logger);

Modified: james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/bean/factory/protocols/ProtocolHandlerLoaderBeanFactory.java
URL: http://svn.apache.org/viewvc/james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/bean/factory/protocols/ProtocolHandlerLoaderBeanFactory.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/bean/factory/protocols/ProtocolHandlerLoaderBeanFactory.java (original)
+++ james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/bean/factory/protocols/ProtocolHandlerLoaderBeanFactory.java Thu Feb  7 17:54:26 2013
@@ -26,6 +26,7 @@ import org.apache.james.protocols.api.ha
 import org.apache.james.protocols.lib.handler.ProtocolHandlerLoader;
 import org.apache.james.protocols.lib.lifecycle.InitializingLifecycleAwareProtocolHandler;
 import org.springframework.beans.BeansException;
+import org.springframework.beans.factory.config.AutowireCapableBeanFactory;
 
 public class ProtocolHandlerLoaderBeanFactory extends AbstractBeanFactory implements ProtocolHandlerLoader{
 
@@ -36,7 +37,7 @@ public class ProtocolHandlerLoaderBeanFa
         try {
             // Use the classloader which is used for bean instance stuff
             Class<ProtocolHandler> c = (Class<ProtocolHandler>) getBeanFactory().getBeanClassLoader().loadClass(name);
-            ProtocolHandler handler =  (ProtocolHandler) getBeanFactory().createBean(c);
+            ProtocolHandler handler =  (ProtocolHandler) getBeanFactory().createBean(c, AutowireCapableBeanFactory.AUTOWIRE_AUTODETECT, true);
             if (handler instanceof LifecycleAwareProtocolHandler) {
                 ((InitializingLifecycleAwareProtocolHandler) handler).init(config);
             }
@@ -49,8 +50,6 @@ public class ProtocolHandlerLoaderBeanFa
             throw new LoadingException("Unable to load handler", e);
         }
 
-
     }
-
     
 }

Modified: james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/bean/factorypostprocessor/FileSystemBeanFactoryPostProcessor.java
URL: http://svn.apache.org/viewvc/james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/bean/factorypostprocessor/FileSystemBeanFactoryPostProcessor.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/bean/factorypostprocessor/FileSystemBeanFactoryPostProcessor.java (original)
+++ james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/bean/factorypostprocessor/FileSystemBeanFactoryPostProcessor.java Thu Feb  7 17:54:26 2013
@@ -42,10 +42,10 @@ public class FileSystemBeanFactoryPostPr
 
     private final FileSystemVisitor visitor = new FileSystemVisitor();
 
-    private FileSystem fs;
+    private FileSystem fileSystem;
 
-    public void setFileSystem(FileSystem fs) {
-        this.fs = fs;
+    public void setFileSystem(FileSystem fileSystem) {
+        this.fileSystem = fileSystem;
     }
 
     /**
@@ -65,7 +65,7 @@ public class FileSystemBeanFactoryPostPr
         protected String resolveStringValue(String strVal) throws BeansException {
             if (strVal.startsWith(FS_PREFIX)) {
                 try {
-                    return fs.getFile(strVal.substring(FS_PREFIX.length())).toString();
+                    return fileSystem.getFile(strVal.substring(FS_PREFIX.length())).toString();
                 } catch (FileNotFoundException e) {
                     throw new FatalBeanException("Unable to convert value with filesystem service", e);
                 }

Modified: james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/mailbox/MailboxCopierManagement.java
URL: http://svn.apache.org/viewvc/james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/mailbox/MailboxCopierManagement.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/mailbox/MailboxCopierManagement.java (original)
+++ james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/mailbox/MailboxCopierManagement.java Thu Feb  7 17:54:26 2013
@@ -22,7 +22,8 @@ import java.io.IOException;
 import java.util.HashMap;
 import java.util.Map;
 
-import javax.annotation.Resource;
+import javax.inject.Inject;
+import javax.inject.Named;
 
 import org.apache.james.mailbox.MailboxManager;
 import org.apache.james.mailbox.copier.MailboxCopier;
@@ -46,8 +47,8 @@ public class MailboxCopierManagement imp
     private MailboxCopier copier;
     private ApplicationContext context;
 
-    @Resource(name = "mailboxcopier")
-    public void setMailboxCopier(MailboxCopier copier) {
+    @Inject
+    public void setMailboxCopier(@Named("mailboxcopier") MailboxCopier copier) {
         this.copier = copier;
     }
 

Modified: james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/tool/James23Importer.java
URL: http://svn.apache.org/viewvc/james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/tool/James23Importer.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/tool/James23Importer.java (original)
+++ james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/tool/James23Importer.java Thu Feb  7 17:54:26 2013
@@ -22,7 +22,8 @@ import java.io.IOException;
 import java.util.Date;
 import java.util.Iterator;
 
-import javax.annotation.Resource;
+import javax.inject.Inject;
+import javax.inject.Named;
 import javax.mail.Flags;
 import javax.mail.MessagingException;
 
@@ -57,31 +58,36 @@ public class James23Importer implements 
     /**
      * James 3.0 users repository.
      */
-    @Resource(name = "usersrepository")
+    @Inject
+    @Named("usersrepository")
     private UsersRepository james30UsersRepository;
 
     /**
      * James 3.0 users repository.
      */
-    @Resource(name = "mailrepositorystore")
+    @Inject
+    @Named("mailrepositorystore")
     private MailRepositoryStore mailRepositoryStore;
 
     /**
      * James 3.0 domain list.
      */
-    @Resource(name = "domainlist")
+    @Inject
+    @Named("domainlist")
     private DomainList domainList;
 
     /**
      * The mailbox manager needed to copy the mails to.
      */
-    @Resource(name = "mailboxmanager")
+    @Inject
+    @Named("mailboxmanager")
     private MailboxManager mailboxManager;
 
     /**
      * James 2.3 user repository defined by configuration.
      */
-    @Resource(name = "usersrepository23")
+    @Inject
+    @Named("usersrepository23")
     private UsersRepository james23UsersRepository;
 
     /**

Modified: james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/tool/James23ImporterManagement.java
URL: http://svn.apache.org/viewvc/james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/tool/James23ImporterManagement.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/tool/James23ImporterManagement.java (original)
+++ james/server/trunk/container-spring/src/main/java/org/apache/james/container/spring/tool/James23ImporterManagement.java Thu Feb  7 17:54:26 2013
@@ -20,11 +20,11 @@ package org.apache.james.container.sprin
 
 import java.io.IOException;
 
-import javax.annotation.Resource;
+import javax.inject.Inject;
+import javax.inject.Named;
 import javax.mail.MessagingException;
 
 import org.apache.james.domainlist.api.DomainListException;
-import org.apache.james.mailbox.exception.MailboxException;
 import org.apache.james.mailrepository.api.MailRepositoryStore.MailRepositoryStoreException;
 import org.apache.james.user.api.UsersRepositoryException;
 
@@ -36,7 +36,8 @@ public class James23ImporterManagement i
     /**
      * 
      */
-    @Resource(name = "james23importer")
+    @Inject
+    @Named("james23importer")
     private James23Importer james23Importer;
 
     /**

Modified: james/server/trunk/data/data-file/pom.xml
URL: http://svn.apache.org/viewvc/james/server/trunk/data/data-file/pom.xml?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/data/data-file/pom.xml (original)
+++ james/server/trunk/data/data-file/pom.xml Thu Feb  7 17:54:26 2013
@@ -75,6 +75,10 @@
             <groupId>org.apache.james</groupId>
             <artifactId>james-server-dnsservice-api</artifactId>
         </dependency>
+        <dependency>
+          <groupId>javax.inject</groupId>
+          <artifactId>javax.inject</artifactId>
+        </dependency>
 
         <!-- Test dependencies -->
         <dependency>

Modified: james/server/trunk/data/data-file/src/main/java/org/apache/james/mailrepository/file/FileMailRepository.java
URL: http://svn.apache.org/viewvc/james/server/trunk/data/data-file/src/main/java/org/apache/james/mailrepository/file/FileMailRepository.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/data/data-file/src/main/java/org/apache/james/mailrepository/file/FileMailRepository.java (original)
+++ james/server/trunk/data/data-file/src/main/java/org/apache/james/mailrepository/file/FileMailRepository.java Thu Feb  7 17:54:26 2013
@@ -29,7 +29,8 @@ import java.util.Iterator;
 import java.util.Set;
 
 import javax.annotation.PostConstruct;
-import javax.annotation.Resource;
+import javax.inject.Inject;
+import javax.inject.Named;
 import javax.mail.MessagingException;
 import javax.mail.internet.MimeMessage;
 
@@ -68,11 +69,11 @@ public class FileMailRepository extends 
     private boolean fifo;
     private boolean cacheKeys; // experimental: for use with write mostly
                                // repositories such as spam and error
-    private FileSystem fs;
+    private FileSystem fileSystem;
 
-    @Resource(name = "filesystem")
-    public void setFileSystem(FileSystem fs) {
-        this.fs = fs;
+    @Inject
+    public void setFileSystem(@Named("filesystem") FileSystem fileSystem) {
+        this.fileSystem = fileSystem;
     }
 
     @Override
@@ -95,13 +96,13 @@ public class FileMailRepository extends 
             reposConfiguration.addProperty("[@destinationURL]", destination);
             objectRepository = new FilePersistentObjectRepository();
             objectRepository.setLog(getLogger());
-            objectRepository.setFileSystem(fs);
+            objectRepository.setFileSystem(fileSystem);
             objectRepository.configure(reposConfiguration);
             objectRepository.init();
 
             streamRepository = new FilePersistentStreamRepository();
             streamRepository.setLog(getLogger());
-            streamRepository.setFileSystem(fs);
+            streamRepository.setFileSystem(fileSystem);
             streamRepository.configure(reposConfiguration);
             streamRepository.init();
 

Modified: james/server/trunk/data/data-file/src/main/java/org/apache/james/user/file/UsersFileRepository.java
URL: http://svn.apache.org/viewvc/james/server/trunk/data/data-file/src/main/java/org/apache/james/user/file/UsersFileRepository.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/data/data-file/src/main/java/org/apache/james/user/file/UsersFileRepository.java (original)
+++ james/server/trunk/data/data-file/src/main/java/org/apache/james/user/file/UsersFileRepository.java Thu Feb  7 17:54:26 2013
@@ -22,7 +22,8 @@ package org.apache.james.user.file;
 import java.util.Iterator;
 
 import javax.annotation.PostConstruct;
-import javax.annotation.Resource;
+import javax.inject.Inject;
+import javax.inject.Named;
 
 import org.apache.commons.configuration.ConfigurationException;
 import org.apache.commons.configuration.DefaultConfigurationBuilder;
@@ -66,11 +67,11 @@ public class UsersFileRepository extends
      */
     private String destination;
 
-    private FileSystem fs;
+    private FileSystem fileSystem;
 
-    @Resource(name = "filesystem")
-    public void setFileSystem(FileSystem fs) {
-        this.fs = fs;
+    @Inject
+    public void setFileSystem(@Named("filesystem") FileSystem fileSystem) {
+        this.fileSystem = fileSystem;
     }
 
     /**
@@ -96,7 +97,7 @@ public class UsersFileRepository extends
 
             objectRepository = new FilePersistentObjectRepository();
             objectRepository.setLog(getLogger());
-            objectRepository.setFileSystem(fs);
+            objectRepository.setFileSystem(fileSystem);
             objectRepository.configure(objectConfiguration);
             objectRepository.init();
             if (getLogger().isDebugEnabled()) {

Modified: james/server/trunk/data/data-jcr/pom.xml
URL: http://svn.apache.org/viewvc/james/server/trunk/data/data-jcr/pom.xml?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/data/data-jcr/pom.xml (original)
+++ james/server/trunk/data/data-jcr/pom.xml Thu Feb  7 17:54:26 2013
@@ -67,6 +67,10 @@
             <groupId>${javax.mail.groupId}</groupId>
             <artifactId>${javax.mail.artifactId}</artifactId>
         </dependency>
+        <dependency>
+          <groupId>javax.inject</groupId>
+          <artifactId>javax.inject</artifactId>
+        </dependency>
 
         <!-- Test dependencies -->
         <dependency>

Modified: james/server/trunk/data/data-jcr/src/main/java/org/apache/james/mailrepository/jcr/JCRMailRepository.java
URL: http://svn.apache.org/viewvc/james/server/trunk/data/data-jcr/src/main/java/org/apache/james/mailrepository/jcr/JCRMailRepository.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/data/data-jcr/src/main/java/org/apache/james/mailrepository/jcr/JCRMailRepository.java (original)
+++ james/server/trunk/data/data-jcr/src/main/java/org/apache/james/mailrepository/jcr/JCRMailRepository.java Thu Feb  7 17:54:26 2013
@@ -35,7 +35,7 @@ import java.util.Iterator;
 import java.util.Properties;
 
 import javax.annotation.PostConstruct;
-import javax.annotation.Resource;
+import javax.inject.Inject;
 import javax.jcr.Node;
 import javax.jcr.NodeIterator;
 import javax.jcr.PathNotFoundException;
@@ -77,7 +77,7 @@ public class JCRMailRepository extends A
 
     private Logger logger;
 
-    @Resource(name = "jcrRepository")
+    @Inject
     public void setRepository(Repository repository) {
         this.repository = repository;
     }

Modified: james/server/trunk/data/data-jcr/src/main/java/org/apache/james/user/jcr/JCRUsersRepository.java
URL: http://svn.apache.org/viewvc/james/server/trunk/data/data-jcr/src/main/java/org/apache/james/user/jcr/JCRUsersRepository.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/data/data-jcr/src/main/java/org/apache/james/user/jcr/JCRUsersRepository.java (original)
+++ james/server/trunk/data/data-jcr/src/main/java/org/apache/james/user/jcr/JCRUsersRepository.java Thu Feb  7 17:54:26 2013
@@ -23,7 +23,7 @@ import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Iterator;
 
-import javax.annotation.Resource;
+import javax.inject.Inject;
 import javax.jcr.Node;
 import javax.jcr.NodeIterator;
 import javax.jcr.PathNotFoundException;
@@ -58,7 +58,7 @@ public class JCRUsersRepository extends 
     private SimpleCredentials creds;
     private String workspace;
 
-    @Resource(name = "jcrRepository")
+    @Inject
     public void setRepository(Repository repository) {
         this.repository = repository;
     }

Modified: james/server/trunk/data/data-jdbc/pom.xml
URL: http://svn.apache.org/viewvc/james/server/trunk/data/data-jdbc/pom.xml?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/data/data-jdbc/pom.xml (original)
+++ james/server/trunk/data/data-jdbc/pom.xml Thu Feb  7 17:54:26 2013
@@ -81,6 +81,11 @@
             <artifactId>geronimo-annotation_1.1_spec</artifactId>
         </dependency>
 
+        <dependency>
+          <groupId>javax.inject</groupId>
+          <artifactId>javax.inject</artifactId>
+        </dependency>
+
         <!-- Test dependencies -->
         <dependency>
             <groupId>junit</groupId>

Modified: james/server/trunk/data/data-jdbc/src/main/java/org/apache/james/mailrepository/jdbc/JDBCMailRepository.java
URL: http://svn.apache.org/viewvc/james/server/trunk/data/data-jdbc/src/main/java/org/apache/james/mailrepository/jdbc/JDBCMailRepository.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/data/data-jdbc/src/main/java/org/apache/james/mailrepository/jdbc/JDBCMailRepository.java (original)
+++ james/server/trunk/data/data-jdbc/src/main/java/org/apache/james/mailrepository/jdbc/JDBCMailRepository.java Thu Feb  7 17:54:26 2013
@@ -19,32 +19,12 @@
 
 package org.apache.james.mailrepository.jdbc;
 
-import org.apache.commons.configuration.ConfigurationException;
-import org.apache.commons.configuration.DefaultConfigurationBuilder;
-import org.apache.commons.configuration.HierarchicalConfiguration;
-import org.apache.james.core.MailImpl;
-import org.apache.james.core.MimeMessageCopyOnWriteProxy;
-import org.apache.james.core.MimeMessageWrapper;
-import org.apache.james.filesystem.api.FileSystem;
-import org.apache.james.mailrepository.lib.AbstractMailRepository;
-import org.apache.james.repository.file.FilePersistentStreamRepository;
-import org.apache.james.util.sql.JDBCUtil;
-import org.apache.james.util.sql.SqlResources;
-import org.apache.mailet.Mail;
-import org.apache.mailet.MailAddress;
-
-import javax.annotation.PostConstruct;
-import javax.annotation.Resource;
-import javax.mail.MessagingException;
-import javax.mail.internet.MimeMessage;
-import javax.sql.DataSource;
-
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
-import java.io.ObjectOutputStream;
 import java.io.ObjectInputStream;
+import java.io.ObjectOutputStream;
 import java.sql.Blob;
 import java.sql.Connection;
 import java.sql.DatabaseMetaData;
@@ -61,6 +41,27 @@ import java.util.Map;
 import java.util.Set;
 import java.util.StringTokenizer;
 
+import javax.annotation.PostConstruct;
+import javax.inject.Inject;
+import javax.inject.Named;
+import javax.mail.MessagingException;
+import javax.mail.internet.MimeMessage;
+import javax.sql.DataSource;
+
+import org.apache.commons.configuration.ConfigurationException;
+import org.apache.commons.configuration.DefaultConfigurationBuilder;
+import org.apache.commons.configuration.HierarchicalConfiguration;
+import org.apache.james.core.MailImpl;
+import org.apache.james.core.MimeMessageCopyOnWriteProxy;
+import org.apache.james.core.MimeMessageWrapper;
+import org.apache.james.filesystem.api.FileSystem;
+import org.apache.james.mailrepository.lib.AbstractMailRepository;
+import org.apache.james.repository.file.FilePersistentStreamRepository;
+import org.apache.james.util.sql.JDBCUtil;
+import org.apache.james.util.sql.SqlResources;
+import org.apache.mailet.Mail;
+import org.apache.mailet.MailAddress;
+
 /**
  * Implementation of a MailRepository on a database.
  * 
@@ -147,13 +148,13 @@ public class JDBCMailRepository extends 
 
     private String destination;
 
-    @Resource(name = "datasource")
+    @Inject
     public void setDatasource(DataSource datasource) {
         this.datasource = datasource;
     }
 
-    @Resource(name = "filesystem")
-    public void setFileSystem(FileSystem fileSystem) {
+    @Inject
+    public void setFileSystem(@Named("filesystem") FileSystem fileSystem) {
         this.fileSystem = fileSystem;
     }
 

Modified: james/server/trunk/data/data-jdbc/src/main/java/org/apache/james/rrt/jdbc/JDBCRecipientRewriteTable.java
URL: http://svn.apache.org/viewvc/james/server/trunk/data/data-jdbc/src/main/java/org/apache/james/rrt/jdbc/JDBCRecipientRewriteTable.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/data/data-jdbc/src/main/java/org/apache/james/rrt/jdbc/JDBCRecipientRewriteTable.java (original)
+++ james/server/trunk/data/data-jdbc/src/main/java/org/apache/james/rrt/jdbc/JDBCRecipientRewriteTable.java Thu Feb  7 17:54:26 2013
@@ -31,7 +31,7 @@ import java.util.List;
 import java.util.Map;
 
 import javax.annotation.PostConstruct;
-import javax.annotation.Resource;
+import javax.inject.Inject;
 import javax.sql.DataSource;
 
 import org.apache.commons.configuration.ConfigurationException;
@@ -141,12 +141,12 @@ public class JDBCRecipientRewriteTable e
         }
     }
 
-    @Resource(name = "filesystem")
+    @Inject
     public void setFileSystem(FileSystem fileSystem) {
         this.fileSystem = fileSystem;
     }
 
-    @Resource(name = "datasource")
+    @Inject
     public void setDataSource(DataSource dataSource) {
         this.dataSource = dataSource;
     }

Modified: james/server/trunk/data/data-jdbc/src/main/java/org/apache/james/user/jdbc/AbstractJdbcUsersRepository.java
URL: http://svn.apache.org/viewvc/james/server/trunk/data/data-jdbc/src/main/java/org/apache/james/user/jdbc/AbstractJdbcUsersRepository.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/data/data-jdbc/src/main/java/org/apache/james/user/jdbc/AbstractJdbcUsersRepository.java (original)
+++ james/server/trunk/data/data-jdbc/src/main/java/org/apache/james/user/jdbc/AbstractJdbcUsersRepository.java Thu Feb  7 17:54:26 2013
@@ -19,15 +19,6 @@
 
 package org.apache.james.user.jdbc;
 
-import org.apache.commons.configuration.ConfigurationException;
-import org.apache.commons.configuration.HierarchicalConfiguration;
-import org.apache.james.filesystem.api.FileSystem;
-import org.apache.james.user.api.UsersRepositoryException;
-import org.apache.james.user.api.model.User;
-import org.apache.james.user.lib.AbstractJamesUsersRepository;
-import org.apache.james.util.sql.JDBCUtil;
-import org.apache.james.util.sql.SqlResources;
-
 import java.io.InputStream;
 import java.sql.Connection;
 import java.sql.DatabaseMetaData;
@@ -43,9 +34,18 @@ import java.util.Locale;
 import java.util.Map;
 
 import javax.annotation.PostConstruct;
-import javax.annotation.Resource;
+import javax.inject.Inject;
 import javax.sql.DataSource;
 
+import org.apache.commons.configuration.ConfigurationException;
+import org.apache.commons.configuration.HierarchicalConfiguration;
+import org.apache.james.filesystem.api.FileSystem;
+import org.apache.james.user.api.UsersRepositoryException;
+import org.apache.james.user.api.model.User;
+import org.apache.james.user.lib.AbstractJamesUsersRepository;
+import org.apache.james.util.sql.JDBCUtil;
+import org.apache.james.util.sql.SqlResources;
+
 /**
  * An abstract base class for creating UserRepository implementations which use
  * a database for persistence.
@@ -219,7 +219,7 @@ public abstract class AbstractJdbcUsersR
      * @param m_datasource
      *            the DataSourceSelector
      */
-    @Resource(name = "datasource")
+    @Inject
     public void setDatasource(DataSource m_datasource) {
         this.m_datasource = m_datasource;
     }
@@ -230,7 +230,7 @@ public abstract class AbstractJdbcUsersR
      * @param system
      *            the new service
      */
-    @Resource(name = "filesystem")
+    @Inject
     public void setFileSystem(FileSystem system) {
         this.fileSystem = system;
     }

Modified: james/server/trunk/data/data-library/pom.xml
URL: http://svn.apache.org/viewvc/james/server/trunk/data/data-library/pom.xml?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/data/data-library/pom.xml (original)
+++ james/server/trunk/data/data-library/pom.xml Thu Feb  7 17:54:26 2013
@@ -67,6 +67,10 @@
             <groupId>${javax.mail.groupId}</groupId>
             <artifactId>${javax.mail.artifactId}</artifactId>
         </dependency>
+        <dependency>
+          <groupId>javax.inject</groupId>
+          <artifactId>javax.inject</artifactId>
+        </dependency>
 
         <!-- Test dependencies -->
         <dependency>

Modified: james/server/trunk/data/data-library/src/main/java/org/apache/james/domainlist/lib/AbstractDomainList.java
URL: http://svn.apache.org/viewvc/james/server/trunk/data/data-library/src/main/java/org/apache/james/domainlist/lib/AbstractDomainList.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/data/data-library/src/main/java/org/apache/james/domainlist/lib/AbstractDomainList.java (original)
+++ james/server/trunk/data/data-library/src/main/java/org/apache/james/domainlist/lib/AbstractDomainList.java Thu Feb  7 17:54:26 2013
@@ -26,7 +26,7 @@ import java.util.Iterator;
 import java.util.List;
 import java.util.Locale;
 
-import javax.annotation.Resource;
+import javax.inject.Inject;
 
 import org.apache.commons.configuration.ConfigurationException;
 import org.apache.commons.configuration.HierarchicalConfiguration;
@@ -48,7 +48,7 @@ public abstract class AbstractDomainList
     private Logger logger;
     private String defaultDomain;
 
-    @Resource(name = "dnsservice")
+    @Inject
     public void setDNSService(DNSService dns) {
         this.dns = dns;
     }

Modified: james/server/trunk/data/data-library/src/main/java/org/apache/james/domainlist/lib/DomainListManagement.java
URL: http://svn.apache.org/viewvc/james/server/trunk/data/data-library/src/main/java/org/apache/james/domainlist/lib/DomainListManagement.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/data/data-library/src/main/java/org/apache/james/domainlist/lib/DomainListManagement.java (original)
+++ james/server/trunk/data/data-library/src/main/java/org/apache/james/domainlist/lib/DomainListManagement.java Thu Feb  7 17:54:26 2013
@@ -18,7 +18,7 @@
  ****************************************************************/
 package org.apache.james.domainlist.lib;
 
-import javax.annotation.Resource;
+import javax.inject.Inject;
 import javax.management.NotCompliantMBeanException;
 import javax.management.StandardMBean;
 
@@ -34,10 +34,9 @@ public class DomainListManagement extend
         super(DomainListManagementMBean.class);
     }
 
-    @Resource(name = "domainlist")
+    @Inject
     public void setDomainList(DomainList domainList) {
         this.domainList = domainList;
-
     }
 
     public void addDomain(String domain) throws Exception {

Modified: james/server/trunk/data/data-library/src/main/java/org/apache/james/repository/file/AbstractFileRepository.java
URL: http://svn.apache.org/viewvc/james/server/trunk/data/data-library/src/main/java/org/apache/james/repository/file/AbstractFileRepository.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/data/data-library/src/main/java/org/apache/james/repository/file/AbstractFileRepository.java (original)
+++ james/server/trunk/data/data-library/src/main/java/org/apache/james/repository/file/AbstractFileRepository.java Thu Feb  7 17:54:26 2013
@@ -19,14 +19,6 @@
 
 package org.apache.james.repository.file;
 
-import org.apache.commons.configuration.ConfigurationException;
-import org.apache.commons.configuration.HierarchicalConfiguration;
-import org.apache.james.filesystem.api.FileSystem;
-import org.apache.james.lifecycle.api.Configurable;
-import org.apache.james.lifecycle.api.LogEnabled;
-import org.apache.james.repository.api.Repository;
-import org.slf4j.Logger;
-
 import java.io.File;
 import java.io.FileInputStream;
 import java.io.FileNotFoundException;
@@ -40,7 +32,16 @@ import java.util.Iterator;
 import java.util.List;
 
 import javax.annotation.PostConstruct;
-import javax.annotation.Resource;
+import javax.inject.Inject;
+import javax.inject.Named;
+
+import org.apache.commons.configuration.ConfigurationException;
+import org.apache.commons.configuration.HierarchicalConfiguration;
+import org.apache.james.filesystem.api.FileSystem;
+import org.apache.james.lifecycle.api.Configurable;
+import org.apache.james.lifecycle.api.LogEnabled;
+import org.apache.james.repository.api.Repository;
+import org.slf4j.Logger;
 
 /**
  * This an abstract class implementing functionality for creating a file-store.
@@ -71,8 +72,8 @@ public abstract class AbstractFileReposi
         destination = configuration.getString("[@destinationURL]");
     }
 
-    @Resource(name = "filesystem")
-    public void setFileSystem(FileSystem fileSystem) {
+    @Inject
+    public void setFileSystem(@Named("filesystem") FileSystem fileSystem) {
         this.fileSystem = fileSystem;
     }
 

Modified: james/server/trunk/data/data-library/src/main/java/org/apache/james/rrt/lib/AbstractRecipientRewriteTable.java
URL: http://svn.apache.org/viewvc/james/server/trunk/data/data-library/src/main/java/org/apache/james/rrt/lib/AbstractRecipientRewriteTable.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/data/data-library/src/main/java/org/apache/james/rrt/lib/AbstractRecipientRewriteTable.java (original)
+++ james/server/trunk/data/data-library/src/main/java/org/apache/james/rrt/lib/AbstractRecipientRewriteTable.java Thu Feb  7 17:54:26 2013
@@ -26,7 +26,7 @@ import java.util.Map;
 import java.util.regex.Pattern;
 import java.util.regex.PatternSyntaxException;
 
-import javax.annotation.Resource;
+import javax.inject.Inject;
 import javax.mail.internet.ParseException;
 
 import org.apache.commons.configuration.ConfigurationException;
@@ -53,7 +53,7 @@ public abstract class AbstractRecipientR
 
     private DomainList domainList;
 
-    @Resource(name = "domainlist")
+    @Inject
     public void setDomainList(DomainList domainList) {
         this.domainList = domainList;
     }

Modified: james/server/trunk/data/data-library/src/main/java/org/apache/james/rrt/lib/RecipientRewriteTableManagement.java
URL: http://svn.apache.org/viewvc/james/server/trunk/data/data-library/src/main/java/org/apache/james/rrt/lib/RecipientRewriteTableManagement.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/data/data-library/src/main/java/org/apache/james/rrt/lib/RecipientRewriteTableManagement.java (original)
+++ james/server/trunk/data/data-library/src/main/java/org/apache/james/rrt/lib/RecipientRewriteTableManagement.java Thu Feb  7 17:54:26 2013
@@ -22,7 +22,7 @@ package org.apache.james.rrt.lib;
 import java.util.Collection;
 import java.util.Map;
 
-import javax.annotation.Resource;
+import javax.inject.Inject;
 import javax.management.NotCompliantMBeanException;
 import javax.management.StandardMBean;
 
@@ -41,7 +41,7 @@ public class RecipientRewriteTableManage
 
     private RecipientRewriteTable vut;
 
-    @Resource(name = "recipientrewritetable")
+    @Inject
     public void setManageableRecipientRewriteTable(RecipientRewriteTable vut) {
         this.vut = vut;
     }

Modified: james/server/trunk/data/data-library/src/main/java/org/apache/james/user/lib/AbstractUsersRepository.java
URL: http://svn.apache.org/viewvc/james/server/trunk/data/data-library/src/main/java/org/apache/james/user/lib/AbstractUsersRepository.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/data/data-library/src/main/java/org/apache/james/user/lib/AbstractUsersRepository.java (original)
+++ james/server/trunk/data/data-library/src/main/java/org/apache/james/user/lib/AbstractUsersRepository.java Thu Feb  7 17:54:26 2013
@@ -19,7 +19,7 @@
 
 package org.apache.james.user.lib;
 
-import javax.annotation.Resource;
+import javax.inject.Inject;
 
 import org.apache.commons.configuration.ConfigurationException;
 import org.apache.commons.configuration.HierarchicalConfiguration;
@@ -67,7 +67,7 @@ public abstract class AbstractUsersRepos
         this.virtualHosting = virtualHosting;
     }
 
-    @Resource(name = "domainlist")
+    @Inject
     public void setDomainList(DomainList domainList) {
         this.domainList = domainList;
     }

Modified: james/server/trunk/data/data-library/src/main/java/org/apache/james/user/lib/UsersRepositoryManagement.java
URL: http://svn.apache.org/viewvc/james/server/trunk/data/data-library/src/main/java/org/apache/james/user/lib/UsersRepositoryManagement.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/data/data-library/src/main/java/org/apache/james/user/lib/UsersRepositoryManagement.java (original)
+++ james/server/trunk/data/data-library/src/main/java/org/apache/james/user/lib/UsersRepositoryManagement.java Thu Feb  7 17:54:26 2013
@@ -23,13 +23,13 @@ import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
 
-import javax.annotation.Resource;
+import javax.inject.Inject;
 import javax.management.NotCompliantMBeanException;
 import javax.management.StandardMBean;
 
+import org.apache.james.user.api.UsersRepository;
 import org.apache.james.user.api.UsersRepositoryException;
 import org.apache.james.user.api.UsersRepositoryManagementMBean;
-import org.apache.james.user.api.UsersRepository;
 import org.apache.james.user.api.model.JamesUser;
 import org.apache.james.user.api.model.User;
 
@@ -40,7 +40,7 @@ public class UsersRepositoryManagement e
      */
     private UsersRepository localUsers;
 
-    @Resource(name = "usersrepository")
+    @Inject
     public void setUsersRepository(UsersRepository localUsers) {
         this.localUsers = localUsers;
     }

Modified: james/server/trunk/fetchmail/pom.xml
URL: http://svn.apache.org/viewvc/james/server/trunk/fetchmail/pom.xml?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/fetchmail/pom.xml (original)
+++ james/server/trunk/fetchmail/pom.xml Thu Feb  7 17:54:26 2013
@@ -79,6 +79,10 @@
             <groupId>org.apache.geronimo.specs</groupId>
             <artifactId>geronimo-annotation_1.1_spec</artifactId>
         </dependency>
+        <dependency>
+          <groupId>javax.inject</groupId>
+          <artifactId>javax.inject</artifactId>
+        </dependency>
     </dependencies>
 
     <build>

Modified: james/server/trunk/fetchmail/src/main/java/org/apache/james/fetchmail/FetchScheduler.java
URL: http://svn.apache.org/viewvc/james/server/trunk/fetchmail/src/main/java/org/apache/james/fetchmail/FetchScheduler.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/fetchmail/src/main/java/org/apache/james/fetchmail/FetchScheduler.java (original)
+++ james/server/trunk/fetchmail/src/main/java/org/apache/james/fetchmail/FetchScheduler.java Thu Feb  7 17:54:26 2013
@@ -20,7 +20,6 @@
 package org.apache.james.fetchmail;
 
 import java.util.ArrayList;
-import java.util.Iterator;
 import java.util.List;
 import java.util.concurrent.ScheduledExecutorService;
 import java.util.concurrent.ScheduledFuture;
@@ -28,7 +27,8 @@ import java.util.concurrent.TimeUnit;
 
 import javax.annotation.PostConstruct;
 import javax.annotation.PreDestroy;
-import javax.annotation.Resource;
+import javax.inject.Inject;
+import javax.inject.Qualifier;
 
 import org.apache.commons.configuration.ConfigurationException;
 import org.apache.commons.configuration.HierarchicalConfiguration;
@@ -75,22 +75,22 @@ public class FetchScheduler implements F
 
     private DomainList domainList;
 
-    @Resource(name = "mailqueuefactory")
+    @Inject
     public void setMailQueueFactory(MailQueueFactory queueFactory) {
         this.queueFactory = queueFactory;
     }
 
-    @Resource(name = "dnsservice")
+    @Inject
     public void setDNSService(DNSService dns) {
         this.dns = dns;
     }
 
-    @Resource(name = "usersrepository")
+    @Inject
     public void setUsersRepository(UsersRepository urepos) {
         this.urepos = urepos;
     }
 
-    @Resource(name = "domainlist")
+    @Inject
     public void setDomainList(DomainList domainList) {
         this.domainList = domainList;
     }

Modified: james/server/trunk/filesystem-api/pom.xml
URL: http://svn.apache.org/viewvc/james/server/trunk/filesystem-api/pom.xml?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/filesystem-api/pom.xml (original)
+++ james/server/trunk/filesystem-api/pom.xml Thu Feb  7 17:54:26 2013
@@ -43,6 +43,10 @@
             <artifactId>commons-io</artifactId>
         </dependency>
         <dependency>
+          <groupId>javax.inject</groupId>
+          <artifactId>javax.inject</artifactId>
+        </dependency>
+        <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
         </dependency>

Modified: james/server/trunk/filesystem-api/src/main/java/org/apache/james/filesystem/api/SieveFileRepository.java
URL: http://svn.apache.org/viewvc/james/server/trunk/filesystem-api/src/main/java/org/apache/james/filesystem/api/SieveFileRepository.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/filesystem-api/src/main/java/org/apache/james/filesystem/api/SieveFileRepository.java (original)
+++ james/server/trunk/filesystem-api/src/main/java/org/apache/james/filesystem/api/SieveFileRepository.java Thu Feb  7 17:54:26 2013
@@ -34,7 +34,7 @@ import java.util.List;
 import java.util.NoSuchElementException;
 import java.util.Scanner;
 
-import javax.annotation.Resource;
+import javax.inject.Inject;
 
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.io.IOUtils;
@@ -156,9 +156,8 @@ public class SieveFileRepository impleme
         setFileSystem(fileSystem);
     }
     
-    @Resource(name = "filesystem")
-    public void setFileSystem(FileSystem fileSystem)
-    {
+    @Inject
+    public void setFileSystem(FileSystem fileSystem) {
         _fileSystem = fileSystem;
     }
 

Modified: james/server/trunk/lifecycle-spring/src/main/java/org/apache/james/container/spring/lifecycle/AbstractLifecycleBeanPostProcessor.java
URL: http://svn.apache.org/viewvc/james/server/trunk/lifecycle-spring/src/main/java/org/apache/james/container/spring/lifecycle/AbstractLifecycleBeanPostProcessor.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/lifecycle-spring/src/main/java/org/apache/james/container/spring/lifecycle/AbstractLifecycleBeanPostProcessor.java (original)
+++ james/server/trunk/lifecycle-spring/src/main/java/org/apache/james/container/spring/lifecycle/AbstractLifecycleBeanPostProcessor.java Thu Feb  7 17:54:26 2013
@@ -22,8 +22,8 @@ import org.springframework.beans.BeansEx
 import org.springframework.beans.FatalBeanException;
 import org.springframework.beans.factory.BeanFactory;
 import org.springframework.beans.factory.BeanFactoryAware;
-import org.springframework.beans.factory.ListableBeanFactory;
 import org.springframework.beans.factory.config.BeanPostProcessor;
+import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
 import org.springframework.core.Ordered;
 import org.springframework.core.PriorityOrdered;
 
@@ -36,11 +36,11 @@ import org.springframework.core.Priority
 public abstract class AbstractLifecycleBeanPostProcessor<T> implements BeanPostProcessor, PriorityOrdered, BeanFactoryAware {
 
     private int order = Ordered.HIGHEST_PRECEDENCE;
-    private ListableBeanFactory factory;
+    private ConfigurableListableBeanFactory factory;
 
     @Override
     public void setBeanFactory(BeanFactory factory) throws BeansException {
-        this.factory = (ListableBeanFactory) factory;
+        this.factory = (ConfigurableListableBeanFactory) factory;
     }
 
     /**

Modified: james/server/trunk/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/MailboxManagerManagement.java
URL: http://svn.apache.org/viewvc/james/server/trunk/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/MailboxManagerManagement.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/MailboxManagerManagement.java (original)
+++ james/server/trunk/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/MailboxManagerManagement.java Thu Feb  7 17:54:26 2013
@@ -22,7 +22,7 @@ import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 
-import javax.annotation.Resource;
+import javax.inject.Inject;
 import javax.management.NotCompliantMBeanException;
 import javax.management.StandardMBean;
 
@@ -43,7 +43,7 @@ public class MailboxManagerManagement ex
     private MailboxManager mailboxManager;
     private Logger log;
 
-    @Resource(name = "mailboxmanager")
+    @Inject
     public void setMailboxManager(MailboxManager mailboxManager) {
         this.mailboxManager = mailboxManager;
     }

Modified: james/server/trunk/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/store/UserRepositoryAuthenticator.java
URL: http://svn.apache.org/viewvc/james/server/trunk/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/store/UserRepositoryAuthenticator.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/store/UserRepositoryAuthenticator.java (original)
+++ james/server/trunk/mailbox-adapter/src/main/java/org/apache/james/adapter/mailbox/store/UserRepositoryAuthenticator.java Thu Feb  7 17:54:26 2013
@@ -19,7 +19,7 @@
 
 package org.apache.james.adapter.mailbox.store;
 
-import javax.annotation.Resource;
+import javax.inject.Inject;
 
 import org.apache.james.lifecycle.api.LogEnabled;
 import org.apache.james.mailbox.store.Authenticator;
@@ -36,7 +36,7 @@ public class UserRepositoryAuthenticator
     private UsersRepository repos;
     private Logger log;
 
-    @Resource(name = "usersrepository")
+    @Inject
     public void setUsersRepository(UsersRepository repos) {
         this.repos = repos;
     }

Modified: james/server/trunk/mailetcontainer-camel/pom.xml
URL: http://svn.apache.org/viewvc/james/server/trunk/mailetcontainer-camel/pom.xml?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/mailetcontainer-camel/pom.xml (original)
+++ james/server/trunk/mailetcontainer-camel/pom.xml Thu Feb  7 17:54:26 2013
@@ -97,6 +97,10 @@
             <groupId>org.apache.geronimo.specs</groupId>
             <artifactId>geronimo-annotation_1.1_spec</artifactId>
         </dependency>
+        <dependency>
+          <groupId>javax.inject</groupId>
+          <artifactId>javax.inject</artifactId>
+        </dependency>
         <!-- test dependency -->
         <dependency>
             <groupId>junit</groupId>

Modified: james/server/trunk/mailetcontainer-camel/src/main/java/org/apache/james/mailetcontainer/impl/JamesMailSpooler.java
URL: http://svn.apache.org/viewvc/james/server/trunk/mailetcontainer-camel/src/main/java/org/apache/james/mailetcontainer/impl/JamesMailSpooler.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/mailetcontainer-camel/src/main/java/org/apache/james/mailetcontainer/impl/JamesMailSpooler.java (original)
+++ james/server/trunk/mailetcontainer-camel/src/main/java/org/apache/james/mailetcontainer/impl/JamesMailSpooler.java Thu Feb  7 17:54:26 2013
@@ -25,7 +25,7 @@ import java.util.concurrent.atomic.Atomi
 
 import javax.annotation.PostConstruct;
 import javax.annotation.PreDestroy;
-import javax.annotation.Resource;
+import javax.inject.Inject;
 
 import org.apache.commons.configuration.ConfigurationException;
 import org.apache.commons.configuration.HierarchicalConfiguration;
@@ -77,12 +77,12 @@ public class JamesMailSpooler implements
 
     private int numDequeueThreads;
 
-    @Resource(name = "mailqueuefactory")
+    @Inject
     public void setMailQueueFactory(MailQueueFactory queueFactory) {
         this.queueFactory = queueFactory;
     }
 
-    @Resource(name = "mailprocessor")
+    @Inject
     public void setMailProcessor(MailProcessor mailProcessor) {
         this.mailProcessor = mailProcessor;
     }

Modified: james/server/trunk/mailetcontainer-camel/src/main/java/org/apache/james/mailetcontainer/impl/JamesMailetContext.java
URL: http://svn.apache.org/viewvc/james/server/trunk/mailetcontainer-camel/src/main/java/org/apache/james/mailetcontainer/impl/JamesMailetContext.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/mailetcontainer-camel/src/main/java/org/apache/james/mailetcontainer/impl/JamesMailetContext.java (original)
+++ james/server/trunk/mailetcontainer-camel/src/main/java/org/apache/james/mailetcontainer/impl/JamesMailetContext.java Thu Feb  7 17:54:26 2013
@@ -19,6 +19,27 @@
 
 package org.apache.james.mailetcontainer.impl;
 
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Date;
+import java.util.Enumeration;
+import java.util.HashSet;
+import java.util.Hashtable;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Locale;
+import java.util.Vector;
+
+import javax.inject.Inject;
+import javax.mail.Address;
+import javax.mail.Message;
+import javax.mail.MessagingException;
+import javax.mail.internet.AddressException;
+import javax.mail.internet.InternetAddress;
+import javax.mail.internet.MimeMessage;
+import javax.mail.internet.ParseException;
+
 import org.apache.commons.configuration.ConfigurationException;
 import org.apache.commons.configuration.HierarchicalConfiguration;
 import org.apache.james.core.MailImpl;
@@ -42,26 +63,6 @@ import org.apache.mailet.TemporaryLookup
 import org.apache.mailet.base.RFC2822Headers;
 import org.slf4j.Logger;
 
-import javax.annotation.Resource;
-import javax.mail.Address;
-import javax.mail.Message;
-import javax.mail.MessagingException;
-import javax.mail.internet.AddressException;
-import javax.mail.internet.InternetAddress;
-import javax.mail.internet.MimeMessage;
-import javax.mail.internet.ParseException;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Date;
-import java.util.Enumeration;
-import java.util.HashSet;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Locale;
-import java.util.Vector;
-
 public class JamesMailetContext implements MailetContext, LogEnabled, Configurable {
 
     /**
@@ -80,22 +81,22 @@ public class JamesMailetContext implemen
 
     private MailAddress postmaster;
 
-    @Resource(name = "mailprocessor")
+    @Inject
     public void setMailProcessor(MailProcessor processorList) {
         this.processorList = processorList;
     }
 
-    @Resource(name = "dnsservice")
+    @Inject
     public void setDNSService(DNSService dns) {
         this.dns = dns;
     }
 
-    @Resource(name = "usersrepository")
+    @Inject
     public void setUsersRepository(UsersRepository localusers) {
         this.localusers = localusers;
     }
 
-    @Resource(name = "domainlist")
+    @Inject
     public void setDomainList(DomainList domains) {
         this.domains = domains;
     }

Modified: james/server/trunk/mailetcontainer-camel/src/main/java/org/apache/james/mailetcontainer/impl/camel/CamelCompositeProcessor.java
URL: http://svn.apache.org/viewvc/james/server/trunk/mailetcontainer-camel/src/main/java/org/apache/james/mailetcontainer/impl/camel/CamelCompositeProcessor.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/mailetcontainer-camel/src/main/java/org/apache/james/mailetcontainer/impl/camel/CamelCompositeProcessor.java (original)
+++ james/server/trunk/mailetcontainer-camel/src/main/java/org/apache/james/mailetcontainer/impl/camel/CamelCompositeProcessor.java Thu Feb  7 17:54:26 2013
@@ -20,7 +20,8 @@
 package org.apache.james.mailetcontainer.impl.camel;
 
 import javax.annotation.PostConstruct;
-import javax.annotation.Resource;
+import javax.inject.Inject;
+import javax.inject.Named;
 
 import org.apache.camel.CamelContext;
 import org.apache.camel.CamelContextAware;
@@ -46,17 +47,17 @@ public class CamelCompositeProcessor ext
     private MatcherLoader matcherLoader;
     private MailetLoader mailetLoader;
 
-    @Resource(name = "matcherloader")
-    public void setMatcherLoader(MatcherLoader matcherLoader) {
+    @Inject
+    public void setMatcherLoader(@Named("matcherloader") MatcherLoader matcherLoader) {
         this.matcherLoader = matcherLoader;
     }
 
-    @Resource(name = "mailetloader")
-    public void setMailetLoader(MailetLoader mailetLoader) {
+    @Inject
+    public void setMailetLoader(@Named("mailetloader") MailetLoader mailetLoader) {
         this.mailetLoader = mailetLoader;
     }
 
-    @Resource(name = "mailetcontext")
+    @Inject
     public void setMailetContext(MailetContext mailetContext) {
         this.mailetContext = mailetContext;
     }

Modified: james/server/trunk/mailetcontainer-camel/src/main/java/org/apache/james/mailetcontainer/lib/AbstractStateMailetProcessor.java
URL: http://svn.apache.org/viewvc/james/server/trunk/mailetcontainer-camel/src/main/java/org/apache/james/mailetcontainer/lib/AbstractStateMailetProcessor.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/mailetcontainer-camel/src/main/java/org/apache/james/mailetcontainer/lib/AbstractStateMailetProcessor.java (original)
+++ james/server/trunk/mailetcontainer-camel/src/main/java/org/apache/james/mailetcontainer/lib/AbstractStateMailetProcessor.java Thu Feb  7 17:54:26 2013
@@ -28,6 +28,8 @@ import java.util.Map;
 import javax.annotation.PostConstruct;
 import javax.annotation.PreDestroy;
 import javax.annotation.Resource;
+import javax.inject.Inject;
+import javax.inject.Qualifier;
 import javax.mail.MessagingException;
 import javax.management.NotCompliantMBeanException;
 
@@ -71,17 +73,16 @@ public abstract class AbstractStateMaile
     private List<MatcherMailetPair> pairs = new ArrayList<MatcherMailetPair>();
     private String state;
 
-    @Resource(name = "matcherloader")
     public void setMatcherLoader(MatcherLoader matcherLoader) {
         this.matcherLoader = matcherLoader;
     }
 
-    @Resource(name = "mailetcontext")
+    @Inject
     public void setMailetContext(MailetContext mailetContext) {
         this.mailetContext = mailetContext;
     }
 
-    @Resource(name = "mailetloader")
+    @Inject
     public void setMailetLoader(MailetLoader mailetLoader) {
         this.mailetLoader = mailetLoader;
     }

Modified: james/server/trunk/mailets/pom.xml
URL: http://svn.apache.org/viewvc/james/server/trunk/mailets/pom.xml?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/mailets/pom.xml (original)
+++ james/server/trunk/mailets/pom.xml Thu Feb  7 17:54:26 2013
@@ -128,6 +128,10 @@
             <groupId>org.apache.james</groupId>
             <artifactId>apache-james-mailbox-api</artifactId>
         </dependency>
+        <dependency>
+          <groupId>javax.inject</groupId>
+          <artifactId>javax.inject</artifactId>
+        </dependency>
         <!-- Test dependencies -->
         <dependency>
             <groupId>junit</groupId>

Modified: james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/AbstractRecipientRewriteTable.java
URL: http://svn.apache.org/viewvc/james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/AbstractRecipientRewriteTable.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/AbstractRecipientRewriteTable.java (original)
+++ james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/AbstractRecipientRewriteTable.java Thu Feb  7 17:54:26 2013
@@ -29,7 +29,7 @@ import java.util.Map;
 import java.util.StringTokenizer;
 import java.util.regex.PatternSyntaxException;
 
-import javax.annotation.Resource;
+import javax.inject.Inject;
 import javax.mail.MessagingException;
 import javax.mail.internet.ParseException;
 
@@ -55,12 +55,12 @@ public abstract class AbstractRecipientR
     private DNSService dns;
     private DomainList domainList;
 
-    @Resource(name = "dnsservice")
+    @Inject
     public void setDNSService(DNSService dns) {
         this.dns = dns;
     }
 
-    @Resource(name = "domainlist")
+    @Inject
     public void setDomainList(DomainList domainList) {
         this.domainList = domainList;
     }

Modified: james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/AbstractRecipientRewriteTableMailet.java
URL: http://svn.apache.org/viewvc/james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/AbstractRecipientRewriteTableMailet.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/AbstractRecipientRewriteTableMailet.java (original)
+++ james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/AbstractRecipientRewriteTableMailet.java Thu Feb  7 17:54:26 2013
@@ -25,7 +25,7 @@ import java.util.Iterator;
 import java.util.LinkedList;
 import java.util.Vector;
 
-import javax.annotation.Resource;
+import javax.inject.Inject;
 import javax.mail.MessagingException;
 import javax.mail.internet.MimeMessage;
 
@@ -44,7 +44,7 @@ public abstract class AbstractRecipientR
 
     private DomainList domainList;
 
-    @Resource(name = "domainlist")
+    @Inject
     public void setDomainList(DomainList domainList) {
         this.domainList = domainList;
     }

Modified: james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/AbstractRedirect.java
URL: http://svn.apache.org/viewvc/james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/AbstractRedirect.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/AbstractRedirect.java (original)
+++ james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/AbstractRedirect.java Thu Feb  7 17:54:26 2013
@@ -22,34 +22,32 @@ package org.apache.james.transport.maile
 import java.io.PrintWriter;
 import java.io.StringWriter;
 import java.net.UnknownHostException;
-
+import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Date;
 import java.util.Enumeration;
 import java.util.HashSet;
 import java.util.Iterator;
 import java.util.Locale;
-import java.util.ArrayList;
 
-import javax.annotation.Resource;
+import javax.inject.Inject;
 import javax.mail.Message;
 import javax.mail.MessagingException;
-import javax.mail.internet.ParseException;
 import javax.mail.Session;
 import javax.mail.internet.InternetAddress;
 import javax.mail.internet.MimeBodyPart;
 import javax.mail.internet.MimeMessage;
 import javax.mail.internet.MimeMultipart;
+import javax.mail.internet.ParseException;
 
-import org.apache.mailet.base.RFC2822Headers;
-import org.apache.mailet.base.RFC822DateFormat;
 import org.apache.james.core.MailImpl;
 import org.apache.james.core.MimeMessageUtil;
 import org.apache.james.dnsservice.api.DNSService;
-
-import org.apache.mailet.base.GenericMailet;
 import org.apache.mailet.Mail;
 import org.apache.mailet.MailAddress;
+import org.apache.mailet.base.GenericMailet;
+import org.apache.mailet.base.RFC2822Headers;
+import org.apache.mailet.base.RFC822DateFormat;
 
 /**
  * <p>
@@ -250,7 +248,7 @@ public abstract class AbstractRedirect e
 
     protected DNSService dns;
 
-    @Resource(name = "dnsservice")
+    @Inject
     public void setDNSService(DNSService dns) {
         this.dns = dns;
     }

Modified: james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/BayesianAnalysis.java
URL: http://svn.apache.org/viewvc/james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/BayesianAnalysis.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/BayesianAnalysis.java (original)
+++ james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/BayesianAnalysis.java Thu Feb  7 17:54:26 2013
@@ -27,7 +27,7 @@ import java.text.DecimalFormat;
 import java.util.Collection;
 import java.util.Iterator;
 
-import javax.annotation.Resource;
+import javax.inject.Inject;
 import javax.mail.MessagingException;
 import javax.mail.internet.MimeMessage;
 import javax.sql.DataSource;
@@ -204,12 +204,12 @@ public class BayesianAnalysis extends Ge
         return this.lastCorpusLoadTime;
     }
 
-    @Resource(name = "datasource")
+    @Inject
     public void setDataSource(DataSource datasource) {
         this.datasource = datasource;
     }
 
-    @Resource(name = "filesystem")
+    @Inject
     public void setFileSystem(FileSystem fs) {
         this.fs = fs;
     }

Modified: james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/BayesianAnalysisFeeder.java
URL: http://svn.apache.org/viewvc/james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/BayesianAnalysisFeeder.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/BayesianAnalysisFeeder.java (original)
+++ james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/BayesianAnalysisFeeder.java Thu Feb  7 17:54:26 2013
@@ -25,7 +25,7 @@ import java.io.StringReader;
 import java.sql.Connection;
 import java.util.Enumeration;
 
-import javax.annotation.Resource;
+import javax.inject.Inject;
 import javax.mail.Header;
 import javax.mail.MessagingException;
 import javax.mail.internet.MimeMessage;
@@ -177,7 +177,7 @@ public class BayesianAnalysisFeeder exte
         return this.maxSize;
     }
 
-    @Resource(name = "datasource")
+    @Inject
     public void setDataSource(DataSource datasource) {
         this.datasource = datasource;
     }
@@ -193,7 +193,7 @@ public class BayesianAnalysisFeeder exte
         this.maxSize = maxSize;
     }
 
-    @Resource(name = "filesystem")
+    @Inject
     public void setFileSystem(FileSystem fs) {
         this.fs = fs;
     }

Modified: james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/FromRepository.java
URL: http://svn.apache.org/viewvc/james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/FromRepository.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/FromRepository.java (original)
+++ james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/FromRepository.java Thu Feb  7 17:54:26 2013
@@ -19,16 +19,16 @@
 
 package org.apache.james.transport.mailets;
 
+import java.util.Iterator;
+
+import javax.inject.Inject;
+import javax.mail.MessagingException;
+
 import org.apache.james.lifecycle.api.LifecycleUtil;
 import org.apache.james.mailrepository.api.MailRepository;
 import org.apache.james.mailrepository.api.MailRepositoryStore;
-import org.apache.mailet.base.GenericMailet;
 import org.apache.mailet.Mail;
-
-import javax.annotation.Resource;
-import javax.mail.MessagingException;
-
-import java.util.Iterator;
+import org.apache.mailet.base.GenericMailet;
 
 /**
  * Re-spools Mail found in the specified Repository.
@@ -57,7 +57,7 @@ public class FromRepository extends Gene
 
     private MailRepositoryStore mailStore;
 
-    @Resource(name = "mailrepositorystore")
+    @Inject
     public void setStore(MailRepositoryStore mailStore) {
         this.mailStore = mailStore;
     }

Modified: james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/JDBCAlias.java
URL: http://svn.apache.org/viewvc/james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/JDBCAlias.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/JDBCAlias.java (original)
+++ james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/JDBCAlias.java Thu Feb  7 17:54:26 2013
@@ -19,17 +19,6 @@
 
 package org.apache.james.transport.mailets;
 
-import org.apache.james.util.sql.JDBCUtil;
-import org.apache.mailet.base.GenericMailet;
-import org.apache.mailet.Mail;
-import org.apache.mailet.MailAddress;
-import org.apache.mailet.MailetException;
-
-import javax.annotation.Resource;
-import javax.mail.MessagingException;
-import javax.mail.internet.ParseException;
-import javax.sql.DataSource;
-
 import java.sql.Connection;
 import java.sql.DatabaseMetaData;
 import java.sql.PreparedStatement;
@@ -39,6 +28,17 @@ import java.util.Collection;
 import java.util.Iterator;
 import java.util.Vector;
 
+import javax.inject.Inject;
+import javax.mail.MessagingException;
+import javax.mail.internet.ParseException;
+import javax.sql.DataSource;
+
+import org.apache.james.util.sql.JDBCUtil;
+import org.apache.mailet.Mail;
+import org.apache.mailet.MailAddress;
+import org.apache.mailet.MailetException;
+import org.apache.mailet.base.GenericMailet;
+
 /**
  * Rewrites recipient addresses based on a database table. The connection is
  * configured by passing the URL to a conn definition. You need to set the table
@@ -58,7 +58,7 @@ public class JDBCAlias extends GenericMa
     protected DataSource datasource;
     protected String query = null;
 
-    @Resource(name = "datasource")
+    @Inject
     public void setDataSource(DataSource datasource) {
         this.datasource = datasource;
     }

Modified: james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/JDBCRecipientRewriteTable.java
URL: http://svn.apache.org/viewvc/james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/JDBCRecipientRewriteTable.java?rev=1443630&r1=1443629&r2=1443630&view=diff
==============================================================================
--- james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/JDBCRecipientRewriteTable.java (original)
+++ james/server/trunk/mailets/src/main/java/org/apache/james/transport/mailets/JDBCRecipientRewriteTable.java Thu Feb  7 17:54:26 2013
@@ -19,15 +19,6 @@
 
 package org.apache.james.transport.mailets;
 
-import org.apache.james.rrt.lib.RecipientRewriteTableUtil;
-import org.apache.james.util.sql.JDBCUtil;
-import org.apache.mailet.MailAddress;
-import org.apache.mailet.MailetException;
-
-import javax.annotation.Resource;
-import javax.mail.MessagingException;
-import javax.sql.DataSource;
-
 import java.sql.Connection;
 import java.sql.DatabaseMetaData;
 import java.sql.PreparedStatement;
@@ -37,6 +28,15 @@ import java.util.Collection;
 import java.util.Iterator;
 import java.util.Map;
 
+import javax.inject.Inject;
+import javax.mail.MessagingException;
+import javax.sql.DataSource;
+
+import org.apache.james.rrt.lib.RecipientRewriteTableUtil;
+import org.apache.james.util.sql.JDBCUtil;
+import org.apache.mailet.MailAddress;
+import org.apache.mailet.MailetException;
+
 /**
  * <p>
  * Implements a Virtual User Table for JAMES. Derived from the JDBCAlias mailet,
@@ -126,7 +126,7 @@ public class JDBCRecipientRewriteTable e
         }
     };
 
-    @Resource(name = "datasource")
+    @Inject
     public void setDataSourceSelector(DataSource datasource) {
         this.datasource = datasource;
     }



---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org