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/23 11:56:53 UTC

svn commit: r828980 [4/10] - in /james/hupa/trunk: client/src/main/java/org/apache/hupa/client/ client/src/main/java/org/apache/hupa/client/bundles/ client/src/main/java/org/apache/hupa/client/dnd/ client/src/main/java/org/apache/hupa/client/gin/ clien...

Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/IMAPTreeItem.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/IMAPTreeItem.java?rev=828980&r1=828979&r2=828980&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/IMAPTreeItem.java (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/IMAPTreeItem.java Fri Oct 23 09:56:45 2009
@@ -23,136 +23,136 @@
 import org.apache.hupa.widgets.event.EditEvent;
 import org.apache.hupa.widgets.ui.EditableTreeItem;
 
-public class IMAPTreeItem extends EditableTreeItem {	
-	protected String oldFullName;
-	protected String oldName;
-
-	public IMAPTreeItem(IMAPFolder folder) {
-		setUserObject(folder);
-		setFolderText(folder);	
-	}
-
-	@Override
-	public void setSelected(boolean selected) {
-		super.setSelected(selected);
-		if (isSelected()) {
-			getWidget().addStyleName("hupa-IMAPFolder-selected");
-		} else {
-			getWidget().removeStyleName("hupa-IMAPFolder-selected");
-		}
-	}
-	
-	/**
-	 * Decrease the unseen messagecount of this folder
-	 */
-	public void decreaseUnseenMessageCount() {
-		descreaseUnseenMessageCount(1);
-	}
-	
-	public void setUnseenMessageCount(int cound) {
-		IMAPFolder folder = (IMAPFolder) getUserObject();
-		int count = folder.getUnseeMessageCount();
-		folder.setUnseenMessageCount(count);
-		setFolderText(folder);
-		
-	}
-	
-	
-	/**
-	 * Decrease the unseen messagecount of this folder
-	 * 
-	 * @param decreaseCount
-	 */
-	public void descreaseUnseenMessageCount(int decreaseCount) {
-		IMAPFolder folder = (IMAPFolder) getUserObject();
-		int count = folder.getUnseeMessageCount();
-		if (count > 0) { 
-			count = count - decreaseCount;
-			if (count < 0) {
-				count = 0;
-			}
-			folder.setUnseenMessageCount(count);
-			setFolderText(folder);
-		} 
-	}
-	/**
-	 * Increase the unseen messagecount of this folder
-	 * 
-	 * @param increaseCount
-	 */
-	public void increaseUnseenMessageCount() {
-		increaseUnseenMessageCount(1);
-	}
-	
-	/**
-	 * Increase the unseen messagecount of this folder
-	 * 
-	 */
-	public void increaseUnseenMessageCount( int increaseCount) {
-		IMAPFolder folder = (IMAPFolder) getUserObject();
-		int count = folder.getUnseeMessageCount(); 
-		count = count+ increaseCount;
-		folder.setUnseenMessageCount(count);
-		setFolderText(folder);
-	}
-	
-	private void setFolderText(IMAPFolder folder) {
-		setText(getFolderName(folder));
-	}
-	
-	/**
-	 * Return the folder name to display in the TreeItem for the given IMAPFolder
-	 * 
-	 * @param folder
-	 * @return name
-	 */
-	private String getFolderName(IMAPFolder folder) {
-		return folder.getName() + " ("+folder.getUnseeMessageCount()+")";
-	}
-	
-	@Override
-	public void setUserObject(Object obj) {
-		if ((obj instanceof IMAPFolder) == false) {
-			throw new IllegalArgumentException("UserObject needs to be an instance of IMAPFolder");
-		}		
-		setFolderText((IMAPFolder)obj);
-
-		super.setUserObject(obj);
-	}
-
-	@Override
-	public void startEdit() {
-		IMAPFolder folder = (IMAPFolder) getUserObject();
-		oldFullName = folder.getFullName();
-		oldName = folder.getName();
-		showEditBox(oldName);
-		manager.fireEvent(new EditEvent(EditEvent.EventType.Start,oldFullName,null));
-	}
-	
-	@Override
-	public void cancelEdit() {
-		IMAPFolder folder = ((IMAPFolder) getUserObject());
-		folder.setFullName(oldFullName);
-		showItem(getFolderName(folder));
-
-		manager.fireEvent(new EditEvent(EditEvent.EventType.Cancel,oldFullName,null));
-
-	}
-	
-	@Override
-	public void stopEdit() {
-		if (editBox.getText().length() < 1) {
-			// Empty folder name is not allowed!
-			cancelEdit();
-		} else {
-			String newFolderName = editBox.getText();
-			String newFullFolderName = oldFullName.substring(0, oldFullName.length() - oldName.length())  + newFolderName; 
-			IMAPFolder folder = ((IMAPFolder) getUserObject());
-			folder.setFullName(newFullFolderName);
-			showItem(getFolderName(folder));
+public class IMAPTreeItem extends EditableTreeItem {    
+    protected String oldFullName;
+    protected String oldName;
+
+    public IMAPTreeItem(IMAPFolder folder) {
+        setUserObject(folder);
+        setFolderText(folder);    
+    }
+
+    @Override
+    public void setSelected(boolean selected) {
+        super.setSelected(selected);
+        if (isSelected()) {
+            getWidget().addStyleName("hupa-IMAPFolder-selected");
+        } else {
+            getWidget().removeStyleName("hupa-IMAPFolder-selected");
+        }
+    }
+    
+    /**
+     * Decrease the unseen messagecount of this folder
+     */
+    public void decreaseUnseenMessageCount() {
+        descreaseUnseenMessageCount(1);
+    }
+    
+    public void setUnseenMessageCount(int cound) {
+        IMAPFolder folder = (IMAPFolder) getUserObject();
+        int count = folder.getUnseeMessageCount();
+        folder.setUnseenMessageCount(count);
+        setFolderText(folder);
+        
+    }
+    
+    
+    /**
+     * Decrease the unseen messagecount of this folder
+     * 
+     * @param decreaseCount
+     */
+    public void descreaseUnseenMessageCount(int decreaseCount) {
+        IMAPFolder folder = (IMAPFolder) getUserObject();
+        int count = folder.getUnseeMessageCount();
+        if (count > 0) { 
+            count = count - decreaseCount;
+            if (count < 0) {
+                count = 0;
+            }
+            folder.setUnseenMessageCount(count);
+            setFolderText(folder);
+        } 
+    }
+    /**
+     * Increase the unseen messagecount of this folder
+     * 
+     * @param increaseCount
+     */
+    public void increaseUnseenMessageCount() {
+        increaseUnseenMessageCount(1);
+    }
+    
+    /**
+     * Increase the unseen messagecount of this folder
+     * 
+     */
+    public void increaseUnseenMessageCount( int increaseCount) {
+        IMAPFolder folder = (IMAPFolder) getUserObject();
+        int count = folder.getUnseeMessageCount(); 
+        count = count+ increaseCount;
+        folder.setUnseenMessageCount(count);
+        setFolderText(folder);
+    }
+    
+    private void setFolderText(IMAPFolder folder) {
+        setText(getFolderName(folder));
+    }
+    
+    /**
+     * Return the folder name to display in the TreeItem for the given IMAPFolder
+     * 
+     * @param folder
+     * @return name
+     */
+    private String getFolderName(IMAPFolder folder) {
+        return folder.getName() + " ("+folder.getUnseeMessageCount()+")";
+    }
+    
+    @Override
+    public void setUserObject(Object obj) {
+        if ((obj instanceof IMAPFolder) == false) {
+            throw new IllegalArgumentException("UserObject needs to be an instance of IMAPFolder");
+        }        
+        setFolderText((IMAPFolder)obj);
+
+        super.setUserObject(obj);
+    }
+
+    @Override
+    public void startEdit() {
+        IMAPFolder folder = (IMAPFolder) getUserObject();
+        oldFullName = folder.getFullName();
+        oldName = folder.getName();
+        showEditBox(oldName);
+        manager.fireEvent(new EditEvent(EditEvent.EventType.Start,oldFullName,null));
+    }
+    
+    @Override
+    public void cancelEdit() {
+        IMAPFolder folder = ((IMAPFolder) getUserObject());
+        folder.setFullName(oldFullName);
+        showItem(getFolderName(folder));
+
+        manager.fireEvent(new EditEvent(EditEvent.EventType.Cancel,oldFullName,null));
+
+    }
+    
+    @Override
+    public void stopEdit() {
+        if (editBox.getText().length() < 1) {
+            // Empty folder name is not allowed!
+            cancelEdit();
+        } else {
+            String newFolderName = editBox.getText();
+            String newFullFolderName = oldFullName.substring(0, oldFullName.length() - oldName.length())  + newFolderName; 
+            IMAPFolder folder = ((IMAPFolder) getUserObject());
+            folder.setFullName(newFullFolderName);
+            showItem(getFolderName(folder));
 
-			manager.fireEvent(new EditEvent(EditEvent.EventType.Stop,oldFullName,newFullFolderName));
-		}
+            manager.fireEvent(new EditEvent(EditEvent.EventType.Stop,oldFullName,newFullFolderName));
+        }
 
-	}
+    }
 }

Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/Loading.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/Loading.java?rev=828980&r1=828979&r2=828980&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/Loading.java (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/Loading.java Fri Oct 23 09:56:45 2009
@@ -30,28 +30,28 @@
 import com.google.gwt.user.client.ui.SimplePanel;
 
 public class Loading extends Composite{
-	private HupaConstants constants = GWT.create(HupaConstants.class);
-	private SimplePanel sPanel = new SimplePanel();
-	private HorizontalPanel panel = new HorizontalPanel();
-	public Loading(boolean small) {
-		panel.setHorizontalAlignment(HorizontalPanel.ALIGN_CENTER);
-		panel.setVerticalAlignment(HorizontalPanel.ALIGN_MIDDLE);
-		panel.add(new Image(GWT.getModuleBaseURL() + "../images/ajax-loader.gif"));
-		if (small == false) {
-			panel.add(new Label(" " + constants.loading()));
-		}
-		
-		initWidget(sPanel);
-	}
-	
-	public void show() {
-		sPanel.clear();
-		sPanel.add(panel);
-	}
-	
-	public void hide() {
-		sPanel.clear();
-		sPanel.add(new HTML("&nbsp"));
-	}
+    private HupaConstants constants = GWT.create(HupaConstants.class);
+    private SimplePanel sPanel = new SimplePanel();
+    private HorizontalPanel panel = new HorizontalPanel();
+    public Loading(boolean small) {
+        panel.setHorizontalAlignment(HorizontalPanel.ALIGN_CENTER);
+        panel.setVerticalAlignment(HorizontalPanel.ALIGN_MIDDLE);
+        panel.add(new Image(GWT.getModuleBaseURL() + "../images/ajax-loader.gif"));
+        if (small == false) {
+            panel.add(new Label(" " + constants.loading()));
+        }
+        
+        initWidget(sPanel);
+    }
+    
+    public void show() {
+        sPanel.clear();
+        sPanel.add(panel);
+    }
+    
+    public void hide() {
+        sPanel.clear();
+        sPanel.add(new HTML("&nbsp"));
+    }
 
 }

Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/MyButton.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/MyButton.java?rev=828980&r1=828979&r2=828980&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/MyButton.java (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/MyButton.java Fri Oct 23 09:56:45 2009
@@ -24,11 +24,11 @@
 
 public class MyButton extends Button implements HasEnable{
 
-	public MyButton(String sendButton) {
-		super(sendButton);
-	}
+    public MyButton(String sendButton) {
+        super(sendButton);
+    }
 
-	public MyButton() {
-		super();
-	}
+    public MyButton() {
+        super();
+    }
 }

Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/MyDialogBox.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/MyDialogBox.java?rev=828980&r1=828979&r2=828980&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/MyDialogBox.java (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/MyDialogBox.java Fri Oct 23 09:56:45 2009
@@ -3,5 +3,5 @@
 import com.google.gwt.user.client.ui.DialogBox;
 
 public class MyDialogBox extends DialogBox implements HasDialog{
-	
+    
 }

Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/PagingOptions.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/PagingOptions.java?rev=828980&r1=828979&r2=828980&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/PagingOptions.java (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/widgets/PagingOptions.java Fri Oct 23 09:56:45 2009
@@ -41,185 +41,185 @@
 import com.google.gwt.user.client.ui.SimplePanel;
 
 public class PagingOptions extends Composite {
-	private HupaConstants constants = GWT.create(HupaConstants.class);
-	
-	private HorizontalPanel pagingPanel = new HorizontalPanel();
-	private EnableHyperlink firstLink = new EnableHyperlink("<< " + constants.pageFirst(),"");
-	private EnableHyperlink prevLink = new EnableHyperlink("< " + constants.pagePrev(),"");
-	private EnableHyperlink lastLink = new EnableHyperlink(constants.pageLast() + " >>","");
-	private EnableHyperlink nextLink = new EnableHyperlink(constants.pageNext() + " >","");
-	private Label text = new Label();
-	private int currentPage = 1;
-	private Loading loading = new Loading(true);
-	private SimplePanel panel = new SimplePanel();
-	
-	public PagingOptions(final PagingScrollTable<?> table) {
-		pagingPanel.setSpacing(3);
-
-		pagingPanel.add(panel);
-		pagingPanel.add(firstLink);
-		pagingPanel.add(prevLink);
-		pagingPanel.add(nextLink);
-		pagingPanel.add(lastLink);
-		loading.hide();
-		panel.setWidget(text);
-		panel.setWidth("100px");
-		pagingPanel.setCellHorizontalAlignment(panel, HorizontalPanel.ALIGN_CENTER);
-		firstLink.setEnabled(false);
-		prevLink.setEnabled(false);
-		lastLink.setEnabled(false);
-		nextLink.setEnabled(false);
-		
-		table.addPageCountChangeHandler(new PageCountChangeHandler() {
-
-			public void onPageCountChange(PageCountChangeEvent event) {
-				int startCount =  currentPage * table.getPageSize();
-				
-				if (currentPage == 0) {
-					startCount = 0;
-				}
-				
-				int endCount  = startCount + table.getPageSize();
-				
-				int rows = table.getTableModel().getRowCount();
-				updateControl(startCount, endCount, rows);
-			}
-			
-		});
-		
-		
-		table.addPageChangeHandler(new PageChangeHandler() {
-
-			public void onPageChange(PageChangeEvent event) {
-				loading(true);
-			
-				currentPage = event.getNewPage();
-				int startCount =  currentPage * table.getPageSize();
-				
-				if (currentPage == 0) {
-					startCount = 0;
-				}
-				
-				int endCount  = startCount + table.getPageSize();
-				int rows = table.getTableModel().getRowCount();
-			
-				
-				updateControl(startCount, endCount, rows);
-			}
-		});
-		
-		table.addPageLoadHandler(new PageLoadHandler() {
-
-			public void onPageLoad(PageLoadEvent event) {
-				loading(false);
-			}
-			
-		});
-		
-		table.addPagingFailureHandler(new PagingFailureHandler() {
-
-			public void onPagingFailure(PagingFailureEvent event) {
-				loading(false);
-			}
-			
-		});
-		
-		firstLink.addClickHandler(new ClickHandler() {
-
-			public void onClick(ClickEvent event) {
-				table.gotoFirstPage();
-			}
-			
-		});
-		
-		prevLink.addClickHandler(new ClickHandler() {
-
-			public void onClick(ClickEvent event) {
-				table.gotoPreviousPage();
-			}
-			
-		});
-		
-		nextLink.addClickHandler(new ClickHandler() {
-
-			public void onClick(ClickEvent event) {
-				table.gotoNextPage();
-			}
-			
-		});
-		
-		lastLink.addClickHandler(new ClickHandler() {
-
-			public void onClick(ClickEvent event) {
-				table.gotoLastPage();
-			}
-			
-		});
-		initWidget(pagingPanel);
-	}
-	
-	private void loading(boolean isLoading) {
-		if (isLoading) {
-			loading.show();
-			panel.setWidget(loading);
-		} else {
-			loading.hide();
-			panel.setWidget(text);
-		}
-	
-	}
-	private void updateControl(int startCount, int endCount, int rows) {
-		if (rows == TableModel.UNKNOWN_ROW_COUNT) {
-			startCount = 0;
-			endCount = 0;
-			rows = 0;
-		} 
-		
-		if (rows < endCount) {
-			endCount = rows;
-		}
-		
-		if (endCount == 0) {
-			startCount = 0;
-		}
-		
-		if (startCount <= 0) {
-			firstLink.setEnabled(false);
-			prevLink.setEnabled(false);
-		} else {
-			firstLink.setEnabled(true);
-			prevLink.setEnabled(true);
-		}
-		
-		if (rows > endCount) {
-			lastLink.setEnabled(true);
-			nextLink.setEnabled(true);
-		} else {
-			lastLink.setEnabled(false);
-			nextLink.setEnabled(false);
-		}
-		text.setText(startCount + " - " + endCount + " of " + rows);
-
-	}
-	public void reset() {
-		currentPage = 0;
-		text.setText("0 - 0 of 0");
-	}
-	
-	public EnableHyperlink getFirstLink() {
-		return firstLink;
-	}
-	
-	public EnableHyperlink getPrevLink() {
-		return prevLink;
-	}
-	
-	public EnableHyperlink getNextLink() {
-		return nextLink;
-	}
-	
-	public EnableHyperlink getLastLink() {
-		return lastLink;
-	}
+    private HupaConstants constants = GWT.create(HupaConstants.class);
+    
+    private HorizontalPanel pagingPanel = new HorizontalPanel();
+    private EnableHyperlink firstLink = new EnableHyperlink("<< " + constants.pageFirst(),"");
+    private EnableHyperlink prevLink = new EnableHyperlink("< " + constants.pagePrev(),"");
+    private EnableHyperlink lastLink = new EnableHyperlink(constants.pageLast() + " >>","");
+    private EnableHyperlink nextLink = new EnableHyperlink(constants.pageNext() + " >","");
+    private Label text = new Label();
+    private int currentPage = 1;
+    private Loading loading = new Loading(true);
+    private SimplePanel panel = new SimplePanel();
+    
+    public PagingOptions(final PagingScrollTable<?> table) {
+        pagingPanel.setSpacing(3);
+
+        pagingPanel.add(panel);
+        pagingPanel.add(firstLink);
+        pagingPanel.add(prevLink);
+        pagingPanel.add(nextLink);
+        pagingPanel.add(lastLink);
+        loading.hide();
+        panel.setWidget(text);
+        panel.setWidth("100px");
+        pagingPanel.setCellHorizontalAlignment(panel, HorizontalPanel.ALIGN_CENTER);
+        firstLink.setEnabled(false);
+        prevLink.setEnabled(false);
+        lastLink.setEnabled(false);
+        nextLink.setEnabled(false);
+        
+        table.addPageCountChangeHandler(new PageCountChangeHandler() {
+
+            public void onPageCountChange(PageCountChangeEvent event) {
+                int startCount =  currentPage * table.getPageSize();
+                
+                if (currentPage == 0) {
+                    startCount = 0;
+                }
+                
+                int endCount  = startCount + table.getPageSize();
+                
+                int rows = table.getTableModel().getRowCount();
+                updateControl(startCount, endCount, rows);
+            }
+            
+        });
+        
+        
+        table.addPageChangeHandler(new PageChangeHandler() {
+
+            public void onPageChange(PageChangeEvent event) {
+                loading(true);
+            
+                currentPage = event.getNewPage();
+                int startCount =  currentPage * table.getPageSize();
+                
+                if (currentPage == 0) {
+                    startCount = 0;
+                }
+                
+                int endCount  = startCount + table.getPageSize();
+                int rows = table.getTableModel().getRowCount();
+            
+                
+                updateControl(startCount, endCount, rows);
+            }
+        });
+        
+        table.addPageLoadHandler(new PageLoadHandler() {
+
+            public void onPageLoad(PageLoadEvent event) {
+                loading(false);
+            }
+            
+        });
+        
+        table.addPagingFailureHandler(new PagingFailureHandler() {
+
+            public void onPagingFailure(PagingFailureEvent event) {
+                loading(false);
+            }
+            
+        });
+        
+        firstLink.addClickHandler(new ClickHandler() {
+
+            public void onClick(ClickEvent event) {
+                table.gotoFirstPage();
+            }
+            
+        });
+        
+        prevLink.addClickHandler(new ClickHandler() {
+
+            public void onClick(ClickEvent event) {
+                table.gotoPreviousPage();
+            }
+            
+        });
+        
+        nextLink.addClickHandler(new ClickHandler() {
+
+            public void onClick(ClickEvent event) {
+                table.gotoNextPage();
+            }
+            
+        });
+        
+        lastLink.addClickHandler(new ClickHandler() {
+
+            public void onClick(ClickEvent event) {
+                table.gotoLastPage();
+            }
+            
+        });
+        initWidget(pagingPanel);
+    }
+    
+    private void loading(boolean isLoading) {
+        if (isLoading) {
+            loading.show();
+            panel.setWidget(loading);
+        } else {
+            loading.hide();
+            panel.setWidget(text);
+        }
+    
+    }
+    private void updateControl(int startCount, int endCount, int rows) {
+        if (rows == TableModel.UNKNOWN_ROW_COUNT) {
+            startCount = 0;
+            endCount = 0;
+            rows = 0;
+        } 
+        
+        if (rows < endCount) {
+            endCount = rows;
+        }
+        
+        if (endCount == 0) {
+            startCount = 0;
+        }
+        
+        if (startCount <= 0) {
+            firstLink.setEnabled(false);
+            prevLink.setEnabled(false);
+        } else {
+            firstLink.setEnabled(true);
+            prevLink.setEnabled(true);
+        }
+        
+        if (rows > endCount) {
+            lastLink.setEnabled(true);
+            nextLink.setEnabled(true);
+        } else {
+            lastLink.setEnabled(false);
+            nextLink.setEnabled(false);
+        }
+        text.setText(startCount + " - " + endCount + " of " + rows);
+
+    }
+    public void reset() {
+        currentPage = 0;
+        text.setText("0 - 0 of 0");
+    }
+    
+    public EnableHyperlink getFirstLink() {
+        return firstLink;
+    }
+    
+    public EnableHyperlink getPrevLink() {
+        return prevLink;
+    }
+    
+    public EnableHyperlink getNextLink() {
+        return nextLink;
+    }
+    
+    public EnableHyperlink getLastLink() {
+        return lastLink;
+    }
 
 }

Modified: james/hupa/trunk/server/src/main/java/org/apache/hupa/server/DemoModeIMAPStore.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/server/src/main/java/org/apache/hupa/server/DemoModeIMAPStore.java?rev=828980&r1=828979&r2=828980&view=diff
==============================================================================
--- james/hupa/trunk/server/src/main/java/org/apache/hupa/server/DemoModeIMAPStore.java (original)
+++ james/hupa/trunk/server/src/main/java/org/apache/hupa/server/DemoModeIMAPStore.java Fri Oct 23 09:56:45 2009
@@ -35,102 +35,102 @@
 
 // TODO: implement full set of methods
 public class DemoModeIMAPStore extends IMAPStore {
-	
-	public static final String DEMO_MODE_DEFAULT_FOLDER = "/";
-	public static final String DEMO_MODE_INBOX_FOLDER = "Demo-Inbox";
-	public static final String DEMO_MODE_SENT_FOLDER = "Demo-Sent";
-	public static final String DEMO_MODE_TRASH_FOLDER = "Demo-Trash";
-	
-	
-	static final URLName demoUrl = new URLName(null, InMemoryIMAPStoreCache.DEMO_MODE, 143, null, null, null);
-	static final HashMap<String, Folder> folders = new HashMap<String, Folder>();
-
-	public DemoModeIMAPStore(Session session) {
-		super(session, demoUrl);
-	}
-
-	@Override
-	public boolean isConnected() {
-		return true;
-	}
-	
-	@Override
-	public void idle() throws MessagingException {
-	}
-
-	@Override
-	public Folder getFolder(String name) throws MessagingException {
-		Folder ret = folders.get(name) != null ? folders.get(name) : new DemoModeIMAPFolder(name, this) {};
-		folders.put(name, ret);
-		return ret;
-	}
-
-	@Override
-	public Folder getDefaultFolder() throws MessagingException {
-		return getFolder(DEMO_MODE_DEFAULT_FOLDER);
-	}
-
-	private class DemoModeIMAPFolder extends IMAPFolder {
-		String fullName = null;
-		IMAPStore store = null;
-		Vector<Message> messages = new Vector<Message>();
-
-		DemoModeIMAPFolder(String fullName, IMAPStore store) {
-			super(fullName, '/', store);
-			this.fullName = fullName;
-			this.store = store;
-		}
-
-		@Override
-		public void open(int mode) throws MessagingException {
-		}
-
-		@Override
-		public int getMessageCount() throws MessagingException {
-			return messages.size();
-		}
-
-		@Override
-		public int getUnreadMessageCount() throws MessagingException {
-			return 0;
-		}
-
-		@Override
-		public boolean delete(boolean recurse) throws MessagingException {
-			return true;
-		}
-
-		@Override
-		public Folder[] list(String pattern) throws MessagingException {
-			if (DEMO_MODE_DEFAULT_FOLDER.equals(fullName)) { 
-				return new Folder[] { 
-					store.getFolder(DEMO_MODE_INBOX_FOLDER), 
-					store.getFolder(DEMO_MODE_SENT_FOLDER), 
-					store.getFolder(DEMO_MODE_TRASH_FOLDER) 
-					};
-			}
-			return new Folder[0];
-		}
-		
-		@Override
-		public boolean create(int type) throws MessagingException {
-			return true;
-		}
-		
-		@Override
-	    public boolean exists() throws MessagingException {
-	    	return true;
-	    }
-		
-		@Override
-		public void appendMessages(Message[] msgs) {
-			messages.addAll(Arrays.asList(msgs));
-		}
-		
-		@Override
-		public void close(boolean expunge) throws MessagingException {
-		}
-		
-	}
+    
+    public static final String DEMO_MODE_DEFAULT_FOLDER = "/";
+    public static final String DEMO_MODE_INBOX_FOLDER = "Demo-Inbox";
+    public static final String DEMO_MODE_SENT_FOLDER = "Demo-Sent";
+    public static final String DEMO_MODE_TRASH_FOLDER = "Demo-Trash";
+    
+    
+    static final URLName demoUrl = new URLName(null, InMemoryIMAPStoreCache.DEMO_MODE, 143, null, null, null);
+    static final HashMap<String, Folder> folders = new HashMap<String, Folder>();
+
+    public DemoModeIMAPStore(Session session) {
+        super(session, demoUrl);
+    }
+
+    @Override
+    public boolean isConnected() {
+        return true;
+    }
+    
+    @Override
+    public void idle() throws MessagingException {
+    }
+
+    @Override
+    public Folder getFolder(String name) throws MessagingException {
+        Folder ret = folders.get(name) != null ? folders.get(name) : new DemoModeIMAPFolder(name, this) {};
+        folders.put(name, ret);
+        return ret;
+    }
+
+    @Override
+    public Folder getDefaultFolder() throws MessagingException {
+        return getFolder(DEMO_MODE_DEFAULT_FOLDER);
+    }
+
+    private class DemoModeIMAPFolder extends IMAPFolder {
+        String fullName = null;
+        IMAPStore store = null;
+        Vector<Message> messages = new Vector<Message>();
+
+        DemoModeIMAPFolder(String fullName, IMAPStore store) {
+            super(fullName, '/', store);
+            this.fullName = fullName;
+            this.store = store;
+        }
+
+        @Override
+        public void open(int mode) throws MessagingException {
+        }
+
+        @Override
+        public int getMessageCount() throws MessagingException {
+            return messages.size();
+        }
+
+        @Override
+        public int getUnreadMessageCount() throws MessagingException {
+            return 0;
+        }
+
+        @Override
+        public boolean delete(boolean recurse) throws MessagingException {
+            return true;
+        }
+
+        @Override
+        public Folder[] list(String pattern) throws MessagingException {
+            if (DEMO_MODE_DEFAULT_FOLDER.equals(fullName)) { 
+                return new Folder[] { 
+                    store.getFolder(DEMO_MODE_INBOX_FOLDER), 
+                    store.getFolder(DEMO_MODE_SENT_FOLDER), 
+                    store.getFolder(DEMO_MODE_TRASH_FOLDER) 
+                    };
+            }
+            return new Folder[0];
+        }
+        
+        @Override
+        public boolean create(int type) throws MessagingException {
+            return true;
+        }
+        
+        @Override
+        public boolean exists() throws MessagingException {
+            return true;
+        }
+        
+        @Override
+        public void appendMessages(Message[] msgs) {
+            messages.addAll(Arrays.asList(msgs));
+        }
+        
+        @Override
+        public void close(boolean expunge) throws MessagingException {
+        }
+        
+    }
 
 }

Modified: james/hupa/trunk/server/src/main/java/org/apache/hupa/server/DemoModeSMTPTransport.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/server/src/main/java/org/apache/hupa/server/DemoModeSMTPTransport.java?rev=828980&r1=828979&r2=828980&view=diff
==============================================================================
--- james/hupa/trunk/server/src/main/java/org/apache/hupa/server/DemoModeSMTPTransport.java (original)
+++ james/hupa/trunk/server/src/main/java/org/apache/hupa/server/DemoModeSMTPTransport.java Fri Oct 23 09:56:45 2009
@@ -29,18 +29,18 @@
 
 public class DemoModeSMTPTransport extends Transport {
 
-	static final URLName demoUrl = new URLName(null, InMemoryIMAPStoreCache.DEMO_MODE, 143, null, null, null);
-	
-	public DemoModeSMTPTransport(Session session) {
-		super(session, demoUrl);
-	}
+    static final URLName demoUrl = new URLName(null, InMemoryIMAPStoreCache.DEMO_MODE, 143, null, null, null);
+    
+    public DemoModeSMTPTransport(Session session) {
+        super(session, demoUrl);
+    }
 
-	@Override
+    @Override
     public void sendMessage(Message msg, Address[] addresses) throws MessagingException {
     }
     
     @Override
     public void connect(String host, int port, String user, String password) throws MessagingException {
     }
-	
+    
 }

Modified: james/hupa/trunk/server/src/main/java/org/apache/hupa/server/FileItemRegistry.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/server/src/main/java/org/apache/hupa/server/FileItemRegistry.java?rev=828980&r1=828979&r2=828980&view=diff
==============================================================================
--- james/hupa/trunk/server/src/main/java/org/apache/hupa/server/FileItemRegistry.java (original)
+++ james/hupa/trunk/server/src/main/java/org/apache/hupa/server/FileItemRegistry.java Fri Oct 23 09:56:45 2009
@@ -30,43 +30,43 @@
 
 public class FileItemRegistry {
 
-	public Map<String,FileItem> map = new HashMap<String, FileItem>();
-	private Log logger;
-	
-	@Inject
-	public FileItemRegistry(Log logger) {
-		this.logger = logger;
-	}
-	
-	public void add(FileItem item) {
-		logger.debug("Store item " + item.getName() + " with name " + item.getFieldName());
-		map.put(item.getFieldName(), item);
-	}
-	
-	public void remove(String name) {
-		remove(get(name));
-	}
-	
-	public void remove(FileItem item) {
-		if (item != null) {
-			logger.debug("Remove item " + item.getName() + " with name " + item.getFieldName());
-			map.remove(item);
-			// Remove temporary stuff
-			item.delete();
-		}
-	}
-	
-	public void clear() {
-		for (Entry<String,FileItem> e: map.entrySet()) 
-			remove(e.getValue());
-	}
-	
-	public FileItem get(String name) {
-		logger.debug("Retrieve item " + name + " isNull=" + (map.get(name) == null));
-		return map.get(name);
-	}
-	
-	public int size() {
-		return map.size();
-	}
+    public Map<String,FileItem> map = new HashMap<String, FileItem>();
+    private Log logger;
+    
+    @Inject
+    public FileItemRegistry(Log logger) {
+        this.logger = logger;
+    }
+    
+    public void add(FileItem item) {
+        logger.debug("Store item " + item.getName() + " with name " + item.getFieldName());
+        map.put(item.getFieldName(), item);
+    }
+    
+    public void remove(String name) {
+        remove(get(name));
+    }
+    
+    public void remove(FileItem item) {
+        if (item != null) {
+            logger.debug("Remove item " + item.getName() + " with name " + item.getFieldName());
+            map.remove(item);
+            // Remove temporary stuff
+            item.delete();
+        }
+    }
+    
+    public void clear() {
+        for (Entry<String,FileItem> e: map.entrySet()) 
+            remove(e.getValue());
+    }
+    
+    public FileItem get(String name) {
+        logger.debug("Retrieve item " + name + " isNull=" + (map.get(name) == null));
+        return map.get(name);
+    }
+    
+    public int size() {
+        return map.size();
+    }
 }

Modified: james/hupa/trunk/server/src/main/java/org/apache/hupa/server/IMAPStoreCache.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/server/src/main/java/org/apache/hupa/server/IMAPStoreCache.java?rev=828980&r1=828979&r2=828980&view=diff
==============================================================================
--- james/hupa/trunk/server/src/main/java/org/apache/hupa/server/IMAPStoreCache.java (original)
+++ james/hupa/trunk/server/src/main/java/org/apache/hupa/server/IMAPStoreCache.java Fri Oct 23 09:56:45 2009
@@ -26,8 +26,8 @@
 import com.sun.mail.imap.IMAPStore;
 
 public interface IMAPStoreCache {
-	public IMAPStore get(User user) throws MessagingException;
-	public IMAPStore get(String username,String password) throws MessagingException;
-	public void delete(User user);
-	public void delete(String username);
+    public IMAPStore get(User user) throws MessagingException;
+    public IMAPStore get(String username,String password) throws MessagingException;
+    public void delete(User user);
+    public void delete(String username);
 }

Modified: james/hupa/trunk/server/src/main/java/org/apache/hupa/server/InMemoryIMAPStoreCache.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/server/src/main/java/org/apache/hupa/server/InMemoryIMAPStoreCache.java?rev=828980&r1=828979&r2=828980&view=diff
==============================================================================
--- james/hupa/trunk/server/src/main/java/org/apache/hupa/server/InMemoryIMAPStoreCache.java (original)
+++ james/hupa/trunk/server/src/main/java/org/apache/hupa/server/InMemoryIMAPStoreCache.java Fri Oct 23 09:56:45 2009
@@ -39,140 +39,140 @@
 @Singleton
 public class InMemoryIMAPStoreCache implements IMAPStoreCache{
 
-	public static final String DEMO_MODE = "demo-mode";
-	
-	private Properties props = new Properties();
-	private Session session;
-	protected Log logger;
-	private final Map<String,CachedIMAPStore> pool = new HashMap<String ,CachedIMAPStore>();
-	private String address;
-	private int port;
-	private boolean useSSL = false;
-	
-	@Inject
-	public InMemoryIMAPStoreCache(Log logger,@Named("IMAPServerAddress") String address, @Named("IMAPServerPort") int port, @Named("IMAPS") boolean useSSL,Provider<Session> sessionProvider) {
-		this.logger = logger;
-		this.address = address;
-		this.port = port;
-		this.useSSL = useSSL;
-		
+    public static final String DEMO_MODE = "demo-mode";
+    
+    private Properties props = new Properties();
+    private Session session;
+    protected Log logger;
+    private final Map<String,CachedIMAPStore> pool = new HashMap<String ,CachedIMAPStore>();
+    private String address;
+    private int port;
+    private boolean useSSL = false;
+    
+    @Inject
+    public InMemoryIMAPStoreCache(Log logger,@Named("IMAPServerAddress") String address, @Named("IMAPServerPort") int port, @Named("IMAPS") boolean useSSL,Provider<Session> sessionProvider) {
+        this.logger = logger;
+        this.address = address;
+        this.port = port;
+        this.useSSL = useSSL;
+        
         props.setProperty("mail.mime.decodetext.strict", "false");
         if (useSSL) {
-    		props.setProperty("mail.store.protocol", "imaps");
+            props.setProperty("mail.store.protocol", "imaps");
         }
         session = sessionProvider.get();
         System.setProperty("mail.mime.decodetext.strict", "false");
         
       
-	}
-	
+    }
+    
 
-	/*
-	 * (non-Javadoc)
-	 * @see org.apache.hupa.server.IMAPStoreCache#get(org.apache.hupa.shared.data.User)
-	 */
-	public IMAPStore get(User user) throws MessagingException {
-		return get(user.getName(),user.getPassword());
-	}
-	
-	/*
-	 * (non-Javadoc)
-	 * @see org.apache.hupa.server.IMAPStoreCache#get(java.lang.String, java.lang.String)
-	 */
-	public IMAPStore get(String username, String password) throws MessagingException {
-		CachedIMAPStore cstore = pool.get(username);
-		if (cstore == null) {
-			logger.debug("No cached store found for user " +username);
-			cstore = createCachedIMAPStore();
-		} else {
-			if (cstore.isExpired() == false) {
-			    try {
-			        cstore.validate();
-			    } catch (MessagingException e) {
-			        cstore = createCachedIMAPStore();
-			    }
-			} else {
-				pool.remove(username);
-				try {
-				    if (cstore != null) cstore.getStore().close();
-				} catch (MessagingException e) {
-				    // ignore on close
-				}
-				cstore = createCachedIMAPStore();
-			}
-		}
-		
-		if (cstore.getStore().isConnected() == false) {
-			try {
-				cstore.getStore().connect(address, port, username, password);
-			} catch (MessagingException e) {
-					throw (e);
-			}
-		}
-		pool.put(username, cstore);
-		return cstore.getStore();
-	}
-	
-	private CachedIMAPStore createCachedIMAPStore() throws NoSuchProviderException {
-		CachedIMAPStore cstore;
-		if (DEMO_MODE.equals(this.address)) {
-			cstore = new CachedIMAPStore(new DemoModeIMAPStore(session), 300);
-		} else if (useSSL) {
-			cstore = new CachedIMAPStore((IMAPStore)session.getStore("imaps"),300);
-		} else {
-			cstore =  new CachedIMAPStore((IMAPStore)session.getStore("imap"),300);
-		}
-		return cstore;
-	}
-	/*
-	 * (non-Javadoc)
-	 * @see org.apache.hupa.server.IMAPStoreCache#delete(org.apache.hupa.shared.data.User)
-	 */
-	public synchronized void delete(User user) {
-		delete(user.getName());
-	}
-	
-	/*
-	 * (non-Javadoc)
-	 * @see org.apache.hupa.server.IMAPStoreCache#delete(java.lang.String)
-	 */
-	public synchronized void delete(String username) {
-		CachedIMAPStore cstore = pool.get(username);
-		if (cstore != null && cstore.getStore().isConnected()) {
-			try {
-				cstore.getStore().close();
-			} catch (MessagingException e) {
-				// Ignore on close
-			}
-		}
-		pool.remove(username);
-	}
-	
-	private final class CachedIMAPStore {
-		private long validUntil;
-		private int validForMillis;
-		private IMAPStore store;
-		
-		public CachedIMAPStore(IMAPStore store, int validForSeconds) {
-			this.store = store;
-			this.validForMillis = validForSeconds * 1000;
-			this.validUntil = System.currentTimeMillis() + validForMillis;
-		}
-		
-		public boolean isExpired() {
-			if (validUntil > System.currentTimeMillis() && store.isConnected()) {
-				return false;
-			}
-			return true;
-		}
-		
-		public void validate() throws MessagingException {
-			store.idle();
-			validUntil = System.currentTimeMillis() + validForMillis;
-		}
-		
-		public IMAPStore getStore() {
-			return store;
-		}
-	}
+    /*
+     * (non-Javadoc)
+     * @see org.apache.hupa.server.IMAPStoreCache#get(org.apache.hupa.shared.data.User)
+     */
+    public IMAPStore get(User user) throws MessagingException {
+        return get(user.getName(),user.getPassword());
+    }
+    
+    /*
+     * (non-Javadoc)
+     * @see org.apache.hupa.server.IMAPStoreCache#get(java.lang.String, java.lang.String)
+     */
+    public IMAPStore get(String username, String password) throws MessagingException {
+        CachedIMAPStore cstore = pool.get(username);
+        if (cstore == null) {
+            logger.debug("No cached store found for user " +username);
+            cstore = createCachedIMAPStore();
+        } else {
+            if (cstore.isExpired() == false) {
+                try {
+                    cstore.validate();
+                } catch (MessagingException e) {
+                    cstore = createCachedIMAPStore();
+                }
+            } else {
+                pool.remove(username);
+                try {
+                    if (cstore != null) cstore.getStore().close();
+                } catch (MessagingException e) {
+                    // ignore on close
+                }
+                cstore = createCachedIMAPStore();
+            }
+        }
+        
+        if (cstore.getStore().isConnected() == false) {
+            try {
+                cstore.getStore().connect(address, port, username, password);
+            } catch (MessagingException e) {
+                    throw (e);
+            }
+        }
+        pool.put(username, cstore);
+        return cstore.getStore();
+    }
+    
+    private CachedIMAPStore createCachedIMAPStore() throws NoSuchProviderException {
+        CachedIMAPStore cstore;
+        if (DEMO_MODE.equals(this.address)) {
+            cstore = new CachedIMAPStore(new DemoModeIMAPStore(session), 300);
+        } else if (useSSL) {
+            cstore = new CachedIMAPStore((IMAPStore)session.getStore("imaps"),300);
+        } else {
+            cstore =  new CachedIMAPStore((IMAPStore)session.getStore("imap"),300);
+        }
+        return cstore;
+    }
+    /*
+     * (non-Javadoc)
+     * @see org.apache.hupa.server.IMAPStoreCache#delete(org.apache.hupa.shared.data.User)
+     */
+    public synchronized void delete(User user) {
+        delete(user.getName());
+    }
+    
+    /*
+     * (non-Javadoc)
+     * @see org.apache.hupa.server.IMAPStoreCache#delete(java.lang.String)
+     */
+    public synchronized void delete(String username) {
+        CachedIMAPStore cstore = pool.get(username);
+        if (cstore != null && cstore.getStore().isConnected()) {
+            try {
+                cstore.getStore().close();
+            } catch (MessagingException e) {
+                // Ignore on close
+            }
+        }
+        pool.remove(username);
+    }
+    
+    private final class CachedIMAPStore {
+        private long validUntil;
+        private int validForMillis;
+        private IMAPStore store;
+        
+        public CachedIMAPStore(IMAPStore store, int validForSeconds) {
+            this.store = store;
+            this.validForMillis = validForSeconds * 1000;
+            this.validUntil = System.currentTimeMillis() + validForMillis;
+        }
+        
+        public boolean isExpired() {
+            if (validUntil > System.currentTimeMillis() && store.isConnected()) {
+                return false;
+            }
+            return true;
+        }
+        
+        public void validate() throws MessagingException {
+            store.idle();
+            validUntil = System.currentTimeMillis() + validForMillis;
+        }
+        
+        public IMAPStore getStore() {
+            return store;
+        }
+    }
 }

Modified: james/hupa/trunk/server/src/main/java/org/apache/hupa/server/guice/DefaultUserSettingsProvider.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/server/src/main/java/org/apache/hupa/server/guice/DefaultUserSettingsProvider.java?rev=828980&r1=828979&r2=828980&view=diff
==============================================================================
--- james/hupa/trunk/server/src/main/java/org/apache/hupa/server/guice/DefaultUserSettingsProvider.java (original)
+++ james/hupa/trunk/server/src/main/java/org/apache/hupa/server/guice/DefaultUserSettingsProvider.java Fri Oct 23 09:56:45 2009
@@ -26,30 +26,30 @@
 import com.google.inject.name.Named;
 
 public class DefaultUserSettingsProvider implements Provider<Settings> {
-	private String inboxFolder;
-	private String sentFolder;
-	private String trashFolder;
-	private int postCount;
+    private String inboxFolder;
+    private String sentFolder;
+    private String trashFolder;
+    private int postCount;
 
-	@Inject
-	public DefaultUserSettingsProvider(@Named("DefaultInboxFolder") String inboxFolder, @Named("DefaultSentFolder") String sentFolder, @Named("DefaultTrashFolder") String trashFolder, @Named("PostFetchMessageCount") int postCount) {
-		this.inboxFolder = inboxFolder;
-		this.sentFolder = sentFolder;
-		this.trashFolder = trashFolder;
-		this.postCount = postCount;
-	}
-	
-	/*
-	 * (non-Javadoc)
-	 * @see com.google.inject.Provider#get()
-	 */
-	public Settings get() {
-		Settings settings = new Settings();
-		settings.setInboxFolderName(inboxFolder);
-		settings.setSentFolderName(sentFolder);
-		settings.setTrashFolderName(trashFolder);
-		settings.setPostFetchMessageCount(postCount);
-		return settings;
-	}
+    @Inject
+    public DefaultUserSettingsProvider(@Named("DefaultInboxFolder") String inboxFolder, @Named("DefaultSentFolder") String sentFolder, @Named("DefaultTrashFolder") String trashFolder, @Named("PostFetchMessageCount") int postCount) {
+        this.inboxFolder = inboxFolder;
+        this.sentFolder = sentFolder;
+        this.trashFolder = trashFolder;
+        this.postCount = postCount;
+    }
+    
+    /*
+     * (non-Javadoc)
+     * @see com.google.inject.Provider#get()
+     */
+    public Settings get() {
+        Settings settings = new Settings();
+        settings.setInboxFolderName(inboxFolder);
+        settings.setSentFolderName(sentFolder);
+        settings.setTrashFolderName(trashFolder);
+        settings.setPostFetchMessageCount(postCount);
+        return settings;
+    }
 
 }

Modified: james/hupa/trunk/server/src/main/java/org/apache/hupa/server/guice/DispatchServletModule.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/server/src/main/java/org/apache/hupa/server/guice/DispatchServletModule.java?rev=828980&r1=828979&r2=828980&view=diff
==============================================================================
--- james/hupa/trunk/server/src/main/java/org/apache/hupa/server/guice/DispatchServletModule.java (original)
+++ james/hupa/trunk/server/src/main/java/org/apache/hupa/server/guice/DispatchServletModule.java Fri Oct 23 09:56:45 2009
@@ -30,11 +30,11 @@
 
 
 public class DispatchServletModule extends ServletModule{
-	 @Override
-	    public void configureServlets() {
-		 	serve("/hupa/dispatch").with(DispatchServiceServlet.class );
-		 	serve("/hupa/downloadAttachmentServlet").with(DownloadAttachmentServlet.class);
-		 	serve("/hupa/uploadAttachmentServlet").with(UploadAttachmentServlet.class);
-		 	serve("/hupa/messageSourceServlet").with(MessageSourceServlet.class);
-	    }
+     @Override
+        public void configureServlets() {
+             serve("/hupa/dispatch").with(DispatchServiceServlet.class );
+             serve("/hupa/downloadAttachmentServlet").with(DownloadAttachmentServlet.class);
+             serve("/hupa/uploadAttachmentServlet").with(UploadAttachmentServlet.class);
+             serve("/hupa/messageSourceServlet").with(MessageSourceServlet.class);
+        }
 }

Modified: james/hupa/trunk/server/src/main/java/org/apache/hupa/server/guice/LogProvider.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/server/src/main/java/org/apache/hupa/server/guice/LogProvider.java?rev=828980&r1=828979&r2=828980&view=diff
==============================================================================
--- james/hupa/trunk/server/src/main/java/org/apache/hupa/server/guice/LogProvider.java (original)
+++ james/hupa/trunk/server/src/main/java/org/apache/hupa/server/guice/LogProvider.java Fri Oct 23 09:56:45 2009
@@ -29,8 +29,8 @@
 @Singleton
 public class LogProvider implements Provider<Log>{
 
-	public Log get() {
-		return new Log4JLogger("HupaLogger");
-	}
+    public Log get() {
+        return new Log4JLogger("HupaLogger");
+    }
 
 }

Modified: james/hupa/trunk/server/src/main/java/org/apache/hupa/server/guice/MyGuiceServletConfig.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/server/src/main/java/org/apache/hupa/server/guice/MyGuiceServletConfig.java?rev=828980&r1=828979&r2=828980&view=diff
==============================================================================
--- james/hupa/trunk/server/src/main/java/org/apache/hupa/server/guice/MyGuiceServletConfig.java (original)
+++ james/hupa/trunk/server/src/main/java/org/apache/hupa/server/guice/MyGuiceServletConfig.java Fri Oct 23 09:56:45 2009
@@ -35,22 +35,22 @@
  */
 public class MyGuiceServletConfig extends GuiceServletContextListener{
 
-	private ServletContext context;
-	@Override
-	public void contextDestroyed(ServletContextEvent servletContextEvent) {
-		context = null;
-		super.contextDestroyed(servletContextEvent);
-	}
+    private ServletContext context;
+    @Override
+    public void contextDestroyed(ServletContextEvent servletContextEvent) {
+        context = null;
+        super.contextDestroyed(servletContextEvent);
+    }
 
-	@Override
-	public void contextInitialized(ServletContextEvent servletContextEvent) {
-		context = servletContextEvent.getServletContext();
-		super.contextInitialized(servletContextEvent);
-	}
+    @Override
+    public void contextInitialized(ServletContextEvent servletContextEvent) {
+        context = servletContextEvent.getServletContext();
+        super.contextInitialized(servletContextEvent);
+    }
 
-	@Override
-	protected Injector getInjector() {
-		return Guice.createInjector(new ServerModul(context.getRealPath("/")),new DispatchServletModule());
-	}
+    @Override
+    protected Injector getInjector() {
+        return Guice.createInjector(new ServerModul(context.getRealPath("/")),new DispatchServletModule());
+    }
 
 }

Modified: james/hupa/trunk/server/src/main/java/org/apache/hupa/server/guice/ServerModul.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/server/src/main/java/org/apache/hupa/server/guice/ServerModul.java?rev=828980&r1=828979&r2=828980&view=diff
==============================================================================
--- james/hupa/trunk/server/src/main/java/org/apache/hupa/server/guice/ServerModul.java (original)
+++ james/hupa/trunk/server/src/main/java/org/apache/hupa/server/guice/ServerModul.java Fri Oct 23 09:56:45 2009
@@ -67,114 +67,114 @@
  */
 public class ServerModul extends ActionHandlerModule {
 
-	public static final String SYS_PROP_CONFIG_FILE = "hupa.config.file";
+    public static final String SYS_PROP_CONFIG_FILE = "hupa.config.file";
 
-	public static final String[] CONFIG_PROPERTIES = {
-			System.getenv("HOME") + "/.hupa/config.properties",
-			"/etc/default/hupa", "config.properties" };
-	public static final String CONF_DIR = "WEB-INF" + File.separator + "conf" + File.separator;
-
-	private String configDir;
-	
-	public ServerModul(String rootPath) {
-		configDir = rootPath + File.separator + CONF_DIR;
-	}
-
-	@Override
-	protected void configureHandlers() {
-		bindHandler(CheckSessionHandler.class);
-		bindHandler(LoginUserHandler.class);
-		bindHandler(FetchFoldersHandler.class);
-		bindHandler(FetchMessagesHandler.class);
-		bindHandler(FetchRecentMessagesHandler.class);
-		bindHandler(LogoutUserHandler.class);
-		bindHandler(GetMessageDetailsHandler.class);
-		bindHandler(DeleteMessageByUidHandler.class);
-		bindHandler(DeleteAllMessagesHandler.class);
-		bindHandler(SendMessageHandler.class);
-		bindHandler(ReplyMessageHandler.class);
-		bindHandler(ForwardMessageHandler.class);
-		bindHandler(NoopHandler.class);
-		bindHandler(MoveMessageHandler.class);
-		bindHandler(RenameFolderHandler.class);
-		bindHandler(DeleteFolderHandler.class);
-		bindHandler(CreateFolderHandler.class);
-		bindHandler(TagMessagesHandler.class);
-		bindHandler(GetRawMessageHandler.class);
-		bindHandler(SetFlagsHandler.class);
-		bind(FileItemRegistry.class).in(Singleton.class);
-		bind(IMAPStoreCache.class).to(InMemoryIMAPStoreCache.class).in(
-				Singleton.class);
-		bind(Log.class).toProvider(LogProvider.class).in(Singleton.class);
-		bind(Settings.class).toProvider(DefaultUserSettingsProvider.class).in(
-				Singleton.class);
-		bind(DownloadAttachmentServlet.class).in(Singleton.class);
-		bind(UploadAttachmentServlet.class).in(Singleton.class);
-		bind(MessageSourceServlet.class).in(Singleton.class);
-		bind(Session.class).toProvider(SessionProvider.class);
-
-		Properties properties;
-		try {
-			// Bind addresses and ports for imap and smtp
-			properties = loadProperties();
-			// Configure default parameters for Hupa in demo mode
-			if (properties.get("IMAPServerAddress").equals(InMemoryIMAPStoreCache.DEMO_MODE)) {
-				properties.put("DefaultInboxFolder", DemoModeIMAPStore.DEMO_MODE_INBOX_FOLDER);
-				properties.put("DefaultTrashFolder", DemoModeIMAPStore.DEMO_MODE_TRASH_FOLDER);
-				properties.put("DefaultSentFolder", DemoModeIMAPStore.DEMO_MODE_SENT_FOLDER);
-			}
-			Names.bindProperties(binder(), properties);
-		} catch (Exception e) {
-			throw new RuntimeException("Unable to to configure hupa server," +
-					"\nmake sure that you have a valid /etc/default/hupa file" +
-					"\nor the web container has been started with the appropriate parameter:" +
-					" -Dhupa.config.file=your_hupa_properties_file", e);
-		}
-	}
-
-	protected Properties loadProperties() throws Exception {
-		Properties properties = null;
-
-		String fileName = System.getProperty(SYS_PROP_CONFIG_FILE);
-		if (fileName != null) {
-			properties = loadProperties(fileName);
-		}
-
-		if (properties == null) {
-			for (String name : CONFIG_PROPERTIES) {
-			
-				properties = loadProperties(name);
-				if (properties != null)
-					break;
-			}
-		}
-
-		return properties;
-	}
-
-	protected Properties loadProperties(String name) {
-
-		if (name == null)
-			return null;
-
-		Properties properties = null;
-		File file = new File(name);
-		
-		// check if the file is absolute. If not prefix it with the default config dir
-		if (file.isAbsolute() == false) {
-			file = new File(configDir + File.separator + file.getName());
-		}
-		if (file.exists()) {
-			try {
-				properties = new Properties();
-				properties.load(new FileInputStream(file));
-			} catch (Exception e) {
-				properties = null;	
-				e.printStackTrace();
-			}
-		}
+    public static final String[] CONFIG_PROPERTIES = {
+            System.getenv("HOME") + "/.hupa/config.properties",
+            "/etc/default/hupa", "config.properties" };
+    public static final String CONF_DIR = "WEB-INF" + File.separator + "conf" + File.separator;
+
+    private String configDir;
+    
+    public ServerModul(String rootPath) {
+        configDir = rootPath + File.separator + CONF_DIR;
+    }
+
+    @Override
+    protected void configureHandlers() {
+        bindHandler(CheckSessionHandler.class);
+        bindHandler(LoginUserHandler.class);
+        bindHandler(FetchFoldersHandler.class);
+        bindHandler(FetchMessagesHandler.class);
+        bindHandler(FetchRecentMessagesHandler.class);
+        bindHandler(LogoutUserHandler.class);
+        bindHandler(GetMessageDetailsHandler.class);
+        bindHandler(DeleteMessageByUidHandler.class);
+        bindHandler(DeleteAllMessagesHandler.class);
+        bindHandler(SendMessageHandler.class);
+        bindHandler(ReplyMessageHandler.class);
+        bindHandler(ForwardMessageHandler.class);
+        bindHandler(NoopHandler.class);
+        bindHandler(MoveMessageHandler.class);
+        bindHandler(RenameFolderHandler.class);
+        bindHandler(DeleteFolderHandler.class);
+        bindHandler(CreateFolderHandler.class);
+        bindHandler(TagMessagesHandler.class);
+        bindHandler(GetRawMessageHandler.class);
+        bindHandler(SetFlagsHandler.class);
+        bind(FileItemRegistry.class).in(Singleton.class);
+        bind(IMAPStoreCache.class).to(InMemoryIMAPStoreCache.class).in(
+                Singleton.class);
+        bind(Log.class).toProvider(LogProvider.class).in(Singleton.class);
+        bind(Settings.class).toProvider(DefaultUserSettingsProvider.class).in(
+                Singleton.class);
+        bind(DownloadAttachmentServlet.class).in(Singleton.class);
+        bind(UploadAttachmentServlet.class).in(Singleton.class);
+        bind(MessageSourceServlet.class).in(Singleton.class);
+        bind(Session.class).toProvider(SessionProvider.class);
+
+        Properties properties;
+        try {
+            // Bind addresses and ports for imap and smtp
+            properties = loadProperties();
+            // Configure default parameters for Hupa in demo mode
+            if (properties.get("IMAPServerAddress").equals(InMemoryIMAPStoreCache.DEMO_MODE)) {
+                properties.put("DefaultInboxFolder", DemoModeIMAPStore.DEMO_MODE_INBOX_FOLDER);
+                properties.put("DefaultTrashFolder", DemoModeIMAPStore.DEMO_MODE_TRASH_FOLDER);
+                properties.put("DefaultSentFolder", DemoModeIMAPStore.DEMO_MODE_SENT_FOLDER);
+            }
+            Names.bindProperties(binder(), properties);
+        } catch (Exception e) {
+            throw new RuntimeException("Unable to to configure hupa server," +
+                    "\nmake sure that you have a valid /etc/default/hupa file" +
+                    "\nor the web container has been started with the appropriate parameter:" +
+                    " -Dhupa.config.file=your_hupa_properties_file", e);
+        }
+    }
+
+    protected Properties loadProperties() throws Exception {
+        Properties properties = null;
+
+        String fileName = System.getProperty(SYS_PROP_CONFIG_FILE);
+        if (fileName != null) {
+            properties = loadProperties(fileName);
+        }
+
+        if (properties == null) {
+            for (String name : CONFIG_PROPERTIES) {
+            
+                properties = loadProperties(name);
+                if (properties != null)
+                    break;
+            }
+        }
+
+        return properties;
+    }
+
+    protected Properties loadProperties(String name) {
+
+        if (name == null)
+            return null;
+
+        Properties properties = null;
+        File file = new File(name);
+        
+        // check if the file is absolute. If not prefix it with the default config dir
+        if (file.isAbsolute() == false) {
+            file = new File(configDir + File.separator + file.getName());
+        }
+        if (file.exists()) {
+            try {
+                properties = new Properties();
+                properties.load(new FileInputStream(file));
+            } catch (Exception e) {
+                properties = null;    
+                e.printStackTrace();
+            }
+        }
 
-		return properties;
-	}
+        return properties;
+    }
 
 }

Modified: james/hupa/trunk/server/src/main/java/org/apache/hupa/server/guice/SessionProvider.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/server/src/main/java/org/apache/hupa/server/guice/SessionProvider.java?rev=828980&r1=828979&r2=828980&view=diff
==============================================================================
--- james/hupa/trunk/server/src/main/java/org/apache/hupa/server/guice/SessionProvider.java (original)
+++ james/hupa/trunk/server/src/main/java/org/apache/hupa/server/guice/SessionProvider.java Fri Oct 23 09:56:45 2009
@@ -27,8 +27,8 @@
 
 public class SessionProvider implements Provider<Session>{
 
-	public Session get() {
-		Session session = Session.getDefaultInstance(new Properties(), null);
-		return session;
-	}
+    public Session get() {
+        Session session = Session.getDefaultInstance(new Properties(), null);
+        return session;
+    }
 }

Modified: james/hupa/trunk/server/src/main/java/org/apache/hupa/server/handler/AbstractDeleteMessageHandler.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/server/src/main/java/org/apache/hupa/server/handler/AbstractDeleteMessageHandler.java?rev=828980&r1=828979&r2=828980&view=diff
==============================================================================
--- james/hupa/trunk/server/src/main/java/org/apache/hupa/server/handler/AbstractDeleteMessageHandler.java (original)
+++ james/hupa/trunk/server/src/main/java/org/apache/hupa/server/handler/AbstractDeleteMessageHandler.java Fri Oct 23 09:56:45 2009
@@ -43,81 +43,81 @@
  * @param <Action>
  */
 public abstract class AbstractDeleteMessageHandler<Action extends DeleteMessage>
-		extends AbstractSessionHandler<Action, DeleteMessageResult> {
+        extends AbstractSessionHandler<Action, DeleteMessageResult> {
 
-	@Inject
-	public AbstractDeleteMessageHandler(IMAPStoreCache cache, Log logger,
-			Provider<HttpSession> sessionProvider) {
-		super(cache, logger, sessionProvider);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * @see org.apache.hupa.server.handler.AbstractSessionHandler#executeInternal(org.apache.hupa.shared.rpc.Session, net.customware.gwt.dispatch.server.ExecutionContext)
-	 */
-	public DeleteMessageResult executeInternal(Action action,
-			ExecutionContext context) throws ActionException {
-		org.apache.hupa.shared.data.IMAPFolder folder = action.getFolder();
-		User user = getUser();
-		try {
-			IMAPStore store = cache.get(user);
-			com.sun.mail.imap.IMAPFolder f = (com.sun.mail.imap.IMAPFolder) store
-					.getFolder(folder.getFullName());
-			// check if the folder is open, if not open it "rw"
-			if (f.isOpen() == false) {
-				f.open(com.sun.mail.imap.IMAPFolder.READ_WRITE);
-			}
-
-			Message[] mArray = getMessagesToDelete(action);
-			
-			// check if the delete was triggered not in the trash folder
-			if (folder.getFullName().equalsIgnoreCase(
-					user.getSettings().getTrashFolderName()) == false) {
-				com.sun.mail.imap.IMAPFolder trashFolder = (com.sun.mail.imap.IMAPFolder) store
-						.getFolder(user.getSettings().getTrashFolderName());
-
-				boolean trashFound = false;
-				// if the trash folder does not exist we create it
-				if (trashFolder.exists() == false) {
-					trashFound = trashFolder
-							.create(com.sun.mail.imap.IMAPFolder.READ_WRITE);
-				} else {
-					trashFound = true;
-				}
-
-				// Check if we are able to copy the messages to the trash folder
-				if (trashFound) {
-					// copy the messages to the trashfolder
-					f.copyMessages(mArray, trashFolder);
-				}
-			}
-
-			
-			// delete the messages from the folder
-			f.setFlags(mArray, new Flags(Flags.Flag.DELETED), true);
-			
-			try {
-				f.expunge(mArray);
-				f.close(false);
-			} catch (MessagingException e) {
-				// prolly UID expunge is not supported
-				f.close(true);
-			}
-			return new DeleteMessageResult(user, folder, mArray.length);
-
-		} catch (MessagingException e) {
-			logger.error("Error while deleting messages for user " + user
-					+ " in folder" + action.getFolder(), e);
-			throw new ActionException("Error while deleting messages");
-		}
-	}
-
-	/**
-	 * Return an array holding all messages which should get deleted by the given action
-	 * 
-	 * @param action
-	 * @return messages
-	 * @throws ActionException
-	 */
-	protected abstract Message[] getMessagesToDelete(Action action) throws ActionException;
+    @Inject
+    public AbstractDeleteMessageHandler(IMAPStoreCache cache, Log logger,
+            Provider<HttpSession> sessionProvider) {
+        super(cache, logger, sessionProvider);
+    }
+
+    /*
+     * (non-Javadoc)
+     * @see org.apache.hupa.server.handler.AbstractSessionHandler#executeInternal(org.apache.hupa.shared.rpc.Session, net.customware.gwt.dispatch.server.ExecutionContext)
+     */
+    public DeleteMessageResult executeInternal(Action action,
+            ExecutionContext context) throws ActionException {
+        org.apache.hupa.shared.data.IMAPFolder folder = action.getFolder();
+        User user = getUser();
+        try {
+            IMAPStore store = cache.get(user);
+            com.sun.mail.imap.IMAPFolder f = (com.sun.mail.imap.IMAPFolder) store
+                    .getFolder(folder.getFullName());
+            // check if the folder is open, if not open it "rw"
+            if (f.isOpen() == false) {
+                f.open(com.sun.mail.imap.IMAPFolder.READ_WRITE);
+            }
+
+            Message[] mArray = getMessagesToDelete(action);
+            
+            // check if the delete was triggered not in the trash folder
+            if (folder.getFullName().equalsIgnoreCase(
+                    user.getSettings().getTrashFolderName()) == false) {
+                com.sun.mail.imap.IMAPFolder trashFolder = (com.sun.mail.imap.IMAPFolder) store
+                        .getFolder(user.getSettings().getTrashFolderName());
+
+                boolean trashFound = false;
+                // if the trash folder does not exist we create it
+                if (trashFolder.exists() == false) {
+                    trashFound = trashFolder
+                            .create(com.sun.mail.imap.IMAPFolder.READ_WRITE);
+                } else {
+                    trashFound = true;
+                }
+
+                // Check if we are able to copy the messages to the trash folder
+                if (trashFound) {
+                    // copy the messages to the trashfolder
+                    f.copyMessages(mArray, trashFolder);
+                }
+            }
+
+            
+            // delete the messages from the folder
+            f.setFlags(mArray, new Flags(Flags.Flag.DELETED), true);
+            
+            try {
+                f.expunge(mArray);
+                f.close(false);
+            } catch (MessagingException e) {
+                // prolly UID expunge is not supported
+                f.close(true);
+            }
+            return new DeleteMessageResult(user, folder, mArray.length);
+
+        } catch (MessagingException e) {
+            logger.error("Error while deleting messages for user " + user
+                    + " in folder" + action.getFolder(), e);
+            throw new ActionException("Error while deleting messages");
+        }
+    }
+
+    /**
+     * Return an array holding all messages which should get deleted by the given action
+     * 
+     * @param action
+     * @return messages
+     * @throws ActionException
+     */
+    protected abstract Message[] getMessagesToDelete(Action action) throws ActionException;
 }

Modified: james/hupa/trunk/server/src/main/java/org/apache/hupa/server/handler/AbstractFetchMessagesHandler.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/server/src/main/java/org/apache/hupa/server/handler/AbstractFetchMessagesHandler.java?rev=828980&r1=828979&r2=828980&view=diff
==============================================================================
--- james/hupa/trunk/server/src/main/java/org/apache/hupa/server/handler/AbstractFetchMessagesHandler.java (original)
+++ james/hupa/trunk/server/src/main/java/org/apache/hupa/server/handler/AbstractFetchMessagesHandler.java Fri Oct 23 09:56:45 2009
@@ -50,167 +50,167 @@
 
 public abstract class AbstractFetchMessagesHandler <A extends FetchMessages> extends AbstractSessionHandler<A, FetchMessagesResult>{
 
-	public AbstractFetchMessagesHandler(IMAPStoreCache cache, Log logger,
-			Provider<HttpSession> sessionProvider) {
-		super(cache, logger, sessionProvider);
-	}
-
-	@Override
-	protected FetchMessagesResult executeInternal(A action,
-			ExecutionContext context) throws ActionException {
-		User user = getUser();
-		IMAPFolder folder = action.getFolder();
-		com.sun.mail.imap.IMAPFolder f = null;
-		try {
-			IMAPStore store = cache.get(user);
-			int start = action.getStart();
-			int offset = action.getOffset();
-			
-			f =  (com.sun.mail.imap.IMAPFolder)store.getFolder(folder.getFullName());
-
-			// check if the folder is open, if not open it read only
-			 if (f.isOpen() == false) {
-	             f.open(com.sun.mail.imap.IMAPFolder.READ_ONLY);
-	         }
-
-			int exists = f.getMessageCount();
-			
-			// if the folder is empty we have no need to process 
-			if (exists == 0) {
-				return new FetchMessagesResult(new ArrayList<org.apache.hupa.shared.data.Message>(),start,offset,exists,0);
-			}		
-			
-			Message[] messages = getMessagesToConvert(f,action);
-			
-			return new FetchMessagesResult(convert(action, f, messages),start,offset,exists,f.getUnreadMessageCount());
-			
-		} catch (Exception e) {
-			logger.error("Error while fetching headers for user " + user.getName() + " in folder " + folder,e);
-			throw new ActionException(
-					"Error while fetching headers for user " + user.getName() + " in folder " + folder);
-		
-		} finally {
-			if (f != null && f.isOpen()) {
-				try {
-					f.close(false);
-				} catch (MessagingException e) {
-					// we don't care to much about an exception on close here...
-				}
-			}
-		}
-	}
-	
-	protected abstract Message[] getMessagesToConvert(com.sun.mail.imap.IMAPFolder f, A action) throws MessagingException;
-	
-	protected ArrayList<org.apache.hupa.shared.data.Message> convert(FetchMessages action, com.sun.mail.imap.IMAPFolder f, Message[] messages) throws MessagingException {
-		ArrayList<org.apache.hupa.shared.data.Message> mList = new ArrayList<org.apache.hupa.shared.data.Message>();
-		// Setup fetchprofile to limit the stuff which is fetched 
-		FetchProfile fp = new FetchProfile();
+    public AbstractFetchMessagesHandler(IMAPStoreCache cache, Log logger,
+            Provider<HttpSession> sessionProvider) {
+        super(cache, logger, sessionProvider);
+    }
+
+    @Override
+    protected FetchMessagesResult executeInternal(A action,
+            ExecutionContext context) throws ActionException {
+        User user = getUser();
+        IMAPFolder folder = action.getFolder();
+        com.sun.mail.imap.IMAPFolder f = null;
+        try {
+            IMAPStore store = cache.get(user);
+            int start = action.getStart();
+            int offset = action.getOffset();
+            
+            f =  (com.sun.mail.imap.IMAPFolder)store.getFolder(folder.getFullName());
+
+            // check if the folder is open, if not open it read only
+             if (f.isOpen() == false) {
+                 f.open(com.sun.mail.imap.IMAPFolder.READ_ONLY);
+             }
+
+            int exists = f.getMessageCount();
+            
+            // if the folder is empty we have no need to process 
+            if (exists == 0) {
+                return new FetchMessagesResult(new ArrayList<org.apache.hupa.shared.data.Message>(),start,offset,exists,0);
+            }        
+            
+            Message[] messages = getMessagesToConvert(f,action);
+            
+            return new FetchMessagesResult(convert(action, f, messages),start,offset,exists,f.getUnreadMessageCount());
+            
+        } catch (Exception e) {
+            logger.error("Error while fetching headers for user " + user.getName() + " in folder " + folder,e);
+            throw new ActionException(
+                    "Error while fetching headers for user " + user.getName() + " in folder " + folder);
+        
+        } finally {
+            if (f != null && f.isOpen()) {
+                try {
+                    f.close(false);
+                } catch (MessagingException e) {
+                    // we don't care to much about an exception on close here...
+                }
+            }
+        }
+    }
+    
+    protected abstract Message[] getMessagesToConvert(com.sun.mail.imap.IMAPFolder f, A action) throws MessagingException;
+    
+    protected ArrayList<org.apache.hupa.shared.data.Message> convert(FetchMessages action, com.sun.mail.imap.IMAPFolder f, Message[] messages) throws MessagingException {
+        ArrayList<org.apache.hupa.shared.data.Message> mList = new ArrayList<org.apache.hupa.shared.data.Message>();
+        // Setup fetchprofile to limit the stuff which is fetched 
+        FetchProfile fp = new FetchProfile();
         fp.add(FetchProfile.Item.ENVELOPE);
         fp.add(FetchProfile.Item.FLAGS);
         fp.add(FetchProfile.Item.CONTENT_INFO);
         f.fetch(messages, fp);
 
         // loop over the fetched messages
-		for (int i = 0; i < messages.length; i++) {
-			org.apache.hupa.shared.data.Message msg = new org.apache.hupa.shared.data.Message();
-			Message m = messages[i];				
-			String from = null;
-			if (m.getFrom() != null && m.getFrom().length >0 ) {
-				from = m.getFrom()[0].toString().trim();
-				try {
-					from = MimeUtility.decodeText(from);
-				} catch (UnsupportedEncodingException e) {
-					logger.debug("Unable to decode from " + from, e);
-				}
-			}
-			msg.setFrom(from);
-			
-			ArrayList<String> to = new ArrayList<String>();
-			// Add to addresses
-			Address[] toArray = m.getRecipients(RecipientType.TO);
-			if (toArray != null) {
-				for (int b =0; b < toArray.length;b++) {
-					to.add(toArray[b].toString());
-				}
-			}
-			msg.setTo(to);
-			
-			// Check if a subject exist and if so decode it
-			String subject = m.getSubject();
-			if (subject != null) {
-				try {
-					subject = MimeUtility.decodeText(subject);
-				} catch (UnsupportedEncodingException e) {
-					logger.debug("Unable to decode subject " + subject, e);
-				}
-			}
-			msg.setSubject(subject);
-			
-			// Add cc addresses
-			Address[] ccArray = m.getRecipients(RecipientType.CC);
-			ArrayList<String> cc = new ArrayList<String>();
-
-			if (ccArray != null) {
-				for (int b =0; b < ccArray.length;b++) {
-					cc.add(ccArray[b].toString());
-				}
-			}
-			msg.setCc(cc);
-
-			msg.setReceivedDate(m.getReceivedDate());
-
-			// Add flags
-			ArrayList<IMAPFlag> iFlags = JavamailUtil.convert(m.getFlags());
-			
-		  
-			ArrayList<Tag> tags = new ArrayList<Tag>();
-			String[] userFlags = m.getFlags().getUserFlags();
-			for (int a = 0; a < userFlags.length;a++) {
-				String flag = userFlags[a];
-				if (flag.startsWith(Tag.PREFIX)) {
-					tags.add(new Tag(flag.substring(Tag.PREFIX.length())));
-				}
-			}
-			
-			msg.setUid(f.getUID(m));
-			msg.setFlags(iFlags);
-			msg.setTags(tags);
-			msg.setHasAttachments(hasAttachment(m));
-			
-			mList.add(0, msg);
-			if (i > action.getOffset()) {
-				break;
-			}
-		}
-		return mList;
-	}
-	
-	private boolean hasAttachment(Message message) throws MessagingException {
-		if (message.getContentType().startsWith("multipart/")) {
-			try {
-				Object content;
-
-				content = message.getContent();
-
-				if (content instanceof Multipart) {
-					Multipart mp = (Multipart) content;
-					if (mp.getCount() > 1) {
-						for (int i = 0; i < mp.getCount(); i++) {
-							String disp = mp.getBodyPart(i).getDisposition();
-							if (disp != null
-									&& disp.equalsIgnoreCase(Part.ATTACHMENT)) {
-								return true;
-							}
-						}
-					}
-
-				}
-			} catch (IOException e) {
-				logger.error("Error while get content of message " + message.getMessageNumber());
-			}
-			
-		}
-		return false;
-	}
+        for (int i = 0; i < messages.length; i++) {
+            org.apache.hupa.shared.data.Message msg = new org.apache.hupa.shared.data.Message();
+            Message m = messages[i];                
+            String from = null;
+            if (m.getFrom() != null && m.getFrom().length >0 ) {
+                from = m.getFrom()[0].toString().trim();
+                try {
+                    from = MimeUtility.decodeText(from);
+                } catch (UnsupportedEncodingException e) {
+                    logger.debug("Unable to decode from " + from, e);
+                }
+            }
+            msg.setFrom(from);
+            
+            ArrayList<String> to = new ArrayList<String>();
+            // Add to addresses
+            Address[] toArray = m.getRecipients(RecipientType.TO);
+            if (toArray != null) {
+                for (int b =0; b < toArray.length;b++) {
+                    to.add(toArray[b].toString());
+                }
+            }
+            msg.setTo(to);
+            
+            // Check if a subject exist and if so decode it
+            String subject = m.getSubject();
+            if (subject != null) {
+                try {
+                    subject = MimeUtility.decodeText(subject);
+                } catch (UnsupportedEncodingException e) {
+                    logger.debug("Unable to decode subject " + subject, e);
+                }
+            }
+            msg.setSubject(subject);
+            
+            // Add cc addresses
+            Address[] ccArray = m.getRecipients(RecipientType.CC);
+            ArrayList<String> cc = new ArrayList<String>();
+
+            if (ccArray != null) {
+                for (int b =0; b < ccArray.length;b++) {
+                    cc.add(ccArray[b].toString());
+                }
+            }
+            msg.setCc(cc);
+
+            msg.setReceivedDate(m.getReceivedDate());
+
+            // Add flags
+            ArrayList<IMAPFlag> iFlags = JavamailUtil.convert(m.getFlags());
+            
+          
+            ArrayList<Tag> tags = new ArrayList<Tag>();
+            String[] userFlags = m.getFlags().getUserFlags();
+            for (int a = 0; a < userFlags.length;a++) {
+                String flag = userFlags[a];
+                if (flag.startsWith(Tag.PREFIX)) {
+                    tags.add(new Tag(flag.substring(Tag.PREFIX.length())));
+                }
+            }
+            
+            msg.setUid(f.getUID(m));
+            msg.setFlags(iFlags);
+            msg.setTags(tags);
+            msg.setHasAttachments(hasAttachment(m));
+            
+            mList.add(0, msg);
+            if (i > action.getOffset()) {
+                break;
+            }
+        }
+        return mList;
+    }
+    
+    private boolean hasAttachment(Message message) throws MessagingException {
+        if (message.getContentType().startsWith("multipart/")) {
+            try {
+                Object content;
+
+                content = message.getContent();
+
+                if (content instanceof Multipart) {
+                    Multipart mp = (Multipart) content;
+                    if (mp.getCount() > 1) {
+                        for (int i = 0; i < mp.getCount(); i++) {
+                            String disp = mp.getBodyPart(i).getDisposition();
+                            if (disp != null
+                                    && disp.equalsIgnoreCase(Part.ATTACHMENT)) {
+                                return true;
+                            }
+                        }
+                    }
+
+                }
+            } catch (IOException e) {
+                logger.error("Error while get content of message " + message.getMessageNumber());
+            }
+            
+        }
+        return false;
+    }
 }



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