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 ma...@apache.org on 2010/02/09 12:00:49 UTC

svn commit: r908000 [2/2] - in /james/hupa/trunk: client/ client/src/main/java/org/apache/hupa/client/mvp/ client/war/ server/src/main/java/org/apache/hupa/server/ server/src/main/java/org/apache/hupa/server/guice/ server/src/main/java/org/apache/hupa/...

Modified: james/hupa/trunk/server/src/test/java/org/apache/hupa/server/handler/ReplyMessageHandlerTest.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/server/src/test/java/org/apache/hupa/server/handler/ReplyMessageHandlerTest.java?rev=908000&r1=907999&r2=908000&view=diff
==============================================================================
--- james/hupa/trunk/server/src/test/java/org/apache/hupa/server/handler/ReplyMessageHandlerTest.java (original)
+++ james/hupa/trunk/server/src/test/java/org/apache/hupa/server/handler/ReplyMessageHandlerTest.java Tue Feb  9 11:00:47 2010
@@ -20,15 +20,13 @@
 package org.apache.hupa.server.handler;
 
 
-import javax.mail.Message;
-import javax.servlet.http.HttpSession;
+import com.sun.mail.imap.IMAPStore;
 
 import org.apache.hupa.server.FileItemRegistry;
 import org.apache.hupa.server.HupaTestCase;
 import org.apache.hupa.server.IMAPStoreCache;
 import org.apache.hupa.server.guice.DemoModeConstants;
 import org.apache.hupa.server.mock.MockIMAPFolder;
-import org.apache.hupa.server.mock.MockIMAPStoreCache;
 import org.apache.hupa.server.utils.SessionUtils;
 import org.apache.hupa.server.utils.TestUtils;
 import org.apache.hupa.shared.data.IMAPFolder;
@@ -36,7 +34,8 @@
 import org.apache.hupa.shared.data.User;
 import org.apache.hupa.shared.rpc.ReplyMessage;
 
-import com.sun.mail.imap.IMAPStore;
+import javax.mail.Message;
+import javax.servlet.http.HttpSession;
 
 public class ReplyMessageHandlerTest extends HupaTestCase {
 
@@ -47,12 +46,10 @@
         httpSession.setAttribute("user", demouser);
 
         IMAPStoreCache storeCache = injector.getInstance(IMAPStoreCache.class);
-        IMAPStore store = injector.getInstance(IMAPStore.class);
-        ((MockIMAPStoreCache)storeCache).addValidUser(demouser, store);
+        IMAPStore store = storeCache.get(demouser);
 
         FileItemRegistry registry = SessionUtils.getSessionRegistry(logger, httpSession);
         
-        
         MockIMAPFolder sentbox = (MockIMAPFolder) store.getFolder(DemoModeConstants.DEMO_MODE_SENT_FOLDER);
         assertTrue(sentbox.getMessages().length == 0);
 

Modified: james/hupa/trunk/server/src/test/java/org/apache/hupa/server/integration/StoreBugTest.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/server/src/test/java/org/apache/hupa/server/integration/StoreBugTest.java?rev=908000&r1=907999&r2=908000&view=diff
==============================================================================
--- james/hupa/trunk/server/src/test/java/org/apache/hupa/server/integration/StoreBugTest.java (original)
+++ james/hupa/trunk/server/src/test/java/org/apache/hupa/server/integration/StoreBugTest.java Tue Feb  9 11:00:47 2010
@@ -19,13 +19,8 @@
 
 package org.apache.hupa.server.integration;
 
-import java.io.IOException;
-import java.io.OutputStream;
-import java.util.Properties;
-
-import javax.mail.Message;
-import javax.mail.MessagingException;
-import javax.mail.Session;
+import com.sun.mail.imap.IMAPFolder;
+import com.sun.mail.imap.IMAPStore;
 
 import junit.framework.Assert;
 
@@ -34,10 +29,16 @@
 import org.apache.hupa.server.mock.MockIMAPStore;
 import org.apache.hupa.server.mock.MockLog;
 import org.apache.hupa.shared.data.User;
+import org.junit.Ignore;
 import org.junit.Test;
 
-import com.sun.mail.imap.IMAPFolder;
-import com.sun.mail.imap.IMAPStore;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.util.Properties;
+
+import javax.mail.Message;
+import javax.mail.MessagingException;
+import javax.mail.Session;
 
 public class StoreBugTest {
     
@@ -51,7 +52,7 @@
     static int threadTimeout = 15000;
     
     Session session = Session.getDefaultInstance(new Properties(), null);
-    static InMemoryIMAPStoreCache cache = new InMemoryIMAPStoreCache(new MockLog(), imapServer, imapPort, isSSl, 2, 60000, new SessionProvider());
+    static InMemoryIMAPStoreCache cache = new InMemoryIMAPStoreCache(new MockLog(), imapServer, imapPort, isSSl, 2, 60000, false, new SessionProvider());
     static User user = new User() {
        private static final long serialVersionUID = 1L;
        {setName(imapUser); setPassword(imapPass);}
@@ -64,7 +65,7 @@
         Assert.assertFalse(getThreadsSpentTime(threads).contains("-1"));
     }
 
-    @Test 
+    @Test @Ignore
     public void testIMAPStoreIdleHungs() throws Exception {
         IMAPStore store = null;
         try {
@@ -102,7 +103,7 @@
         return threads;
     }
 
-    @Test  
+    @Test @Ignore
     public void testInMemoryImapStoreCacheDoesntHung() throws Exception {
         try {
             cache.get(user);

Modified: james/hupa/trunk/server/src/test/java/org/apache/hupa/server/mock/MockIMAPStoreCache.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/server/src/test/java/org/apache/hupa/server/mock/MockIMAPStoreCache.java?rev=908000&r1=907999&r2=908000&view=diff
==============================================================================
--- james/hupa/trunk/server/src/test/java/org/apache/hupa/server/mock/MockIMAPStoreCache.java (original)
+++ james/hupa/trunk/server/src/test/java/org/apache/hupa/server/mock/MockIMAPStoreCache.java Tue Feb  9 11:00:47 2010
@@ -29,19 +29,28 @@
 
 import java.util.HashMap;
 import java.util.Map;
+import java.util.Properties;
 
 import javax.mail.MessagingException;
 import javax.mail.NoSuchProviderException;
 import javax.mail.Session;
 
 public class MockIMAPStoreCache implements IMAPStoreCache {
-    private Provider<Session> provider;
+  
+    private Provider<Session> provider = new Provider<Session>() {
+        public Session get() {
+            Session session = Session.getDefaultInstance(new Properties());
+            session.addProvider(MockIMAPStore.getProvider());
+            return session;
+        }
+    };
+    
     private Map<String, String> users = new HashMap<String, String>();
     private Map<String, IMAPStore> stores = new HashMap<String, IMAPStore>();
 
     @Inject
-    public MockIMAPStoreCache(Provider<Session> provider) {
-        this.provider = provider; 
+    public MockIMAPStoreCache(User user) {
+        addValidUser(user);
     }
 
     public void addValidUser(User user, IMAPStore store) {
@@ -61,7 +70,8 @@
         try {
             addValidUser(username, password, (IMAPStore)provider.get().getStore("mockimap"));
         } catch (NoSuchProviderException e) {
-            throw new RuntimeException("Invalid store");
+            e.printStackTrace();
+            throw new RuntimeException("Invalid store", e);
         }
     }
 

Added: james/hupa/trunk/server/src/test/java/org/apache/hupa/server/preferences/InImapUserPreferencesStorageTest.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/server/src/test/java/org/apache/hupa/server/preferences/InImapUserPreferencesStorageTest.java?rev=908000&view=auto
==============================================================================
--- james/hupa/trunk/server/src/test/java/org/apache/hupa/server/preferences/InImapUserPreferencesStorageTest.java (added)
+++ james/hupa/trunk/server/src/test/java/org/apache/hupa/server/preferences/InImapUserPreferencesStorageTest.java Tue Feb  9 11:00:47 2010
@@ -0,0 +1,169 @@
+package org.apache.hupa.server.preferences;
+
+import com.google.inject.Module;
+
+import com.sun.mail.imap.IMAPStore;
+
+import org.apache.hupa.server.HupaGuiceTestCase;
+import org.apache.hupa.server.guice.GuiceTestModule;
+import org.apache.hupa.server.utils.SessionUtils;
+import org.apache.hupa.server.utils.TestUtils;
+import org.apache.hupa.shared.data.IMAPFolder;
+import org.apache.hupa.shared.data.SMTPMessage;
+import org.apache.hupa.shared.rpc.FetchMessages;
+import org.apache.hupa.shared.rpc.FetchMessagesResult;
+import org.apache.hupa.shared.rpc.SendMessage;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+
+import javax.mail.Flags;
+import javax.mail.Folder;
+
+public class InImapUserPreferencesStorageTest extends HupaGuiceTestCase {
+
+    /**
+     * These tests should work with Courier, Gmail and any other real IMAP implementation.
+     * So, if you wanted to run these tests against your IMAP server do this:
+     *   - Set the correct properties.
+     *   - Be sure the user and password are set correctly
+     *   - Comment the delay
+     */
+    static class MyModule extends GuiceTestModule {
+        public MyModule() {
+            // properties = courierProperties;
+            // properties = gmailProperties;
+            // logClass = LogProvider.class;
+            userPreferencesClass = InImapUserPreferencesStorage.class;
+            // Change the default delay to run test faster
+            InImapUserPreferencesStorage.IMAP_SAVE_DELAY = 400;
+        }
+    }
+
+    @Override
+    protected Module getModule() {
+        return new MyModule();
+    }
+    
+    /**
+     * Delete contacts from session and all messages in user's dratfs folder
+     */
+    public void setUp() throws Exception {
+        httpSession.removeAttribute(InImapUserPreferencesStorage.CONTACTS_ATTR);
+        Folder f = storeCache.get(testUser).getFolder(testUser.getSettings().getDraftsFolderName());
+        if (f.exists() && f.getMessageCount() > 0) {
+            f.open(Folder.READ_WRITE);
+            f.setFlags(f.getMessages(), new Flags(Flags.Flag.DELETED), true);
+            f.close(true);
+        }
+    }
+    
+    public void atestAnySerializableObjectCanBeSavedInIMAP() throws Exception {
+        IMAPStore store = storeCache.get(testUser);
+        String folderName = testUser.getSettings().getInboxFolderName() + store.getDefaultFolder().getSeparator() + "aFolder";
+        String magicSubject = "magicSubject";
+        Object objectOne = new String("a serializable object");
+        Object objectTwo = new String("another serializable object");
+
+        // Remove the folder if exist
+        Folder f = store.getFolder(folderName);
+        if (f.exists()) {
+            f.delete(true);
+        }
+
+        // Check saving an object when the folder doesnt exist
+        Object o = InImapUserPreferencesStorage.readUserPreferencesFromIMAP(logger, testUser, store, folderName, magicSubject);
+        assertNull(o);
+
+        InImapUserPreferencesStorage.saveUserPreferencesInIMAP(logger, testUser, session, store, folderName, magicSubject, objectOne);
+
+        Folder folder = store.getFolder(folderName);
+        assertNotNull(folder);
+        assertEquals(1, folder.getMessageCount());
+
+        o = InImapUserPreferencesStorage.readUserPreferencesFromIMAP(logger, testUser, store, folderName, magicSubject);
+        assertNotNull(o);
+        assertEquals(objectOne, o);
+
+        // Check saving an object when the folder already exist
+        InImapUserPreferencesStorage.saveUserPreferencesInIMAP(logger, testUser, session, store, folderName, magicSubject, objectTwo);
+        folder = store.getFolder(folderName);
+        assertEquals(1, folder.getMessageCount());
+        o = InImapUserPreferencesStorage.readUserPreferencesFromIMAP(logger, testUser, store, folderName, magicSubject);
+        assertEquals(objectTwo, o);
+        
+        // Remove the folder
+        store.getFolder(folderName).delete(true);
+    }
+    
+    public void testFetchMessagesFillsTheContactsListAndItIsSavedAsynchronously() throws Exception {
+        IMAPStore store = storeCache.get(testUser);
+        String folderName = testUser.getSettings().getDraftsFolderName();
+        
+        // Setup deletes all Drafts messages and contacts in session
+        assertEquals(0, userPreferences.getContacts().length);
+        Folder folder = store.getFolder(folderName);
+        if (folder.exists())
+            assertTrue(folder.getMessageCount() == 0);
+        
+        // Fetch inbox messages
+        IMAPFolder cFolder = new IMAPFolder(testUser.getSettings().getInboxFolderName());
+        FetchMessagesResult result = fetchMessagesHandler.execute(new FetchMessages(cFolder, 0, 10, null), null);
+        
+        // Could be possible that there insn't any message in inbox
+        if (result.getRealCount() > 0) {
+            int contactsCount = userPreferences.getContacts().length;
+            assertTrue(contactsCount > 0);
+
+            // The imap is saved asynchronously after a delay, so the folder exists after a while
+            folder = store.getFolder(folderName);
+            if (folder.exists())
+                assertTrue(folder.getMessageCount() == 0);
+            
+            Thread.sleep(InImapUserPreferencesStorage.IMAP_SAVE_DELAY + 500);
+            folder = store.getFolder(folderName);
+            assertNotNull(folder);
+            assertTrue(folder.exists());
+            assertEquals(1, folder.getMessageCount());
+            
+            // When data is deleted from session, contacts came from imap
+            httpSession.removeAttribute(InImapUserPreferencesStorage.USER_ATTR);
+            assertEquals(contactsCount, userPreferences.getContacts().length );
+        }
+    }
+    
+    public void testSendMessagesAddContactsToList() throws Exception {
+        // Setup deletes all Drafts messages and contacts in session
+        assertEquals(0, userPreferences.getContacts().length);
+
+        // Send an email to only one email
+        SMTPMessage smtpmsg = TestUtils.createMockSMTPMessage(SessionUtils.getSessionRegistry(logger, httpSession), 2);
+        smtpmsg.setFrom(testUser.getName());
+        smtpmsg.setTo(new ArrayList<String>(Arrays.asList(testUser.getName())));
+        smtpmsg.setCc(new ArrayList<String>());
+        smtpmsg.setBcc(new ArrayList<String>());
+        SendMessage action = new SendMessage(smtpmsg);
+        abstSendMsgHndl.execute(action, null);
+
+        // The email has to be added to the contact list 
+        assertEquals(1, userPreferences.getContacts().length);
+
+        // The imap is saved asynchronously after a delay, so the folder exists after a while
+        String folderName = testUser.getSettings().getDraftsFolderName();
+        Folder folder = store.getFolder(folderName);
+        folder = store.getFolder(folderName);
+        if (folder.exists())
+            assertTrue(folder.getMessageCount() == 0);
+        
+        Thread.sleep(InImapUserPreferencesStorage.IMAP_SAVE_DELAY + 500);
+        folder = store.getFolder(folderName);
+        assertNotNull(folder);
+        assertTrue(folder.exists());
+        assertEquals(1, folder.getMessageCount());
+        
+        // When data is deleted from session, contacts came from imap
+        httpSession.removeAttribute(InImapUserPreferencesStorage.USER_ATTR);
+        assertEquals(1, userPreferences.getContacts().length);
+    }
+
+}

Copied: james/hupa/trunk/server/src/test/java/org/apache/hupa/server/preferences/InSessionUserPreferencesStorageTest.java (from r907633, james/hupa/trunk/server/src/test/java/org/apache/hupa/server/preferences/UserPreferencesStorageTest.java)
URL: http://svn.apache.org/viewvc/james/hupa/trunk/server/src/test/java/org/apache/hupa/server/preferences/InSessionUserPreferencesStorageTest.java?p2=james/hupa/trunk/server/src/test/java/org/apache/hupa/server/preferences/InSessionUserPreferencesStorageTest.java&p1=james/hupa/trunk/server/src/test/java/org/apache/hupa/server/preferences/UserPreferencesStorageTest.java&r1=907633&r2=908000&rev=908000&view=diff
==============================================================================
--- james/hupa/trunk/server/src/test/java/org/apache/hupa/server/preferences/UserPreferencesStorageTest.java (original)
+++ james/hupa/trunk/server/src/test/java/org/apache/hupa/server/preferences/InSessionUserPreferencesStorageTest.java Tue Feb  9 11:00:47 2010
@@ -1,57 +1,44 @@
 package org.apache.hupa.server.preferences;
 
-import com.sun.mail.imap.IMAPStore;
-
-import org.apache.hupa.server.HupaTestCase;
-import org.apache.hupa.server.IMAPStoreCache;
-import org.apache.hupa.server.guice.DemoModeConstants;
+import org.apache.hupa.server.HupaGuiceTestCase;
 import org.apache.hupa.server.handler.FetchFoldersHandler;
 import org.apache.hupa.server.handler.FetchMessagesHandler;
-import org.apache.hupa.server.mock.MockIMAPStoreCache;
+import org.apache.hupa.server.utils.SessionUtils;
+import org.apache.hupa.server.utils.TestUtils;
 import org.apache.hupa.shared.data.IMAPFolder;
-import org.apache.hupa.shared.data.User;
+import org.apache.hupa.shared.data.SMTPMessage;
 import org.apache.hupa.shared.rpc.FetchFolders;
 import org.apache.hupa.shared.rpc.FetchMessages;
 import org.apache.hupa.shared.rpc.FetchMessagesResult;
+import org.apache.hupa.shared.rpc.SendMessage;
 
-import javax.servlet.http.HttpSession;
-
-
-public class UserPreferencesStorageTest extends HupaTestCase {
+public class InSessionUserPreferencesStorageTest extends HupaGuiceTestCase {
 
-    public void testPutContactsInSession() throws Exception {
-        UserPreferencesStorage userPreferences = injector.getInstance(UserPreferencesStorage.class);
-        
-        userPreferences.addContact(" ' \"Somebody\" <me...@domain.com>");
-        assertEquals("Somebody", userPreferences.getContacts()[0].realname);
-        assertEquals("me@domain.com", userPreferences.getContacts()[0].mail);
-        
+    public void setUp() throws Exception {
+        httpSession.removeAttribute(InImapUserPreferencesStorage.CONTACTS_ATTR);
     }
-
+    
     public void testFetchMessagesFillsContactsList() throws Exception {
-
         assertEquals(0, userPreferences.getContacts().length);
-        
-        User demouser = DemoModeConstants.demoUser;
-
-        HttpSession httpSession = injector.getInstance(HttpSession.class);
-        httpSession.setAttribute("user", demouser);
-
-        IMAPStoreCache storeCache = injector.getInstance(IMAPStoreCache.class);
-        IMAPStore store = injector.getInstance(IMAPStore.class);
-        ((MockIMAPStoreCache)storeCache).addValidUser(demouser, store);
-
+    
         FetchFoldersHandler fetchFoldersHandler = injector.getInstance(FetchFoldersHandler.class); 
         fetchFoldersHandler.execute(new FetchFolders(), null);
         
-        IMAPFolder folder = new IMAPFolder(demouser.getSettings().getInboxFolderName());
+        IMAPFolder folder = new IMAPFolder(testUser.getSettings().getInboxFolderName());
         FetchMessagesHandler fetchMessagesHandler = injector.getInstance(FetchMessagesHandler.class); 
         FetchMessagesResult result = fetchMessagesHandler.execute(new FetchMessages(folder, 0, 10, null), null);
         
         assertTrue(result.getRealCount()>1);
-        
-        assertTrue(userPreferences.getContacts().length>1);
-        
     }
     
+    public void testSendMessagesAddContactsToList() throws Exception {
+        assertEquals(0, userPreferences.getContacts().length);
+        
+        SMTPMessage smtpmsg = TestUtils.createMockSMTPMessage(SessionUtils.getSessionRegistry(logger, httpSession), 2);
+        SendMessage action = new SendMessage(smtpmsg);
+        abstSendMsgHndl.execute(action, null);
+        
+        assertEquals(3, userPreferences.getContacts().length);
+    }    
+
 }

Modified: james/hupa/trunk/server/src/test/java/org/apache/hupa/server/utils/TestUtils.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/server/src/test/java/org/apache/hupa/server/utils/TestUtils.java?rev=908000&r1=907999&r2=908000&view=diff
==============================================================================
--- james/hupa/trunk/server/src/test/java/org/apache/hupa/server/utils/TestUtils.java (original)
+++ james/hupa/trunk/server/src/test/java/org/apache/hupa/server/utils/TestUtils.java Tue Feb  9 11:00:47 2010
@@ -19,6 +19,19 @@
 
 package org.apache.hupa.server.utils;
 
+import com.sun.mail.imap.IMAPStore;
+
+import junit.framework.TestCase;
+
+import org.apache.commons.fileupload.FileItem;
+import org.apache.commons.fileupload.FileItemFactory;
+import org.apache.commons.fileupload.disk.DiskFileItemFactory;
+import org.apache.hupa.server.FileItemRegistry;
+import org.apache.hupa.server.guice.DemoModeConstants;
+import org.apache.hupa.server.handler.AbstractSendMessageHandler;
+import org.apache.hupa.shared.data.MessageAttachment;
+import org.apache.hupa.shared.data.SMTPMessage;
+
 import java.io.FileInputStream;
 import java.io.IOException;
 import java.io.OutputStream;
@@ -27,6 +40,7 @@
 import java.util.Arrays;
 
 import javax.mail.BodyPart;
+import javax.mail.Folder;
 import javax.mail.Message;
 import javax.mail.MessagingException;
 import javax.mail.Multipart;
@@ -36,17 +50,6 @@
 import javax.mail.internet.AddressException;
 import javax.mail.internet.MimeMessage;
 
-import junit.framework.TestCase;
-
-import org.apache.commons.fileupload.FileItem;
-import org.apache.commons.fileupload.FileItemFactory;
-import org.apache.commons.fileupload.disk.DiskFileItemFactory;
-import org.apache.hupa.server.FileItemRegistry;
-import org.apache.hupa.server.guice.DemoModeConstants;
-import org.apache.hupa.server.handler.AbstractSendMessageHandler;
-import org.apache.hupa.shared.data.MessageAttachment;
-import org.apache.hupa.shared.data.SMTPMessage;
-
 /**
  * A bunch of useful methods used for testing
  */
@@ -191,7 +194,7 @@
         }
 
         SMTPMessage smtpMessage = new SMTPMessage();
-        smtpMessage.setFrom("from@dom.com");
+        smtpMessage.setFrom("Test user <fr...@dom.com>");
         smtpMessage.setTo(new ArrayList<String>(Arrays.asList("to@dom.com")));
         smtpMessage.setCc(new ArrayList<String>(Arrays.asList("cc@dom.com")));
         smtpMessage.setBcc(new ArrayList<String>(Arrays.asList("bcc@dom.com")));
@@ -268,5 +271,14 @@
         mpart.addBodyPart(part);
         message.saveChanges();
     }
+    
+    
+    public static String dumpStore(IMAPStore store) throws MessagingException {
+        String ret = "";
+        for (Folder f : store.getDefaultFolder().list()) {
+            ret += f.getFullName() + " " + f.getMessageCount() + "\n";
+        }
+        return ret;
+    }
  
 }
\ No newline at end of file

Modified: james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/data/Settings.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/data/Settings.java?rev=908000&r1=907999&r2=908000&view=diff
==============================================================================
--- james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/data/Settings.java (original)
+++ james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/data/Settings.java Tue Feb  9 11:00:47 2010
@@ -26,6 +26,7 @@
     public static final String DEFAULT_INBOX = "INBOX"; 
     public static final String DEFAULT_TRASH = "Trash"; 
     public static final String DEFAULT_SENT = "Sent"; 
+    public static final String DEFAULT_DRAFT = "Draft"; 
     
     /**
      * 
@@ -34,6 +35,8 @@
     private String trashFolderName = DEFAULT_TRASH;
     private String sentFolderName = DEFAULT_SENT;
     private String inboxFolderName = DEFAULT_INBOX;
+    private String draftsFolderName = DEFAULT_DRAFT;
+    
     private int prefetchCount = 20;
     
     public String getInboxFolderName() {
@@ -68,5 +71,13 @@
         this.prefetchCount  = prefetchCount;
     }
     
+    public String getDraftsFolderName() {
+        return draftsFolderName;
+    }
+
+    public void setDraftsFolderName(String draftFolderName) {
+        this.draftsFolderName = draftFolderName;
+    }
+
     
 }

Modified: james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/rpc/LoginUser.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/rpc/LoginUser.java?rev=908000&r1=907999&r2=908000&view=diff
==============================================================================
--- james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/rpc/LoginUser.java (original)
+++ james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/rpc/LoginUser.java Tue Feb  9 11:00:47 2010
@@ -46,6 +46,10 @@
     public String getPassword() {
         return password;
     }
+    
+    public String toString() {
+        return userName + ":" + password;
+    }
 
   
 }

Modified: james/hupa/trunk/widgets/src/main/java/org/apache/hupa/widgets/WidgetsCSS.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/widgets/src/main/java/org/apache/hupa/widgets/WidgetsCSS.java?rev=908000&r1=907999&r2=908000&view=diff
==============================================================================
--- james/hupa/trunk/widgets/src/main/java/org/apache/hupa/widgets/WidgetsCSS.java (original)
+++ james/hupa/trunk/widgets/src/main/java/org/apache/hupa/widgets/WidgetsCSS.java Tue Feb  9 11:00:47 2010
@@ -4,6 +4,7 @@
     
     public static final String C_hyperlink = "hupa-hyperlink";
     public static final String C_loading = "hupa-loading";
-    public static String C_hupa_rnd_container = "hupa-rounded";
+    public static final String C_hupa_rnd_container = "hupa-rounded";
+    public static final String C_attachment = "hupa-attachment";
 
 }



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