Author: bago Date: Sat Sep 16 07:43:53 2006 New Revision: 446879 URL: http://svn.apache.org/viewvc?view=rev&rev=446879 Log: The previously deprecated JamesMBean is now implemented by LocalUsersRepository service Now James.addUser is there only to satisfy the deprecated MailServer.addUser method and does no more has references to DefaultJamesUser (but simply delegates to LocalUsersRepository.addUser) DefaultJamesUsers initializes itself automatically in the constructor (don't know why is was Initializable)
Modified: james/server/trunk/src/java/org/apache/james/James.java james/server/trunk/src/java/org/apache/james/JamesMBean.java james/server/trunk/src/java/org/apache/james/core/LocalUsersRepository.java james/server/trunk/src/java/org/apache/james/userrepository/DefaultJamesUser.java Modified: james/server/trunk/src/java/org/apache/james/James.java URL: http://svn.apache.org/viewvc/james/server/trunk/src/java/org/apache/james/James.java?view=diff&rev=446879&r1=446878&r2=446879 ============================================================================== --- james/server/trunk/src/java/org/apache/james/James.java (original) +++ james/server/trunk/src/java/org/apache/james/James.java Sat Sep 16 07:43:53 2006 @@ -50,7 +50,6 @@ import org.apache.james.services.UsersRepository; import org.apache.james.services.UsersStore; import org.apache.james.transport.mailets.LocalDelivery; -import org.apache.james.userrepository.DefaultJamesUser; import org.apache.mailet.Mail; import org.apache.mailet.MailAddress; import org.apache.mailet.Mailet; @@ -92,7 +91,7 @@ */ public class James extends AbstractLogEnabled - implements Contextualizable, Serviceable, Configurable, JamesMBean, Initializable, MailServer, MailetContext { + implements Contextualizable, Serviceable, Configurable, Initializable, MailServer, MailetContext { /** * The software name and version @@ -126,11 +125,6 @@ private Store store; /** - * The store containing the local user repository. - */ - private UsersStore usersStore; - - /** * The spool used for processing mail handled by this server. */ private SpoolRepository spool; @@ -286,8 +280,10 @@ } try { + // lookup the usersStore. + // This is not used by James itself, but we check we received it here + // because mailets will try to lookup this later. UsersStore usersStore = (UsersStore) compMgr.lookup( UsersStore.ROLE ); - setUsersStore(usersStore); if (getLogger().isDebugEnabled()) { getLogger().debug("Using UsersStore: " + usersStore.toString()); } @@ -418,10 +414,6 @@ this.spool = spool; } - public void setUsersStore(UsersStore usersStore) { - this.usersStore = usersStore; - } - public void setLocalusers(UsersRepository localusers) { this.localusers = localusers; } @@ -871,12 +863,7 @@ * use the addUser of the usersRepository. */ public boolean addUser(String userName, String password) { - boolean success; - DefaultJamesUser user = new DefaultJamesUser(userName, "SHA"); - user.setPassword(password); - user.initialize(); - success = localusers.addUser(user); - return success; + return localusers.addUser(userName, password); } /** Modified: james/server/trunk/src/java/org/apache/james/JamesMBean.java URL: http://svn.apache.org/viewvc/james/server/trunk/src/java/org/apache/james/JamesMBean.java?view=diff&rev=446879&r1=446878&r2=446879 ============================================================================== --- james/server/trunk/src/java/org/apache/james/JamesMBean.java (original) +++ james/server/trunk/src/java/org/apache/james/JamesMBean.java Sat Sep 16 07:43:53 2006 @@ -25,6 +25,9 @@ * An interface to expose James management functionality through JMX. At * the time of this writing, this interface is just an example. * + * 16/09/2006: This was previously implemented by James object. Now it is temporarily + * implemented by the LocalUsersRepository service. + * * @deprecated this MBean will be replaced by UserManagementMBean * @phoenix:mx-topic name="MainJAMESServerManagement" */ Modified: james/server/trunk/src/java/org/apache/james/core/LocalUsersRepository.java URL: http://svn.apache.org/viewvc/james/server/trunk/src/java/org/apache/james/core/LocalUsersRepository.java?view=diff&rev=446879&r1=446878&r2=446879 ============================================================================== --- james/server/trunk/src/java/org/apache/james/core/LocalUsersRepository.java (original) +++ james/server/trunk/src/java/org/apache/james/core/LocalUsersRepository.java Sat Sep 16 07:43:53 2006 @@ -17,21 +17,24 @@ * under the License. * ****************************************************************/ - - package org.apache.james.core; import org.apache.avalon.framework.activity.Initializable; import org.apache.avalon.framework.service.ServiceException; import org.apache.avalon.framework.service.ServiceManager; import org.apache.avalon.framework.service.Serviceable; +import org.apache.james.JamesMBean; import org.apache.james.services.User; import org.apache.james.services.UsersRepository; import org.apache.james.services.UsersStore; import java.util.Iterator; -public class LocalUsersRepository implements UsersRepository, Serviceable, Initializable { +/** + * Provide access to the default "LocalUsers" UsersRepository. + * Temporarily implements JamesMBean (formerly implemented by James) to keep backward compatibility. + */ +public class LocalUsersRepository implements UsersRepository, Serviceable, Initializable, JamesMBean { private UsersStore usersStore; private UsersRepository users; Modified: james/server/trunk/src/java/org/apache/james/userrepository/DefaultJamesUser.java URL: http://svn.apache.org/viewvc/james/server/trunk/src/java/org/apache/james/userrepository/DefaultJamesUser.java?view=diff&rev=446879&r1=446878&r2=446879 ============================================================================== --- james/server/trunk/src/java/org/apache/james/userrepository/DefaultJamesUser.java (original) +++ james/server/trunk/src/java/org/apache/james/userrepository/DefaultJamesUser.java Sat Sep 16 07:43:53 2006 @@ -21,7 +21,6 @@ package org.apache.james.userrepository; -import org.apache.avalon.framework.activity.Initializable; import org.apache.james.services.JamesUser; import org.apache.mailet.MailAddress; @@ -34,7 +33,7 @@ public class DefaultJamesUser extends DefaultUser - implements JamesUser, Initializable { + implements JamesUser { /** * Whether forwarding is enabled for this user. @@ -59,15 +58,17 @@ public DefaultJamesUser(String name, String alg) { super(name, alg); + initialize(); } public DefaultJamesUser(String name, String passwordHash, String hashAlg) { super(name, passwordHash, hashAlg); + initialize(); } /** - * @see org.apache.avalon.framework.activity.Initializable#initialize() + * Initializes default values for local fields. */ public void initialize() { forwarding = false; --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]