You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@roller.apache.org by gm...@apache.org on 2014/03/09 03:10:33 UTC

svn commit: r1575646 - in /roller/trunk/app/src: main/java/org/apache/roller/weblogger/business/ main/java/org/apache/roller/weblogger/business/jpa/ main/java/org/apache/roller/weblogger/business/plugins/entry/ main/java/org/apache/roller/weblogger/poj...

Author: gmazza
Date: Sun Mar  9 02:10:32 2014
New Revision: 1575646

URL: http://svn.apache.org/r1575646
Log:
Removed usage of bookmark folder paths.

Modified:
    roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/BookmarkManager.java
    roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/jpa/JPABookmarkManagerImpl.java
    roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/plugins/entry/TopicTagPlugin.java
    roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/WeblogBookmarkFolder.java
    roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/wrapper/WeblogBookmarkFolderWrapper.java
    roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/Bookmarks.java
    roller/trunk/app/src/main/resources/org/apache/roller/weblogger/pojos/WeblogBookmark.orm.xml
    roller/trunk/app/src/main/resources/org/apache/roller/weblogger/pojos/WeblogBookmarkFolder.orm.xml
    roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/BookmarkAdd.jsp
    roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/BookmarkEdit.jsp
    roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/Bookmarks.jsp
    roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/BookmarksSidebar.jsp
    roller/trunk/app/src/main/webapp/WEB-INF/velocity/weblog.vm
    roller/trunk/app/src/main/webapp/themes/basic/sidebar.vm
    roller/trunk/app/src/main/webapp/themes/brushedmetal/sidebar.vm
    roller/trunk/app/src/main/webapp/themes/sotto/sidebar.vm
    roller/trunk/app/src/test/java/org/apache/roller/weblogger/business/BookmarkTest.java
    roller/trunk/app/src/test/java/org/apache/roller/weblogger/business/FolderCRUDTest.java
    roller/trunk/app/src/test/java/org/apache/roller/weblogger/business/FolderFunctionalityTest.java

Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/BookmarkManager.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/BookmarkManager.java?rev=1575646&r1=1575645&r2=1575646&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/BookmarkManager.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/BookmarkManager.java Sun Mar  9 02:10:32 2014
@@ -47,7 +47,7 @@ public interface BookmarkManager {
     /**
      * Remove a Folder.  
      * 
-     * Also removes any subfolders and bookmarks.
+     * Also removes any bookmarks it contains
      *
      * @param folder The folder to be removed.
      * @throws WebloggerException If there is a problem.
@@ -56,18 +56,6 @@ public interface BookmarkManager {
     
     
     /**
-     * Move a folder under another folder.
-     *
-     * This moves the src folder itself and all children and associated bookmarks.
-     */
-    void moveFolder(WeblogBookmarkFolder src,
-
-    WeblogBookmarkFolder dest
-)
-            throws WebloggerException;
-    
-    
-    /**
      * Lookup a folder by ID.
      *
      * @param id The id of the folder to lookup.
@@ -102,11 +90,11 @@ public interface BookmarkManager {
      * Get a folder from a weblog based on its path.
      *
      * @param weblog The weblog we want the folder from.
-     * @param path The full path of the folder.
+     * @param name The folder name.
      * @return FolderData The folder from the given path, or null if not found.
      * @throws WebloggerException If there is a problem.
      */
-    WeblogBookmarkFolder getFolder(Weblog weblog, String path)
+    WeblogBookmarkFolder getFolder(Weblog weblog, String name)
             throws WebloggerException;
     
     
@@ -142,11 +130,10 @@ public interface BookmarkManager {
      * Lookup all Bookmarks in a folder, optionally search recursively.
      *
      * @param folder The folder to get the bookmarks from.
-     * @param recurse True if bookmarks should be included.
      * @return List The list of bookmarks found.
      * @throws WebloggerException If there is a problem.
      */
-    List<WeblogBookmark> getBookmarks(WeblogBookmarkFolder folder, boolean recurse)
+    List<WeblogBookmark> getBookmarks(WeblogBookmarkFolder folder)
             throws WebloggerException;
     
     

Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/jpa/JPABookmarkManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/jpa/JPABookmarkManagerImpl.java?rev=1575646&r1=1575645&r2=1575646&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/jpa/JPABookmarkManagerImpl.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/jpa/JPABookmarkManagerImpl.java Sun Mar  9 02:10:32 2014
@@ -128,65 +128,7 @@ public class JPABookmarkManagerImpl impl
         Weblog weblog = roller.getWeblogManager().getWeblog(websiteid);
         roller.getWeblogManager().saveWeblog(weblog);
     }
-    
-    public void moveFolder(WeblogBookmarkFolder srcFolder, WeblogBookmarkFolder destFolder)
-            throws WebloggerException {
-        
-        // TODO: this check should be made before calling this method?
-        if (destFolder.descendentOf(srcFolder)) {
-            throw new WebloggerException(
-                    "ERROR cannot move parent folder into it's own child");
-        }
-        
-        log.debug("Moving folder " + srcFolder.getPath() + " under " +
-            destFolder.getPath());
-        
-        // Manage relationships
-        WeblogBookmarkFolder oldParent = srcFolder.getParent();
-        if(oldParent != null) {
-            oldParent.getFolders().add(srcFolder);
-        }
-        srcFolder.setParent(destFolder);
-        destFolder.getFolders().add(srcFolder);
-        
-        if("/".equals(destFolder.getPath())) {
-            srcFolder.setPath("/"+srcFolder.getName());
-        } else {
-            srcFolder.setPath(destFolder.getPath() + "/" + srcFolder.getName());
-        }
-        saveFolder(srcFolder);
-        
-        // the main work to be done for a category move is to update the 
-        // path attribute of the category and all descendent categories
-        updatePathTree(srcFolder);
-    }    
 
-    // updates the paths of all descendents of the given folder
-    private void updatePathTree(WeblogBookmarkFolder folder) throws WebloggerException {
-        
-        log.debug("Updating path tree for folder "+folder.getPath());
-        
-        //WeblogBookmarkFolder childFolder = null;
-        for (WeblogBookmarkFolder childFolder : folder.getFolders()) {
-            log.debug("OLD child folder path was "+childFolder.getPath());
-
-            // update path and save
-            if("/".equals(folder.getPath())) {
-                childFolder.setPath("/" + childFolder.getName());
-            } else {
-                childFolder.setPath(folder.getPath() + "/" +
-                        childFolder.getName());
-            }
-            saveFolder(childFolder);
-
-            log.debug("NEW child folder path is "+ childFolder.getPath());
-
-            // then make recursive call to update this folders children
-            updatePathTree(childFolder);
-        }
-    }
-
-    
     /**
      * Retrieve folder and lazy-load it's sub-folders and bookmarks.
      */
@@ -296,23 +238,17 @@ public class JPABookmarkManagerImpl impl
     }
 
 
-    public WeblogBookmarkFolder getFolder(Weblog website, String path)
+    public WeblogBookmarkFolder getFolder(Weblog website, String name)
             throws WebloggerException {
 
-        if (path == null || path.trim().equals("/")) {
+        if (name == null) {
             return getRootFolder(website);
         } else {
-            String folderPath = path;
-
-            // all folder paths must begin with a '/'
-            if(!folderPath.startsWith("/")) {
-                folderPath = "/"+folderPath;
-            }
 
-            // now just do simple lookup by path
-            Query query = strategy.getNamedQuery("WeblogBookmarkFolder.getByWebsite&Path");
+            // now just do simple lookup by name
+            Query query = strategy.getNamedQuery("WeblogBookmarkFolder.getByWebsite&Name");
             query.setParameter(1, website);
-            query.setParameter(2, folderPath);
+            query.setParameter(2, name);
             try {
                 return (WeblogBookmarkFolder)query.getSingleResult();
             } catch (NoResultException e) {
@@ -323,28 +259,17 @@ public class JPABookmarkManagerImpl impl
 
     /**
      * @see org.apache.roller.weblogger.business.BookmarkManager#getBookmarks(
-     *      org.apache.roller.weblogger.pojos.WeblogBookmarkFolder, boolean)
+     *      org.apache.roller.weblogger.pojos.WeblogBookmarkFolder)
      */
-    public List<WeblogBookmark> getBookmarks(WeblogBookmarkFolder folder, boolean subfolders)
+    public List<WeblogBookmark> getBookmarks(WeblogBookmarkFolder folder)
             throws WebloggerException {
         Query query;
-        List<WeblogBookmark> results = null;
+        List<WeblogBookmark> results;
+
+        query = strategy.getNamedQuery("BookmarkData.getByFolder");
+        query.setParameter(1, folder);
+        results = query.getResultList();
 
-        if(!subfolders) {
-            // if no subfolders then this is an equals query
-            query = strategy.getNamedQuery("BoomarkData.getByFolder");
-            query.setParameter(1, folder);
-            results = query.getResultList();
-        } else {
-            // if we are doing subfolders then do a case sensitive
-            // query using folder path
-            query = strategy.getNamedQuery( 
-                "BoomarkData.getByFolder.pathLike&Folder.website");
-            query.setParameter(1, folder.getPath() + '%');
-            query.setParameter(2, folder.getWebsite());
-            results = query.getResultList();
-        }
-            
         return results;
     }
 
@@ -384,7 +309,7 @@ public class JPABookmarkManagerImpl impl
         // ensure that no sibling categories share the same name
         WeblogBookmarkFolder parent = folder.getParent();
         if (null != parent) {
-            return (getFolder(folder.getWebsite(), folder.getPath()) != null);
+            return (getFolder(folder.getWebsite(), folder.getName()) != null);
         }
         return false;
     }

Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/plugins/entry/TopicTagPlugin.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/plugins/entry/TopicTagPlugin.java?rev=1575646&r1=1575645&r2=1575646&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/plugins/entry/TopicTagPlugin.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/business/plugins/entry/TopicTagPlugin.java Sun Mar  9 02:10:32 2014
@@ -311,7 +311,7 @@ public class TopicTagPlugin implements W
         }
         else {
             BookmarkManager bMgr = WebloggerFactory.getWeblogger().getBookmarkManager();
-            List<WeblogBookmark> bookmarks = bMgr.getBookmarks(bMgr.getRootFolder(website), true);
+            List<WeblogBookmark> bookmarks = bMgr.getBookmarks(bMgr.getRootFolder(website));
 
             for (WeblogBookmark b : bookmarks) {
                 bookmarkMap.put(b.getName(), b);
@@ -320,7 +320,6 @@ public class TopicTagPlugin implements W
         return bookmarkMap;
     }
 
-
     // Sets up properties.  For better and worse, doesn't use reflection
     private void initializeProperties()
     {

Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/WeblogBookmarkFolder.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/WeblogBookmarkFolder.java?rev=1575646&r1=1575645&r2=1575646&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/WeblogBookmarkFolder.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/WeblogBookmarkFolder.java Sun Mar  9 02:10:32 2014
@@ -50,8 +50,7 @@ public class WeblogBookmarkFolder implem
     private String id = UUIDGenerator.generateUUID();
     private String name = null;
     private String description = null;
-    private String path = null;
-    
+
     // associations
     private Weblog website = null;
     private WeblogBookmarkFolder parentFolder = null;
@@ -73,15 +72,6 @@ public class WeblogBookmarkFolder implem
         
         this.website = website;
         this.parentFolder = parent;
-        
-        // calculate path
-        if(parent == null) {
-            this.path = "/";
-        } else if("/".equals(parent.getPath())) {
-            this.path = "/"+name;
-        } else {
-            this.path = parent.getPath() + "/" + name;
-        }
     }
     
         
@@ -91,7 +81,7 @@ public class WeblogBookmarkFolder implem
         StringBuilder buf = new StringBuilder();
         buf.append("{");
         buf.append(getId());
-        buf.append(", ").append(getPath());
+        buf.append(", ").append(getName());
         buf.append("}");
         return buf.toString();
     }
@@ -105,8 +95,8 @@ public class WeblogBookmarkFolder implem
         if (other instanceof WeblogBookmarkFolder) {
             WeblogBookmarkFolder o = (WeblogBookmarkFolder) other;
             return new EqualsBuilder()
-                .append(getPath(), o.getPath()) 
-                //.append(getWebsite(), o.getWebsite()) 
+                .append(getName(), o.getName())
+                .append(getWebsite(), o.getWebsite())
                 .isEquals();
         }
         
@@ -116,8 +106,8 @@ public class WeblogBookmarkFolder implem
     
     public int hashCode() {
         return new HashCodeBuilder()
-            .append(getPath())
-            //.append(getWebsite())
+            .append(getName())
+            .append(getWebsite())
             .toHashCode();
     }
     
@@ -169,17 +159,6 @@ public class WeblogBookmarkFolder implem
     }
 
     /**
-     * The full path to this folder in the hierarchy.
-     */
-    public String getPath() {
-        return this.path;
-    }
-    
-    public void setPath(String path) {
-        this.path = path;
-    }
-
-    /**
      * Get the weblog which owns this folder.
      */
     public Weblog getWebsite() {
@@ -260,11 +239,10 @@ public class WeblogBookmarkFolder implem
     
     
     /**
-     * @param subfolders
      */
-    public List<WeblogBookmark> retrieveBookmarks(boolean subfolders) throws WebloggerException {
+    public List<WeblogBookmark> retrieveBookmarks() throws WebloggerException {
         BookmarkManager bmgr = WebloggerFactory.getWeblogger().getBookmarkManager();
-        return bmgr.getBookmarks(this, subfolders);
+        return bmgr.getBookmarks(this);
     }
     
     
@@ -284,64 +262,10 @@ public class WeblogBookmarkFolder implem
     }
     
     
-    /**
-     * Is this folder a descendent of the other folder?
-     */
-    public boolean descendentOf(WeblogBookmarkFolder ancestor) {
-        
-        // if this is a root node then we can't be a descendent
-        if(getParent() == null) {
-            return false;
-        } else {
-            // if our path starts with our parents path then we are a descendent
-            return getPath().startsWith(ancestor.getPath());
-        }
-    }
-    
-    
     // convenience method for updating the folder name, which triggers a path tree rebuild
     public void updateName(String newName) throws WebloggerException {
-        
-        // update name
         setName(newName);
-        
-        // calculate path
-        if(getParent() == null) {
-            setPath("/");
-        } else if("/".equals(getParent().getPath())) {
-            setPath("/"+getName());
-        } else {
-            setPath(getParent().getPath() + "/" + getName());
-        }
-        
-        // update path tree for all children
-        updatePathTree(this);
-    }
-    
-    
-    // update the path tree for a given folder
-    public static void updatePathTree(WeblogBookmarkFolder folder) 
-            throws WebloggerException {
-        
-        log.debug("Updating path tree for folder "+folder.getPath());
-        
-        for (WeblogBookmarkFolder childFolder : folder.getFolders()) {
-
-            log.debug("OLD child folder path was "+childFolder.getPath());
-            
-            // update path and save
-            if("/".equals(folder.getPath())) {
-                childFolder.setPath("/" + childFolder.getName());
-            } else {
-                childFolder.setPath(folder.getPath() + "/" + childFolder.getName());
-            }
-            WebloggerFactory.getWeblogger().getBookmarkManager().saveFolder(childFolder);
-            
-            log.debug("NEW child folder path is "+ childFolder.getPath());
-            
-            // then make recursive call to update this folders children
-            updatePathTree(childFolder);
-        }
+        WebloggerFactory.getWeblogger().getBookmarkManager().saveFolder(this);
     }
     
 }

Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/wrapper/WeblogBookmarkFolderWrapper.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/wrapper/WeblogBookmarkFolderWrapper.java?rev=1575646&r1=1575645&r2=1575646&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/wrapper/WeblogBookmarkFolderWrapper.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/pojos/wrapper/WeblogBookmarkFolderWrapper.java Sun Mar  9 02:10:32 2014
@@ -66,10 +66,6 @@ public final class WeblogBookmarkFolderW
     }
     
     
-    public String getPath() {
-        return this.pojo.getPath();
-    }
-    
     public WeblogBookmarkFolderWrapper getParent() {
         return WeblogBookmarkFolderWrapper.wrap(this.pojo.getParent());
     }
@@ -108,10 +104,10 @@ public final class WeblogBookmarkFolderW
     }    
         
     
-    public List<WeblogBookmarkWrapper> retrieveBookmarks(boolean subfolders)
+    public List<WeblogBookmarkWrapper> retrieveBookmarks()
             throws WebloggerException {
         
-        List<WeblogBookmark> initialCollection = this.pojo.retrieveBookmarks(subfolders);
+        List<WeblogBookmark> initialCollection = this.pojo.retrieveBookmarks();
         
         // iterate through and wrap
         // we force the use of an ArrayList because it should be good enough to cover
@@ -126,9 +122,4 @@ public final class WeblogBookmarkFolderW
         return wrappedCollection;
     }
     
-    // TODO: this method won't actually work and we probably don't need it here anyways?
-    public boolean descendentOf(WeblogBookmarkFolder ancestor) {
-        return this.pojo.descendentOf(ancestor);
-    }
-    
 }

Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/Bookmarks.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/Bookmarks.java?rev=1575646&r1=1575645&r2=1575646&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/Bookmarks.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/Bookmarks.java Sun Mar  9 02:10:32 2014
@@ -50,10 +50,10 @@ public class Bookmarks extends UIAction 
 	// the folder being viewed
 	private WeblogBookmarkFolder folder = null;
 
-	// the list of folders to move/delete
+	// the list of folders to delete
 	private String[] selectedFolders = null;
 
-	// the list of bookmarks to move/delete
+	// the list of bookmarks to move or delete
 	private String[] selectedBookmarks = null;
 
 	// the target folder to move items to
@@ -65,9 +65,6 @@ public class Bookmarks extends UIAction 
 	// all folders from the action weblog
 	private Set allFolders = Collections.EMPTY_SET;
 
-	// path of folders representing selected folders hierarchy
-	private List folderPath = Collections.EMPTY_LIST;
-
 	public Bookmarks() {
 		this.actionName = "bookmarks";
 		this.desiredMenu = "editor";
@@ -101,11 +98,10 @@ public class Bookmarks extends UIAction 
 	public String execute() {
 
 		// build list of folders for display
-		TreeSet newFolders = new TreeSet(new FolderPathComparator());
+		TreeSet newFolders = new TreeSet(new FolderNameComparator());
 
 		try {
-			// Build list of all folders, except for current one, sorted by
-			// path.
+			// Build list of all folders, except for current one, sorted by name
 			BookmarkManager bmgr = WebloggerFactory.getWeblogger()
 					.getBookmarkManager();
 			List<WeblogBookmarkFolder> folders = bmgr
@@ -118,17 +114,6 @@ public class Bookmarks extends UIAction 
 				}
 			}
 
-			// build folder path
-			WeblogBookmarkFolder parent = getFolder().getParent();
-			if (parent != null) {
-				List inFolderPath = new LinkedList();
-				inFolderPath.add(0, getFolder());
-				while (parent != null) {
-					inFolderPath.add(0, parent);
-					parent = parent.getParent();
-				}
-				setFolderPath(inFolderPath);
-			}
 		} catch (WebloggerException ex) {
 			log.error("Error building folders list", ex);
 			// TODO: i18n
@@ -221,7 +206,7 @@ public class Bookmarks extends UIAction 
     }
 
 	/**
-	 * Move folders and bookmarks to a new folder.
+	 * Move bookmarks to a new folder.
 	 */
 	public String move() {
 
@@ -230,28 +215,12 @@ public class Bookmarks extends UIAction 
 					.getBookmarkManager();
 
 			if (log.isDebugEnabled()) {
-                log.debug("Moving folders and bookmarks to folder - "
+                log.debug("Moving bookmarks to folder - "
                         + getTargetFolderId());
             }
 
-			// Move folders to new parent folder.
-			String folders[] = getSelectedFolders();
-			WeblogBookmarkFolder parent = bmgr.getFolder(getTargetFolderId());
-			if (null != folders && folders.length > 0) {
-				for (int i = 0; i < folders.length; i++) {
-					WeblogBookmarkFolder fd = bmgr.getFolder(folders[i]);
-
-					// Don't move folder into itself.
-					if (!fd.getId().equals(parent.getId())
-							&& !parent.descendentOf(fd)) {
-						bmgr.moveFolder(fd, parent);
-					} else {
-						addMessage("bookmarksForm.warn.notMoving", fd.getName());
-					}
-				}
-			}
-
 			// Move bookmarks to new parent folder.
+            WeblogBookmarkFolder parent = bmgr.getFolder(getTargetFolderId());
 			String bookmarks[] = getSelectedBookmarks();
 			if (null != bookmarks && bookmarks.length > 0) {
 				for (int j = 0; j < bookmarks.length; j++) {
@@ -269,18 +238,18 @@ public class Bookmarks extends UIAction 
 			CacheManager.invalidate(getActionWeblog());
 
 		} catch (WebloggerException e) {
-			log.error("Error doing folder/bookmark move", e);
+			log.error("Error doing bookmark move", e);
 			addError("bookmarksForm.error.move");
 		}
 
 		return execute();
 	}
 
-	private static final class FolderPathComparator implements Comparator {
+	private static final class FolderNameComparator implements Comparator {
 		public int compare(Object o1, Object o2) {
 			WeblogBookmarkFolder f1 = (WeblogBookmarkFolder) o1;
 			WeblogBookmarkFolder f2 = (WeblogBookmarkFolder) o2;
-			return f1.getPath().compareTo(f2.getPath());
+			return f1.getName().compareTo(f2.getName());
 		}
 	}
 
@@ -332,14 +301,6 @@ public class Bookmarks extends UIAction 
 		this.folder = folder;
 	}
 
-	public List getFolderPath() {
-		return folderPath;
-	}
-
-	public void setFolderPath(List folderPath) {
-		this.folderPath = folderPath;
-	}
-
     public String getViewFolderId() {
         return viewFolderId;
     }

Modified: roller/trunk/app/src/main/resources/org/apache/roller/weblogger/pojos/WeblogBookmark.orm.xml
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/resources/org/apache/roller/weblogger/pojos/WeblogBookmark.orm.xml?rev=1575646&r1=1575645&r2=1575646&view=diff
==============================================================================
--- roller/trunk/app/src/main/resources/org/apache/roller/weblogger/pojos/WeblogBookmark.orm.xml (original)
+++ roller/trunk/app/src/main/resources/org/apache/roller/weblogger/pojos/WeblogBookmark.orm.xml Sun Mar  9 02:10:32 2014
@@ -6,12 +6,9 @@
     <entity metadata-complete="true" name="WeblogBookmark"
             class="org.apache.roller.weblogger.pojos.WeblogBookmark" access="PROPERTY">
         <table name="bookmark"/>
-        <named-query name="BoomarkData.getByFolder">
+        <named-query name="BookmarkData.getByFolder">
             <query>SELECT b FROM WeblogBookmark b WHERE b.folder = ?1</query>
         </named-query>
-        <named-query name="BoomarkData.getByFolder.pathLike&amp;Folder.website">
-            <query>SELECT b FROM WeblogBookmark b WHERE b.folder.path LIKE ?1 AND b.folder.website = ?2</query>
-        </named-query>
         <attributes>
             <id name="id">
                 <column name="id"/>

Modified: roller/trunk/app/src/main/resources/org/apache/roller/weblogger/pojos/WeblogBookmarkFolder.orm.xml
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/resources/org/apache/roller/weblogger/pojos/WeblogBookmarkFolder.orm.xml?rev=1575646&r1=1575645&r2=1575646&view=diff
==============================================================================
--- roller/trunk/app/src/main/resources/org/apache/roller/weblogger/pojos/WeblogBookmarkFolder.orm.xml (original)
+++ roller/trunk/app/src/main/resources/org/apache/roller/weblogger/pojos/WeblogBookmarkFolder.orm.xml Sun Mar  9 02:10:32 2014
@@ -9,8 +9,8 @@
         <named-query name="WeblogBookmarkFolder.getByWebsite">
             <query>SELECT f FROM WeblogBookmarkFolder f WHERE f.website = ?1</query>
         </named-query>
-        <named-query name="WeblogBookmarkFolder.getByWebsite&amp;Path">
-            <query>SELECT f FROM WeblogBookmarkFolder f WHERE f.website = ?1 AND f.path = ?2</query>
+        <named-query name="WeblogBookmarkFolder.getByWebsite&amp;Name">
+            <query>SELECT f FROM WeblogBookmarkFolder f WHERE f.website = ?1 AND f.name = ?2</query>
         </named-query>
         <named-query name="WeblogBookmarkFolder.getByWebsite&amp;ParentNull">
             <query>SELECT f FROM WeblogBookmarkFolder f WHERE f.website = ?1 AND f.parent IS NULL</query>
@@ -22,9 +22,6 @@
             <basic name="name">
                 <column name="name" insertable="true" updatable="true" unique="false"/>
             </basic>
-            <basic name="path">
-                <column name="path" insertable="true" updatable="true" unique="false"/>
-            </basic>
             <basic name="description">
                 <column name="description" insertable="true" updatable="true" unique="false"/>
             </basic>

Modified: roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/BookmarkAdd.jsp
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/BookmarkAdd.jsp?rev=1575646&r1=1575645&r2=1575646&view=diff
==============================================================================
--- roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/BookmarkAdd.jsp (original)
+++ roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/BookmarkAdd.jsp Sun Mar  9 02:10:32 2014
@@ -19,7 +19,7 @@
 
 <p class="subtitle">
     <s:text name="bookmarkForm.add.subtitle" >
-        <s:param value="folder.path" />
+        <s:param value="folder.name" />
     </s:text>
 </p>
 

Modified: roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/BookmarkEdit.jsp
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/BookmarkEdit.jsp?rev=1575646&r1=1575645&r2=1575646&view=diff
==============================================================================
--- roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/BookmarkEdit.jsp (original)
+++ roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/BookmarkEdit.jsp Sun Mar  9 02:10:32 2014
@@ -19,7 +19,7 @@
 
 <p class="subtitle">
     <s:text name="bookmarkForm.edit.subtitle" >
-        <s:param value="bookmark.folder.path" />
+        <s:param value="bookmark.folder.name" />
     </s:text>
 </p>
 

Modified: roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/Bookmarks.jsp
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/Bookmarks.jsp?rev=1575646&r1=1575645&r2=1575646&view=diff
==============================================================================
--- roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/Bookmarks.jsp (original)
+++ roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/Bookmarks.jsp Sun Mar  9 02:10:32 2014
@@ -39,7 +39,7 @@ function onMove() 
 // -->
 </script>
 
-<s:if test="folderPath.isEmpty">
+<s:if test="folder.parent == null">
     <p class="subtitle">
         <s:text name="bookmarksForm.subtitle" >
             <s:param value="weblog" />
@@ -49,22 +49,11 @@ function onMove() 
         <s:text name="bookmarksForm.rootPrompt" />
     </p>
 </s:if>
-
 <s:else>
     <p class="subtitle">
-    <s:text name="bookmarksForm.path" />: /
-    <s:iterator id="pathItem" value="folderPath">
-        <s:url id="pathUrl" action="bookmarks">
-            <s:param name="weblog" value="%{actionWeblog.handle}" />
-            <s:param name="folderId" value="#pathItem.id" />
-        </s:url>
-        <s:a href="%{pathUrl}"><s:property value="#pathItem.name" /></s:a> / 
-    </s:iterator>
-    <p>
-    <p><s:text name="bookmarksForm.folderPrompt" /></p>
+    <s:text name="bookmarksForm.path" />: <s:text name="%{folder.name}" />
 </s:else>
 
-
 <%-- Form is a table of folders followed by bookmarks, each with checkbox --%>
 <s:form action="bookmarks!delete">
 	<s:hidden name="salt" />
@@ -77,7 +66,7 @@ function onMove() 
         <s:submit type="button" action="bookmarks!view" key="bookmarksForm.viewFolder" />
 
         <%-- Folder to View combo-box --%>
-        <s:select name="viewFolderId" list="allFolders" listKey="id" listValue="path" />
+        <s:select name="viewFolderId" list="allFolders" listKey="id" listValue="name" />
 
         <br /><br />
 
@@ -205,7 +194,7 @@ function onMove() 
             <s:submit type="button" action="bookmarks!move" key="bookmarksForm.move" onclick="onMove();return false;" />
 
             <%-- Move-to combo-box --%>
-            <s:select name="targetFolderId" list="allFolders" listKey="id" listValue="path" />
+            <s:select name="targetFolderId" list="allFolders" listKey="id" listValue="name" />
         </s:if>
     </div>
 

Modified: roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/BookmarksSidebar.jsp
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/BookmarksSidebar.jsp?rev=1575646&r1=1575645&r2=1575646&view=diff
==============================================================================
--- roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/BookmarksSidebar.jsp (original)
+++ roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/BookmarksSidebar.jsp Sun Mar  9 02:10:32 2014
@@ -45,18 +45,16 @@
                     <s:a href="%{addFolder}"><s:text name="bookmarksForm.addFolder" /></s:a>
                 </p>
                 
-                <s:if test="folderPath.isEmpty">            
-                    <%-- Import bookmarks --%>
-                    <p>
-                        <img src='<s:url value="/images/link_add.png"/>' border="0"alt="icon" />
-                        <s:url id="importBookmarks" action="bookmarksImport">
-                            <s:param name="weblog" value="%{actionWeblog.handle}" />
-                            <s:param name="folderId" />
-                        </s:url>
-                        <s:a href="%{importBookmarks}"><s:text name="bookmarksForm.importBookmarks" /></s:a>
-                    </p>                
-                </s:if>
-                
+                <%-- Import bookmarks --%>
+                <p>
+                    <img src='<s:url value="/images/link_add.png"/>' border="0"alt="icon" />
+                    <s:url id="importBookmarks" action="bookmarksImport">
+                        <s:param name="weblog" value="%{actionWeblog.handle}" />
+                        <s:param name="folderId" />
+                    </s:url>
+                    <s:a href="%{importBookmarks}"><s:text name="bookmarksForm.importBookmarks" /></s:a>
+                </p>
+
                 <br />
                 <br />
             </div>

Modified: roller/trunk/app/src/main/webapp/WEB-INF/velocity/weblog.vm
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/webapp/WEB-INF/velocity/weblog.vm?rev=1575646&r1=1575645&r2=1575646&view=diff
==============================================================================
--- roller/trunk/app/src/main/webapp/WEB-INF/velocity/weblog.vm (original)
+++ roller/trunk/app/src/main/webapp/WEB-INF/velocity/weblog.vm Sun Mar  9 02:10:32 2014
@@ -34,7 +34,7 @@ These are the documented macros in order
     #showWeblogEntryCommentForm($entry)
 
     #showWeblogEntryLinksList($entries)
-    #showBookmarkLinksList($folderObj $expanding $subfolders)
+    #showBookmarkLinksList($folderObj)
     #showWeblogCategoryLinksList()
     #showMobileCategoryLinksList()
     #showReferrersList($weblog)
@@ -484,30 +484,11 @@ Show entries as a HTML ul list.
 #** 
 Show bookmarks as a HTML ul list.
 *#
-#macro(showBookmarkLinksList $folderObject $subfolders $expanding )
+#macro(showBookmarkLinksList $folderObject)
 <ul class="rFolder">
-#_showBookmarkLinksList($folderObject $subfolders $expanding)
-</ul>
-#end
-
-
-#** 
-Recursively display a bookmark folder and children as HTML ul list (undocumented).
-*#
-#macro(_showBookmarkLinksList $folderObject $subfolders $expanding )
-    #if ($expanding) #_showCommonJavascript() #end
     #set($bookmarks = $folderObject.getBookmarks())
     #set($folders = $folderObject.getFolders())
     #set($divId = $utils.replace($folderObject.name, " ", "_" ))
-    #if ($folderObject.name != "root" && $expanding && $subfolders && ($folderObject.getBookmarks().size() > 0 || $folderObject.getFolders().size() > 0))
-        <div class="rFolder">
-        <li class="rFolderItem"><a href="javascript:toggleFolder('$divId')">
-            <span id="i$divId">+</span></a>$folderObject.Name</li>
-        <ul id="$divId" class="rFolder" style="display:none">
-    #elseif ($folderObject.name != "root" && $subfolders && ($folderObject.getBookmarks().size() > 0 || $folderObject.getFolders().size() > 0))
-        <li class="rFolderItem">$folderObject.Name</li>
-        <ul class="rFolder">
-    #end
     #foreach($bookmark in $bookmarks)
         <li class="rFolderItem">
         #if($utils.isNotEmpty($bookmark.Image))
@@ -526,29 +507,12 @@ Recursively display a bookmark folder an
                src="$url.absoluteSite/images/smrssbadge.gif"
                alt="$text.get("macro.bookmark.urlFeed")"/></a>
             #end
-            <a href="$bookmark.url"
-               title="$bookmark.description"
-               class="rBookmark$bookmark.weight">$bookmark.name</a>
+            <a href="$bookmark.url" title="$bookmark.description"
+            class="rBookmark$bookmark.weight">$bookmark.name</a>
         #end
         </li>
     #end
-    ## show sub-folders
-    #if ($subfolders)
-        #foreach($sFolder in $folders)
-            #_showBookmarkLinksList($sFolder $subfolders $expanding )
-        #end
-    #end
-    #if ($folderObject.name != "root" && $subfolders && ($folderObject.getBookmarks().size() > 0 || $folderObject.getFolders().size() > 0))
-        </ul>
-    #end
-    #if ($folderObject.name != "root" && $expanding && $subfolders && ($folderObject.getBookmarks().size() > 0 || $folderObject.getFolders().size() > 0))
-        </div>
-        <script type="text/javascript">
-        <!-- 
-        folderPreference("$divId");
-        // -->
-        </script>
-    #end
+</ul>
 #end
 
 

Modified: roller/trunk/app/src/main/webapp/themes/basic/sidebar.vm
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/webapp/themes/basic/sidebar.vm?rev=1575646&r1=1575645&r2=1575646&view=diff
==============================================================================
--- roller/trunk/app/src/main/webapp/themes/basic/sidebar.vm (original)
+++ roller/trunk/app/src/main/webapp/themes/basic/sidebar.vm Sun Mar  9 02:10:32 2014
@@ -22,7 +22,7 @@
     <h2>Links</h2>
     <div class="sidebar">
     #set($rootFolder = $model.weblog.getBookmarkFolder("/"))
-    #showBookmarkLinksList($rootFolder false false) 
+    #showBookmarkLinksList($rootFolder)
     </div>
 
     <h2>Navigation</h2>

Modified: roller/trunk/app/src/main/webapp/themes/brushedmetal/sidebar.vm
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/webapp/themes/brushedmetal/sidebar.vm?rev=1575646&r1=1575645&r2=1575646&view=diff
==============================================================================
--- roller/trunk/app/src/main/webapp/themes/brushedmetal/sidebar.vm (original)
+++ roller/trunk/app/src/main/webapp/themes/brushedmetal/sidebar.vm Sun Mar  9 02:10:32 2014
@@ -11,7 +11,7 @@
 
          <h3>Blogroll</h3>
          #set($rootFolder = $model.weblog.getBookmarkFolder("/"))
-         #showBookmarkLinksList($rootFolder false false) 
+         #showBookmarkLinksList($rootFolder)
 
          <h3>Newsfeeds</h3>
          #showAtomFeedsList($model.weblog)

Modified: roller/trunk/app/src/main/webapp/themes/sotto/sidebar.vm
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/webapp/themes/sotto/sidebar.vm?rev=1575646&r1=1575645&r2=1575646&view=diff
==============================================================================
--- roller/trunk/app/src/main/webapp/themes/sotto/sidebar.vm (original)
+++ roller/trunk/app/src/main/webapp/themes/sotto/sidebar.vm Sun Mar  9 02:10:32 2014
@@ -21,7 +21,7 @@
         <div class="sidebarBox">
             <div class="links">
                 #set($rootFolder = $model.weblog.getBookmarkFolder("/"))
-                #showBookmarkLinksList($rootFolder false false) 
+                #showBookmarkLinksList($rootFolder)
             </div>
         </div>
 

Modified: roller/trunk/app/src/test/java/org/apache/roller/weblogger/business/BookmarkTest.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/test/java/org/apache/roller/weblogger/business/BookmarkTest.java?rev=1575646&r1=1575645&r2=1575646&view=diff
==============================================================================
--- roller/trunk/app/src/test/java/org/apache/roller/weblogger/business/BookmarkTest.java (original)
+++ roller/trunk/app/src/test/java/org/apache/roller/weblogger/business/BookmarkTest.java Sun Mar  9 02:10:32 2014
@@ -203,18 +203,13 @@ public class BookmarkTest extends TestCa
         
         // test lookup of all bookmarks in single folder
         WeblogBookmarkFolder testFolder = bmgr.getFolder(f1.getId());
-        List allBookmarks = bmgr.getBookmarks(testFolder, false);
+        List allBookmarks = bmgr.getBookmarks(testFolder);
         assertNotNull(allBookmarks);
         assertEquals(2, allBookmarks.size());
         
         // getBookmarks(folder, false) should also match folder.getBookmarks()
         assertEquals(allBookmarks.size(), testFolder.getBookmarks().size());
         
-        // test lookup of all bookmarks in folder branch (including subfolders)
-        testFolder = bmgr.getFolder(f1.getId());
-        allBookmarks = bmgr.getBookmarks(testFolder, true);
-        assertNotNull(allBookmarks);
-        assertEquals(3, allBookmarks.size());
     }
     
     
@@ -287,33 +282,11 @@ public class BookmarkTest extends TestCa
             assertEquals(1, f1.getBookmarks().size());
             assertEquals(1, f2.getBookmarks().size());
             assertEquals(1, f3.getBookmarks().size());
-            assertEquals(0, dest.retrieveBookmarks(true).size());
-            assertEquals(3, f1.retrieveBookmarks(true).size());
-
-            // test that parent cannot be moved into child
-            boolean safe = false;
-            try {
-                // Move folder into one of it's children
-                bmgr.moveFolder(f1, f3);
-                TestUtils.endSession(true);
-            } catch (WebloggerException e) {
-                safe = true;
-            }
-            assertTrue(safe);
-
-            // move f1 to dest
-            f1   = bmgr.getFolder( f1.getId());   //Get managed copy
-            dest = bmgr.getFolder( dest.getId()); //Get managed copy
-            bmgr.moveFolder(f1, dest);
-            TestUtils.endSession(true);
-
-            // after move, verify number of entries in eacch folder
-            dest = bmgr.getFolder(dest.getId());
-            f1 = bmgr.getFolder(f1.getId());
-            assertEquals(3, dest.retrieveBookmarks(true).size());
+            assertEquals(0, dest.retrieveBookmarks().size());
+            assertEquals(3, f1.retrieveBookmarks().size());
 
             // check that paths and child folders are correct
-            assertEquals("/dest/f1", f1.getPath());
+            assertEquals("f1", f1.getName());
             assertEquals(1, dest.getFolders().size());
         
             bmgr.removeFolder(f1);
@@ -339,7 +312,7 @@ public class BookmarkTest extends TestCa
         
         testWeblog = TestUtils.getManagedWebsite(testWeblog);
         fd = getRoller().getBookmarkManager().getFolder(testWeblog, "ZZZ_imports_ZZZ");
-        assertTrue(fd.retrieveBookmarks(true).size() > 0 );
+        assertTrue(fd.retrieveBookmarks().size() > 0 );
         getRoller().getBookmarkManager().removeFolder(fd);
         TestUtils.endSession(true);
     }

Modified: roller/trunk/app/src/test/java/org/apache/roller/weblogger/business/FolderCRUDTest.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/test/java/org/apache/roller/weblogger/business/FolderCRUDTest.java?rev=1575646&r1=1575645&r2=1575646&view=diff
==============================================================================
--- roller/trunk/app/src/test/java/org/apache/roller/weblogger/business/FolderCRUDTest.java (original)
+++ roller/trunk/app/src/test/java/org/apache/roller/weblogger/business/FolderCRUDTest.java Sun Mar  9 02:10:32 2014
@@ -92,9 +92,6 @@ public class FolderCRUDTest extends Test
         WeblogBookmarkFolder testFolder = new WeblogBookmarkFolder(null, "root", "root", TestUtils.getManagedWebsite(testWeblog));
         assertTrue(root.equals(testFolder));
         
-        testFolder = new WeblogBookmarkFolder(root, "root", "root", TestUtils.getManagedWebsite(testWeblog));
-        assertFalse(root.equals(testFolder));
-        
         log.info("END");
     }
     

Modified: roller/trunk/app/src/test/java/org/apache/roller/weblogger/business/FolderFunctionalityTest.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/test/java/org/apache/roller/weblogger/business/FolderFunctionalityTest.java?rev=1575646&r1=1575645&r2=1575646&view=diff
==============================================================================
--- roller/trunk/app/src/test/java/org/apache/roller/weblogger/business/FolderFunctionalityTest.java (original)
+++ roller/trunk/app/src/test/java/org/apache/roller/weblogger/business/FolderFunctionalityTest.java Sun Mar  9 02:10:32 2014
@@ -219,30 +219,25 @@ public class FolderFunctionalityTest ext
     /**
      * Test folder lookup by id.
      */
-    public void testLookupFolderByPath() throws Exception {
+    public void testLookupFolderByName() throws Exception {
         
         log.info("BEGIN");
         
         BookmarkManager bmgr = WebloggerFactory.getWeblogger().getBookmarkManager();
         
         testWeblog = TestUtils.getManagedWebsite(testWeblog);
-        WeblogBookmarkFolder folder = bmgr.getFolder(testWeblog, "/folderFuncTest-f1");
+        WeblogBookmarkFolder folder = bmgr.getFolder(testWeblog, "folderFuncTest-f1");
         assertNotNull(folder);
         assertEquals(f1, folder);
         
-        folder = bmgr.getFolder(testWeblog, "/folderFuncTest-f1/folderFuncTest-f2/folderFuncTest-f3");
+        folder = bmgr.getFolder(testWeblog, "folderFuncTest-f3");
         assertNotNull(folder);
         assertEquals(f3, folder);
         
-        // test lazy lookup, with no slashes
-        folder = bmgr.getFolder(testWeblog, "folderFuncTest-f1");
-        assertNotNull(folder);
-        assertEquals(f1, folder);
-        
-        // if no path is specified then we should get root folder
+        // if no name is specified then we should get root folder
         folder = bmgr.getFolder(testWeblog, null);
         assertNotNull(folder);
-        assertEquals("/", folder.getPath());
+        assertEquals("root", folder.getName());
         
         log.info("END");
     }