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 no...@apache.org on 2009/10/01 19:52:00 UTC
svn commit: r820730 - in /james/server/trunk/pop3server-function/src:
main/java/org/apache/james/pop3server/
main/java/org/apache/james/pop3server/core/
test/java/org/apache/james/pop3server/
Author: norman
Date: Thu Oct 1 17:52:00 2009
New Revision: 820730
URL: http://svn.apache.org/viewvc?rev=820730&view=rev
Log:
Inject MailServer and UsersRepository
Modified:
james/server/trunk/pop3server-function/src/main/java/org/apache/james/pop3server/POP3Handler.java
james/server/trunk/pop3server-function/src/main/java/org/apache/james/pop3server/POP3HandlerConfigurationData.java
james/server/trunk/pop3server-function/src/main/java/org/apache/james/pop3server/POP3Server.java
james/server/trunk/pop3server-function/src/main/java/org/apache/james/pop3server/core/PassCmdHandler.java
james/server/trunk/pop3server-function/src/test/java/org/apache/james/pop3server/POP3ServerTest.java
james/server/trunk/pop3server-function/src/test/java/org/apache/james/pop3server/POP3TestConfiguration.java
Modified: james/server/trunk/pop3server-function/src/main/java/org/apache/james/pop3server/POP3Handler.java
URL: http://svn.apache.org/viewvc/james/server/trunk/pop3server-function/src/main/java/org/apache/james/pop3server/POP3Handler.java?rev=820730&r1=820729&r2=820730&view=diff
==============================================================================
--- james/server/trunk/pop3server-function/src/main/java/org/apache/james/pop3server/POP3Handler.java (original)
+++ james/server/trunk/pop3server-function/src/main/java/org/apache/james/pop3server/POP3Handler.java Thu Oct 1 17:52:00 2009
@@ -250,7 +250,7 @@
* @return the trimmed input line
* @throws IOException if an exception is generated reading in the input characters
*/
- public final String readCommandLine() throws IOException {
+ private String readCommandLine() throws IOException {
for (;;) try {
String commandLine = context.getInputReader().readLine();
if (commandLine != null) {
Modified: james/server/trunk/pop3server-function/src/main/java/org/apache/james/pop3server/POP3HandlerConfigurationData.java
URL: http://svn.apache.org/viewvc/james/server/trunk/pop3server-function/src/main/java/org/apache/james/pop3server/POP3HandlerConfigurationData.java?rev=820730&r1=820729&r2=820730&view=diff
==============================================================================
--- james/server/trunk/pop3server-function/src/main/java/org/apache/james/pop3server/POP3HandlerConfigurationData.java (original)
+++ james/server/trunk/pop3server-function/src/main/java/org/apache/james/pop3server/POP3HandlerConfigurationData.java Thu Oct 1 17:52:00 2009
@@ -21,9 +21,6 @@
package org.apache.james.pop3server;
-import org.apache.james.api.user.UsersRepository;
-import org.apache.james.services.MailServer;
-
/**
* Provides a number of server-wide constant values to the
* POP3Handlers
@@ -44,20 +41,6 @@
* @return the reset length
*/
int getResetLength();
-
- /**
- * Returns the MailServer interface for this service.
- *
- * @return the MailServer interface for this service
- */
- MailServer getMailServer();
-
- /**
- * Returns the UsersRepository for this service.
- *
- * @return the local users repository
- */
- UsersRepository getUsersRepository();
boolean isStartTLSSupported();
Modified: james/server/trunk/pop3server-function/src/main/java/org/apache/james/pop3server/POP3Server.java
URL: http://svn.apache.org/viewvc/james/server/trunk/pop3server-function/src/main/java/org/apache/james/pop3server/POP3Server.java?rev=820730&r1=820729&r2=820730&view=diff
==============================================================================
--- james/server/trunk/pop3server-function/src/main/java/org/apache/james/pop3server/POP3Server.java (original)
+++ james/server/trunk/pop3server-function/src/main/java/org/apache/james/pop3server/POP3Server.java Thu Oct 1 17:52:00 2009
@@ -194,19 +194,6 @@
return POP3Server.this.lengthReset;
}
- /**
- * @see org.apache.james.pop3server.POP3HandlerConfigurationData#getMailServer()
- */
- public MailServer getMailServer() {
- return POP3Server.this.mailServer;
- }
-
- /**
- * @see org.apache.james.pop3server.POP3HandlerConfigurationData#getUsersRepository()
- */
- public UsersRepository getUsersRepository() {
- return POP3Server.this.users;
- }
/**
* @see org.apache.james.pop3server.POP3HandlerConfigurationData#isStartTLSSupported()
Modified: james/server/trunk/pop3server-function/src/main/java/org/apache/james/pop3server/core/PassCmdHandler.java
URL: http://svn.apache.org/viewvc/james/server/trunk/pop3server-function/src/main/java/org/apache/james/pop3server/core/PassCmdHandler.java?rev=820730&r1=820729&r2=820730&view=diff
==============================================================================
--- james/server/trunk/pop3server-function/src/main/java/org/apache/james/pop3server/core/PassCmdHandler.java (original)
+++ james/server/trunk/pop3server-function/src/main/java/org/apache/james/pop3server/core/PassCmdHandler.java Thu Oct 1 17:52:00 2009
@@ -25,11 +25,15 @@
import java.util.Collection;
import java.util.List;
+import javax.annotation.Resource;
+
+import org.apache.james.api.user.UsersRepository;
import org.apache.james.pop3server.CommandHandler;
import org.apache.james.pop3server.POP3Handler;
import org.apache.james.pop3server.POP3Response;
import org.apache.james.pop3server.POP3Session;
import org.apache.james.services.MailRepository;
+import org.apache.james.services.MailServer;
import org.apache.james.util.POP3BeforeSMTPHelper;
/**
@@ -38,7 +42,29 @@
public class PassCmdHandler implements CommandHandler {
private final static String COMMAND_NAME ="PASS";
+ private UsersRepository users;
+ private MailServer mailServer;
+
+ /**
+ * Sets the users repository.
+ * @param users the users to set
+ */
+ @Resource(name="localusersrepository")
+ public final void setUsers(UsersRepository users) {
+ this.users = users;
+ }
+
+ /**
+ * Sets the mail server.
+ * @param mailServer the mailServer to set
+ */
+ @Resource(name="James")
+ public final void setMailServer(MailServer mailServer) {
+ this.mailServer = mailServer;
+ }
+
+
/**
* Handler method called upon receipt of a PASS command.
* Reads in and validates the password.
@@ -49,9 +75,9 @@
POP3Response response = null;
if (session.getHandlerState() == POP3Handler.AUTHENTICATION_USERSET && parameters != null) {
String passArg = parameters;
- if (session.getConfigurationData().getUsersRepository().test(session.getUser(), passArg)) {
+ if (users.test(session.getUser(), passArg)) {
try {
- MailRepository inbox = session.getConfigurationData().getMailServer().getUserInbox(session.getUser());
+ MailRepository inbox = mailServer.getUserInbox(session.getUser());
if (inbox == null) {
throw new IllegalStateException("MailServer returned a null inbox for "+session.getUser());
}
Modified: james/server/trunk/pop3server-function/src/test/java/org/apache/james/pop3server/POP3ServerTest.java
URL: http://svn.apache.org/viewvc/james/server/trunk/pop3server-function/src/test/java/org/apache/james/pop3server/POP3ServerTest.java?rev=820730&r1=820729&r2=820730&view=diff
==============================================================================
--- james/server/trunk/pop3server-function/src/test/java/org/apache/james/pop3server/POP3ServerTest.java (original)
+++ james/server/trunk/pop3server-function/src/test/java/org/apache/james/pop3server/POP3ServerTest.java Thu Oct 1 17:52:00 2009
@@ -105,6 +105,9 @@
ContainerUtil.service(connectionManager, serviceManager);
serviceManager.put(JamesConnectionManager.ROLE, connectionManager);
m_mailServer = new MockMailServer(m_usersRepository);
+ // Phoenix loader does not understand aliases
+ serviceManager.put("James", m_mailServer);
+ serviceManager.put("localusersrepository", m_usersRepository);
serviceManager
.put(MailServer.ROLE, m_mailServer);
serviceManager.put(UsersRepository.ROLE,
Modified: james/server/trunk/pop3server-function/src/test/java/org/apache/james/pop3server/POP3TestConfiguration.java
URL: http://svn.apache.org/viewvc/james/server/trunk/pop3server-function/src/test/java/org/apache/james/pop3server/POP3TestConfiguration.java?rev=820730&r1=820729&r2=820730&view=diff
==============================================================================
--- james/server/trunk/pop3server-function/src/test/java/org/apache/james/pop3server/POP3TestConfiguration.java (original)
+++ james/server/trunk/pop3server-function/src/test/java/org/apache/james/pop3server/POP3TestConfiguration.java Thu Oct 1 17:52:00 2009
@@ -20,6 +20,7 @@
package org.apache.james.pop3server;
import org.apache.avalon.framework.configuration.DefaultConfiguration;
+import org.apache.james.pop3server.core.CoreCmdHandlerLoader;
import org.apache.james.test.util.Util;
public class POP3TestConfiguration extends DefaultConfiguration {
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org