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 do...@apache.org on 2013/09/12 05:32:29 UTC

svn commit: r1522217 - in /james/hupa/trunk: client/src/main/java/org/apache/hupa/client/ioc/ client/src/main/java/org/apache/hupa/client/rf/ client/src/main/java/org/apache/hupa/client/ui/ server/src/main/java/org/apache/hupa/server/ioc/ server/src/ma...

Author: dongxu
Date: Thu Sep 12 03:32:28 2013
New Revision: 1522217

URL: http://svn.apache.org/r1522217
Log:
Fix issue #15.
Just replace the west tree by using CellTree, resulting in issue #16 & #17

Added:
    james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FolderTree.java
      - copied, changed from r1522216, james/hupa/trunk/server/src/main/java/org/apache/hupa/server/service/FetchFoldersService.java
    james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FolderTreeViewModel.java
Modified:
    james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ioc/AppGinModule.java
    james/hupa/trunk/client/src/main/java/org/apache/hupa/client/rf/FetchFoldersRequest.java
    james/hupa/trunk/client/src/main/java/org/apache/hupa/client/rf/HupaRequestFactory.java
    james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/WestView.java
    james/hupa/trunk/server/src/main/java/org/apache/hupa/server/ioc/GuiceServerModule.java
    james/hupa/trunk/server/src/main/java/org/apache/hupa/server/service/FetchFoldersService.java
    james/hupa/trunk/server/src/main/java/org/apache/hupa/server/service/FetchFoldersServiceImpl.java
    james/hupa/trunk/server/src/main/java/org/apache/hupa/server/service/ImapFolderServiceImpl.java
    james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/data/ImapFolderImpl.java
    james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/domain/ImapFolder.java

Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ioc/AppGinModule.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ioc/AppGinModule.java?rev=1522217&r1=1522216&r2=1522217&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ioc/AppGinModule.java (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ioc/AppGinModule.java Thu Sep 12 03:32:28 2013
@@ -164,6 +164,7 @@ import org.apache.hupa.client.place.Defa
 import org.apache.hupa.client.rf.HupaRequestFactory;
 import org.apache.hupa.client.ui.AppLayout;
 import org.apache.hupa.client.ui.AppLayoutImpl;
+import org.apache.hupa.client.ui.FolderTreeViewModel;
 import org.apache.hupa.client.ui.IMAPMessageListView;
 <<<<<<< HEAD
 <<<<<<< HEAD
@@ -432,6 +433,7 @@ public class AppGinModule extends Abstra
 		bind(IMAPMessageActivity.class).in(Singleton.class);
 
 		bind(MessagesCellTable.class).in(Singleton.class);
+		bind(FolderTreeViewModel.class).in(Singleton.class);
 		// Places
 		bind(PlaceHistoryMapper.class).to(AppPlaceHistoryMapper.class).in(Singleton.class);
 

Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/rf/FetchFoldersRequest.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/rf/FetchFoldersRequest.java?rev=1522217&r1=1522216&r2=1522217&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/rf/FetchFoldersRequest.java (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/rf/FetchFoldersRequest.java Thu Sep 12 03:32:28 2013
@@ -31,5 +31,9 @@ import com.google.web.bindery.requestfac
 
 @Service(value = FetchFoldersService.class, locator = IocRfServiceLocator.class)
 public interface FetchFoldersRequest extends RequestContext {
+<<<<<<< HEAD
 	Request<List<ImapFolder>> fetch(ImapFolder imapFolder, Boolean recursive);
+=======
+	Request<List<ImapFolder>> fetch(ImapFolder imapFolder);
+>>>>>>> Fix issue #15.
 }

Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/rf/HupaRequestFactory.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/rf/HupaRequestFactory.java?rev=1522217&r1=1522216&r2=1522217&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/rf/HupaRequestFactory.java (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/rf/HupaRequestFactory.java Thu Sep 12 03:32:28 2013
@@ -96,6 +96,7 @@ public interface HupaRequestFactory exte
 =======
 =======
 	LogoutUserRequest logoutRequest();
+	FetchFoldersRequest fetchFoldersRequest();
 	FetchMessagesRequest messagesRequest();
 	MoveMessageRequest moveMessageRequest();
 >>>>>>> other RFs

Copied: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FolderTree.java (from r1522216, james/hupa/trunk/server/src/main/java/org/apache/hupa/server/service/FetchFoldersService.java)
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FolderTree.java?p2=james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FolderTree.java&p1=james/hupa/trunk/server/src/main/java/org/apache/hupa/server/service/FetchFoldersService.java&r1=1522216&r2=1522217&rev=1522217&view=diff
==============================================================================
--- james/hupa/trunk/server/src/main/java/org/apache/hupa/server/service/FetchFoldersService.java (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FolderTree.java Thu Sep 12 03:32:28 2013
@@ -17,15 +17,16 @@
  * under the License.                                           *
  ****************************************************************/
 
-package org.apache.hupa.server.service;
+package org.apache.hupa.client.ui;
 
-import java.util.List;
+import com.google.gwt.user.cellview.client.CellTree;
+import com.google.gwt.view.client.TreeViewModel;
 
-import javax.mail.MessagingException;
+public class FolderTree extends CellTree {
 
-import org.apache.hupa.shared.domain.ImapFolder;
-import org.apache.hupa.shared.exception.HupaException;
+	public <T> FolderTree(TreeViewModel viewModel, T rootValue, Resources resources) {
+	    super(viewModel, rootValue, resources);
+	    // TODO Auto-generated constructor stub
+    }
 
-public interface FetchFoldersService {
-	List<ImapFolder> fetch(ImapFolder folder, Boolean recursive) throws MessagingException, HupaException;
 }

Added: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FolderTreeViewModel.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FolderTreeViewModel.java?rev=1522217&view=auto
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FolderTreeViewModel.java (added)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/FolderTreeViewModel.java Thu Sep 12 03:32:28 2013
@@ -0,0 +1,104 @@
+/****************************************************************
+ * Licensed to the Apache Software Foundation (ASF) under one   *
+ * or more contributor license agreements.  See the NOTICE file *
+ * distributed with this work for additional information        *
+ * regarding copyright ownership.  The ASF licenses this file   *
+ * to you under the Apache License, Version 2.0 (the            *
+ * "License"); you may not use this file except in compliance   *
+ * with the License.  You may obtain a copy of the License at   *
+ *                                                              *
+ *   http://www.apache.org/licenses/LICENSE-2.0                 *
+ *                                                              *
+ * Unless required by applicable law or agreed to in writing,   *
+ * software distributed under the License is distributed on an  *
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY       *
+ * KIND, either express or implied.  See the License for the    *
+ * specific language governing permissions and limitations      *
+ * under the License.                                           *
+ ****************************************************************/
+
+package org.apache.hupa.client.ui;
+
+import java.util.List;
+
+import org.apache.hupa.client.rf.FetchFoldersRequest;
+import org.apache.hupa.client.rf.HupaRequestFactory;
+import org.apache.hupa.shared.domain.ImapFolder;
+
+import com.google.gwt.cell.client.AbstractCell;
+import com.google.gwt.cell.client.Cell;
+import com.google.gwt.safehtml.shared.SafeHtmlBuilder;
+import com.google.gwt.view.client.AsyncDataProvider;
+import com.google.gwt.view.client.HasData;
+import com.google.gwt.view.client.ListDataProvider;
+import com.google.gwt.view.client.Range;
+import com.google.gwt.view.client.TreeViewModel;
+import com.google.inject.Inject;
+import com.google.web.bindery.requestfactory.shared.Receiver;
+
+public class FolderTreeViewModel implements TreeViewModel {
+
+	@Inject protected HupaRequestFactory rf;
+
+	/**
+	 * Get the {@link NodeInfo} that provides the children of the specified
+	 * value.
+	 */
+	public <T> NodeInfo<?> getNodeInfo(T value) {
+		return new DefaultNodeInfo<ImapFolder>(new ImapFolderListDataProvider((ImapFolder) value),
+		        new AbstractCell<ImapFolder>() {
+			        @Override
+			        public void render(Context context, ImapFolder value, SafeHtmlBuilder sb) {
+				        if (value != null) {
+					        sb.appendEscaped(value.getName());
+				        }
+			        }
+		        });
+	}
+
+	private class ImapFolderListDataProvider extends AsyncDataProvider<ImapFolder> {
+
+		public ImapFolderListDataProvider(ImapFolder folder) {
+			this.folder = folder;
+		}
+
+		ImapFolder folder;
+
+		@Override
+		public void addDataDisplay(HasData<ImapFolder> display) {
+			super.addDataDisplay(display);
+
+		}
+
+		@Override
+		protected void onRangeChanged(HasData<ImapFolder> display) {
+			rf.fetchFoldersRequest().fetch(folder).fire(new Receiver<List<ImapFolder>>() {
+				@Override
+				public void onSuccess(List<ImapFolder> response) {
+					if (response == null || response.size() == 0) {
+						updateRowCount(-1, true);
+					} else
+						updateRowData(0, response);
+				}
+			});
+
+		}
+
+	}
+
+	/**
+	 * Check if the specified value represents a leaf node. Leaf nodes cannot be
+	 * opened.
+	 */
+	public boolean isLeaf(Object value) {
+		if (value == null)
+			return false;
+		if (value instanceof ImapFolder) {
+			ImapFolder folder = (ImapFolder) value;
+			if (!folder.getHasChildren())
+				return true;
+		}
+		return false;
+	}
+
+}

Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/WestView.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/WestView.java?rev=1522217&r1=1522216&r2=1522217&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/WestView.java (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/WestView.java Thu Sep 12 03:32:28 2013
@@ -132,14 +132,20 @@ import com.google.gwt.core.client.GWT;
 import com.google.gwt.event.dom.client.HasClickHandlers;
 import com.google.gwt.event.logical.shared.HasSelectionHandlers;
 import com.google.gwt.event.shared.EventBus;
+import com.google.gwt.user.cellview.client.CellTree;
+import com.google.gwt.user.cellview.client.TreeNode;
 import com.google.gwt.user.client.ui.Composite;
 import com.google.gwt.user.client.ui.DockPanel;
+import com.google.gwt.user.client.ui.FlowPanel;
 import com.google.gwt.user.client.ui.HorizontalPanel;
 import com.google.gwt.user.client.ui.Panel;
 import com.google.gwt.user.client.ui.Tree;
 import com.google.gwt.user.client.ui.TreeItem;
 import com.google.gwt.user.client.ui.VerticalPanel;
 import com.google.gwt.user.client.ui.Widget;
+import com.google.gwt.view.client.ProvidesKey;
+import com.google.gwt.view.client.SingleSelectionModel;
+import com.google.gwt.view.client.TreeViewModel;
 import com.google.inject.Inject;
 /**
  * MainView acts like a container of other widgets which will get displayed after the user successfully logged in
@@ -180,10 +186,11 @@ public class WestView extends Composite 
     private EventBus bus;
     private PagingScrollTableRowDragController controller;
     protected User user;
-
+    private TreeViewModel viewModel;
     
     @Inject
-    public WestView(EventBus bus, PagingScrollTableRowDragController controllerProvider, HupaConstants constants, HupaMessages messages) {
+    public WestView(FolderTreeViewModel viewModel, EventBus bus, PagingScrollTableRowDragController controllerProvider, HupaConstants constants, HupaMessages messages) {
+    	this.viewModel = viewModel;
         this.constants = constants;
         this.messages = messages;
         this.controller = controllerProvider;
@@ -230,6 +237,7 @@ public class WestView extends Composite 
 >>>>>>> Change to new mvp framework - first step
 =======
         west.setWidth("100%");
+<<<<<<< HEAD
 >>>>>>> decorate the theme
         initWidget(west);
     }
@@ -237,6 +245,36 @@ public class WestView extends Composite 
     private void createWest() {
 <<<<<<< HEAD
 <<<<<<< HEAD
+=======
+//        initWidget(west);
+        cellTree = new FolderTree(viewModel, null, res);
+        putCellTree();
+        
+    }
+
+	public final ProvidesKey<ImapFolder> KEY_PROVIDER = new ProvidesKey<ImapFolder>() {
+		@Override
+		public Object getKey(ImapFolder item) {
+			return item == null ? null : item.getFullName();
+		}
+	};
+    CellTree.Resources res = GWT.create(CellTree.BasicResources.class);
+    final SingleSelectionModel<ImapFolder> selectionModel =
+    	      new SingleSelectionModel<ImapFolder>(KEY_PROVIDER);
+    CellTree cellTree;
+    FlowPanel panel = new FlowPanel();
+    private void putCellTree() {
+
+//        TreeNode rootNode = cellTree.getRootTreeNode();
+//        TreeNode firstPlaylist = rootNode.setChildOpen(0, true);
+//        firstPlaylist.setChildOpen(0, true);
+    	initWidget(cellTree);
+    	cellTree.setAnimationEnabled(true);
+    	
+    }
+
+	private void createWest() {
+>>>>>>> Fix issue #15.
         west = new VerticalPanel();
 <<<<<<< HEAD
 =======

Modified: james/hupa/trunk/server/src/main/java/org/apache/hupa/server/ioc/GuiceServerModule.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/server/src/main/java/org/apache/hupa/server/ioc/GuiceServerModule.java?rev=1522217&r1=1522216&r2=1522217&view=diff
==============================================================================
--- james/hupa/trunk/server/src/main/java/org/apache/hupa/server/ioc/GuiceServerModule.java (original)
+++ james/hupa/trunk/server/src/main/java/org/apache/hupa/server/ioc/GuiceServerModule.java Thu Sep 12 03:32:28 2013
@@ -60,10 +60,15 @@ import org.apache.hupa.server.service.De
 import org.apache.hupa.server.service.DeleteMessageByUidService;
 import org.apache.hupa.server.service.DeleteMessageByUidServiceImpl;
 <<<<<<< HEAD
+<<<<<<< HEAD
 import org.apache.hupa.server.service.FetchFoldersService;
 import org.apache.hupa.server.service.FetchFoldersServiceImpl;
 =======
 >>>>>>> delete messages, make WestActivity Singleton
+=======
+import org.apache.hupa.server.service.FetchFoldersService;
+import org.apache.hupa.server.service.FetchFoldersServiceImpl;
+>>>>>>> Fix issue #15.
 import org.apache.hupa.server.service.FetchMessagesService;
 import org.apache.hupa.server.service.FetchMessagesServiceImpl;
 import org.apache.hupa.server.service.GetMessageDetailsService;
@@ -430,6 +435,7 @@ public class GuiceServerModule extends A
 		bind(ImapFolderService.class).to(ImapFolderServiceImpl.class);
 <<<<<<< HEAD
 <<<<<<< HEAD
+<<<<<<< HEAD
 		bind(FetchFoldersService.class).to(FetchFoldersServiceImpl.class);
 		bind(FetchMessagesService.class).to(FetchMessagesServiceImpl.class);
 		bind(CreateFolderService.class).to(CreateFolderServiceImpl.class);
@@ -458,6 +464,9 @@ public class GuiceServerModule extends A
         bind(UserPreferencesStorage.class).to(InImapUserPreferencesStorage.class);
 =======
 =======
+=======
+		bind(FetchFoldersService.class).to(FetchFoldersServiceImpl.class);
+>>>>>>> Fix issue #15.
 		bind(FetchMessagesService.class).to(FetchMessagesServiceImpl.class);
 <<<<<<< HEAD
 >>>>>>> try to fetch messages, yet can not fire the login event in ModelTable such that just get a NullPointerException in it.

Modified: james/hupa/trunk/server/src/main/java/org/apache/hupa/server/service/FetchFoldersService.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/server/src/main/java/org/apache/hupa/server/service/FetchFoldersService.java?rev=1522217&r1=1522216&r2=1522217&view=diff
==============================================================================
--- james/hupa/trunk/server/src/main/java/org/apache/hupa/server/service/FetchFoldersService.java (original)
+++ james/hupa/trunk/server/src/main/java/org/apache/hupa/server/service/FetchFoldersService.java Thu Sep 12 03:32:28 2013
@@ -24,8 +24,14 @@ import java.util.List;
 import javax.mail.MessagingException;
 
 import org.apache.hupa.shared.domain.ImapFolder;
+<<<<<<< HEAD
 import org.apache.hupa.shared.exception.HupaException;
 
 public interface FetchFoldersService {
 	List<ImapFolder> fetch(ImapFolder folder, Boolean recursive) throws MessagingException, HupaException;
+=======
+
+public interface FetchFoldersService {
+	List<ImapFolder> fetch(ImapFolder folder) throws MessagingException;
+>>>>>>> Fix issue #15.
 }

Modified: james/hupa/trunk/server/src/main/java/org/apache/hupa/server/service/FetchFoldersServiceImpl.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/server/src/main/java/org/apache/hupa/server/service/FetchFoldersServiceImpl.java?rev=1522217&r1=1522216&r2=1522217&view=diff
==============================================================================
--- james/hupa/trunk/server/src/main/java/org/apache/hupa/server/service/FetchFoldersServiceImpl.java (original)
+++ james/hupa/trunk/server/src/main/java/org/apache/hupa/server/service/FetchFoldersServiceImpl.java Thu Sep 12 03:32:28 2013
@@ -27,18 +27,25 @@ import javax.mail.MessagingException;
 
 import org.apache.hupa.shared.data.ImapFolderImpl;
 import org.apache.hupa.shared.domain.ImapFolder;
+<<<<<<< HEAD
 import org.apache.hupa.shared.domain.User;
 import org.apache.hupa.shared.exception.HupaException;
+=======
+>>>>>>> Fix issue #15.
 
 import com.sun.mail.imap.IMAPStore;
 
 public class FetchFoldersServiceImpl extends AbstractService implements FetchFoldersService {
 
 	@Override
+<<<<<<< HEAD
 	public List<ImapFolder> fetch(ImapFolder imapFolder, Boolean recursive) throws MessagingException, HupaException {
 		if(recursive){
 			return this.pullAll();
 		}
+=======
+	public List<ImapFolder> fetch(ImapFolder imapFolder) throws MessagingException {
+>>>>>>> Fix issue #15.
 		try {
 			Folder folder = null;
 			IMAPStore store = cache.get(getUser());
@@ -58,6 +65,7 @@ public class FetchFoldersServiceImpl ext
 			throw new MessagingException();
 		}
 	}
+<<<<<<< HEAD
 	
 	public List<ImapFolder> pullAll() throws MessagingException, HupaException {
 		User user = getUser();
@@ -131,10 +139,13 @@ public class FetchFoldersServiceImpl ext
 
 		return iFolder;
 	}
+=======
+>>>>>>> Fix issue #15.
 
 	/**
 	 * Create a new IMAPFolder from the given Folder
 	 * 
+<<<<<<< HEAD
 	 * @param folder
 	 *            Current folder
 	 * @return imapFolder Created IMAPFolder
@@ -145,11 +156,23 @@ public class FetchFoldersServiceImpl ext
 	 *             If an error occurs
 	 */
 	private ImapFolder createImapFolder(Folder folder) throws HupaException {
+=======
+	 * @param folder Current folder
+	 * @return imapFolder Created IMAPFolder
+	 * @throws Exception If an error occurs
+	 * @throws MessagingException If an error occurs
+	 */
+	private ImapFolder createImapFolder(Folder folder) {
+>>>>>>> Fix issue #15.
 		String fullName = folder.getFullName();
 		String delimiter;
 		ImapFolder iFolder = null;
 		try {
+<<<<<<< HEAD
 			System.out.println("Creating folder2: " + fullName + " for user: " + this.getUser());
+=======
+			System.out.println("Creating folder: " + fullName + " for user: ");
+>>>>>>> Fix issue #15.
 			delimiter = String.valueOf(folder.getSeparator());
 			iFolder = new ImapFolderImpl(fullName);
 			iFolder.setDelimiter(delimiter);
@@ -158,7 +181,11 @@ public class FetchFoldersServiceImpl ext
 			iFolder.setMessageCount(folder.getMessageCount());
 			iFolder.setSubscribed(folder.isSubscribed());
 			iFolder.setUnseenMessageCount(folder.getUnreadMessageCount());
+<<<<<<< HEAD
 			if (folder.list().length != 0) {
+=======
+			if(folder.list().length != 0){
+>>>>>>> Fix issue #15.
 				iFolder.setHasChildren(true);
 			}
 		} catch (MessagingException e) {

Modified: james/hupa/trunk/server/src/main/java/org/apache/hupa/server/service/ImapFolderServiceImpl.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/server/src/main/java/org/apache/hupa/server/service/ImapFolderServiceImpl.java?rev=1522217&r1=1522216&r2=1522217&view=diff
==============================================================================
--- james/hupa/trunk/server/src/main/java/org/apache/hupa/server/service/ImapFolderServiceImpl.java (original)
+++ james/hupa/trunk/server/src/main/java/org/apache/hupa/server/service/ImapFolderServiceImpl.java Thu Sep 12 03:32:28 2013
@@ -133,8 +133,8 @@ public class ImapFolderServiceImpl exten
 		try {
 			IMAPStore store = cache.get(user);
 			com.sun.mail.imap.IMAPFolder folder = (com.sun.mail.imap.IMAPFolder) store.getDefaultFolder();
-
-			// List of mail 'root' imap folders TODO can not make this as a field of the class, or the client will get more and more appended folders.
+			
+			// List of mail 'root' imap folders 
 			List<ImapFolder> imapFolders = new ArrayList<ImapFolder>();
 			// Create IMAPFolder tree list
 			for (Folder f : folder.list()) {

Modified: james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/data/ImapFolderImpl.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/data/ImapFolderImpl.java?rev=1522217&r1=1522216&r2=1522217&view=diff
==============================================================================
--- james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/data/ImapFolderImpl.java (original)
+++ james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/data/ImapFolderImpl.java Thu Sep 12 03:32:28 2013
@@ -158,6 +158,7 @@ public class ImapFolderImpl implements I
     private int messageCount;
     private int unseenMessageCount;
     private boolean subscribed = false;
+    private boolean hasChildren = false;
 
     public ImapFolderImpl() {
     }
@@ -374,6 +375,19 @@ public class ImapFolderImpl implements I
 		folder.setUnseenMessageCount(this.unseenMessageCount);
     }
 
+<<<<<<< HEAD
 >>>>>>> fix AllDelete feature in issue 11. and scrub some code
+=======
+	@Override
+    public boolean getHasChildren() {
+	    return hasChildren;
+    }
+	
+	@Override
+	public void setHasChildren(boolean hasChildren){
+		this.hasChildren = hasChildren;
+	}
+
+>>>>>>> Fix issue #15.
     
 }

Modified: james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/domain/ImapFolder.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/domain/ImapFolder.java?rev=1522217&r1=1522216&r2=1522217&view=diff
==============================================================================
--- james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/domain/ImapFolder.java (original)
+++ james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/domain/ImapFolder.java Thu Sep 12 03:32:28 2013
@@ -40,6 +40,9 @@ public interface ImapFolder extends Valu
 	void setDelimiter(String delimiter);
 	void setSubscribed(boolean subscribed);
 	boolean getSubscribed();
+	
+	boolean getHasChildren();
+	void setHasChildren(boolean hasChildren);
 
 	/**
 	 * use this to proxy the dumping method, or an alternative to clone, for the ValueProxy's must be set/get-ter



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