logo       
Google Custom Search
    AddThis Social Bookmark Button

roller/src/org/roller/business BookmarkManagerImpl.java,1.8,1.9 WeblogManag: msg#00171

Subject: roller/src/org/roller/business BookmarkManagerImpl.java,1.8,1.9 WeblogManagerImpl.java,1.10,1.11
Update of /cvsroot/roller/roller/src/org/roller/business
In directory sc8-pr-cvs1:/tmp/cvs-serv13029/src/org/roller/business

Modified Files:
        BookmarkManagerImpl.java WeblogManagerImpl.java 
Log Message:
Same Castor workaround for folder hierarchy,
plus fixes in HierarchicalPersistentObject.save()

Index: BookmarkManagerImpl.java
===================================================================
RCS file: 
/cvsroot/roller/roller/src/org/roller/business/BookmarkManagerImpl.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -d -r1.8 -r1.9
*** BookmarkManagerImpl.java    17 Jan 2004 22:46:57 -0000      1.8
--- BookmarkManagerImpl.java    19 Jan 2004 18:39:06 -0000      1.9
***************
*** 14,17 ****
--- 14,18 ----
  import org.roller.persistence.Query;
  import org.roller.persistence.QueryFactory;
+ import org.roller.persistence.QueryLit;
  import org.roller.pojos.Assoc;
  import org.roller.pojos.BookmarkData;
***************
*** 445,448 ****
--- 446,495 ----
          }
      }
+ 
+     /** 
+      * @see 
org.roller.model.BookmarkManager#retrieveBookmarks(org.roller.pojos.FolderData, 
boolean)
+      */
+     public List retrieveBookmarks(FolderData folder, boolean subfolders) 
throws RollerException
+     {
+         PersistenceStrategy pstrategy = 
+             RollerFactory.getRoller().getPersistenceStrategy();
+             
+         // select all weblog entries in this category and it's subcategories
+         QueryFactory factory = pstrategy.getQueryFactory();
+         Query query = null;
+             
+         if (subfolders)
+         {
+             query = factory.createQuery(
+                 BookmarkData.class.getName(),"b",
+                 FolderAssoc.class.getName(),"a");
+                 
+             query.setWhere(
+                 factory.createCondition(
+                     factory.createCondition( 
+                         factory.createCondition("b.folder.id", Query.EQ, 
folder.getId()),
+                         Query.AND, 
+                         factory.createCondition("b.folder.id", Query.EQ, new 
QueryLit("a.folder.id"))
+                     ),
+                     Query.OR, 
+                     factory.createCondition( 
+                         factory.createCondition("a.ancestorFolder.id", 
Query.EQ, folder.getId()),
+                         Query.AND, 
+                         factory.createCondition("b.folder.id", Query.EQ, new 
QueryLit("a.folder.id"))
+                     )
+                 )
+             );
+             
+         }
+         else
+         {
+             query = factory.createQuery(
+                 BookmarkData.class.getName(),"b");
+ 
+             query.setWhere(
+                 factory.createCondition("b.folder", Query.EQ, folder));
+         }
+         return query.execute();
+     }
  }
  

Index: WeblogManagerImpl.java
===================================================================
RCS file: 
/cvsroot/roller/roller/src/org/roller/business/WeblogManagerImpl.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** WeblogManagerImpl.java      18 Jan 2004 20:48:08 -0000      1.10
--- WeblogManagerImpl.java      19 Jan 2004 18:39:06 -0000      1.11
***************
*** 1080,1085 ****
       */
      public List retrieveWeblogEntries(WeblogCategoryData cat, boolean 
subcats) throws RollerException
!     {
!         
          PersistenceStrategy pstrategy = 
              RollerFactory.getRoller().getPersistenceStrategy();
--- 1080,1084 ----
       */
      public List retrieveWeblogEntries(WeblogCategoryData cat, boolean 
subcats) throws RollerException
!     {        
          PersistenceStrategy pstrategy = 
              RollerFactory.getRoller().getPersistenceStrategy();
***************
*** 1119,1123 ****
                  )
              );
!             
          }
          else
--- 1118,1122 ----
                  )
              );
!             query.setGroupBy("e.id");
          }
          else




-------------------------------------------------------
The SF.Net email is sponsored by EclipseCon 2004
Premiere Conference on Open Tools Development and Integration
See the breadth of Eclipse activity. February 3-5 in Anaheim, CA.
http://www.eclipsecon.org/osdn



Try Searching:
servers, voip, java, networking, microsoft ...
<Prev in Thread] Current Thread [Next in Thread>