You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@roller.apache.org by sn...@apache.org on 2006/10/05 14:53:00 UTC
svn commit: r453212 - in /incubator/roller/trunk: metadata/database/
src/org/apache/roller/planet/business/hibernate/
src/org/apache/roller/planet/pojos/ tests/org/apache/roller/business/
Author: snoopdave
Date: Thu Oct 5 05:52:59 2006
New Revision: 453212
URL: http://svn.apache.org/viewvc?view=rev&rev=453212
Log:
Fixing queries broken by removal of group-sub assoc class
Modified:
incubator/roller/trunk/metadata/database/droptables.sql
incubator/roller/trunk/src/org/apache/roller/planet/business/hibernate/HibernatePlanetManagerImpl.java
incubator/roller/trunk/src/org/apache/roller/planet/pojos/PlanetConfigData.java
incubator/roller/trunk/src/org/apache/roller/planet/pojos/PlanetEntryData.java
incubator/roller/trunk/src/org/apache/roller/planet/pojos/PlanetSubscriptionData.java
incubator/roller/trunk/tests/org/apache/roller/business/PlanetManagerTest.java
Modified: incubator/roller/trunk/metadata/database/droptables.sql
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/metadata/database/droptables.sql?view=diff&rev=453212&r1=453211&r2=453212
==============================================================================
--- incubator/roller/trunk/metadata/database/droptables.sql (original)
+++ incubator/roller/trunk/metadata/database/droptables.sql Thu Oct 5 05:52:59 2006
@@ -27,6 +27,7 @@
drop table weblogentry;
drop table weblogentrytag;
drop table weblogentrytagagg;
+drop table weblogtagagg;
drop table weblogcategory;
drop table folder;
drop table folderassoc;
Modified: incubator/roller/trunk/src/org/apache/roller/planet/business/hibernate/HibernatePlanetManagerImpl.java
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/src/org/apache/roller/planet/business/hibernate/HibernatePlanetManagerImpl.java?view=diff&rev=453212&r1=453211&r2=453212
==============================================================================
--- incubator/roller/trunk/src/org/apache/roller/planet/business/hibernate/HibernatePlanetManagerImpl.java (original)
+++ incubator/roller/trunk/src/org/apache/roller/planet/business/hibernate/HibernatePlanetManagerImpl.java Thu Oct 5 05:52:59 2006
@@ -78,14 +78,6 @@
public void saveGroup(PlanetGroupData group)
throws RollerException {
-
- // save each sub assoc first, then the group
- /*Iterator assocs = group.getSubscriptions().iterator();
- while (assocs.hasNext()) {
- PlanetGroupSubscriptionAssoc assoc =
- (PlanetGroupSubscriptionAssoc)assocs.next();
- strategy.store(assoc);
- }*/
strategy.store(group);
}
@@ -127,13 +119,6 @@
criteria.setMaxResults(1);
List list = criteria.list();
config = list.size()!=0 ? (PlanetConfigData)list.get(0) : null;
-
- // We inject the cache dir into the config object here to maintain
- // compatibility with the standaline version of the aggregator.
- if (config != null) {
- config.setCacheDir(
- PlanetConfig.getProperty("planet.aggregator.cache.dir"));
- }
} catch (HibernateException e) {
throw new RollerException(e);
}
@@ -201,9 +186,9 @@
if (groupHandle != null) {
query = session.createQuery(
"select sub from org.apache.roller.planet.pojos.PlanetSubscriptionData sub "
- +"join sub.groupSubscriptionAssocs assoc "
+ +"join sub.groups group "
+"where "
- +"assoc.group.handle=:groupHandle "
+ +"group.handle=:groupHandle "
+"order by sub.inboundblogs desc");
query.setString("groupHandle", groupHandle);
} else {
@@ -305,13 +290,13 @@
if (group != null) {
StringBuffer sb = new StringBuffer();
- sb.append("select entry from org.apache.roller.planet.pojos.PlanetEntryData entry ");
- sb.append("join entry.subscription.groupSubscriptionAssocs assoc ");
- sb.append("where assoc.group=:group and entry.pubTime < :endDate ");
+ sb.append("select e from org.apache.roller.planet.pojos.PlanetEntryData e ");
+ sb.append("join e.subscription.groups g ");
+ sb.append("where g=:group and e.pubTime < :endDate ");
if (startDate != null) {
- sb.append("and entry.pubTime > :startDate ");
+ sb.append("and e.pubTime > :startDate ");
}
- sb.append("order by entry.pubTime desc");
+ sb.append("order by e.pubTime desc");
Query query = session.createQuery(sb.toString());
query.setEntity("group", group);
query.setFirstResult(offset);
@@ -323,14 +308,14 @@
ret = query.list();
} else {
StringBuffer sb = new StringBuffer();
- sb.append("select entry from org.apache.roller.planet.pojos.PlanetEntryData entry ");
- sb.append("join entry.subscription.groupSubscriptionAssocs assoc ");
- sb.append("where (assoc.group.handle='external' or assoc.group.handle='all') ");
- sb.append("and entry.pubTime < :endDate ");
+ sb.append("select e from org.apache.roller.planet.pojos.PlanetEntryData e ");
+ sb.append("join e.subscription.groups g");
+ sb.append("where (g.handle='external' or g.handle='all') ");
+ sb.append("and e.pubTime < :endDate ");
if (startDate != null) {
- sb.append("and entry.pubTime > :startDate ");
+ sb.append("and e.pubTime > :startDate ");
}
- sb.append("order by entry.pubTime desc");
+ sb.append("order by e.pubTime desc");
Query query = session.createQuery(sb.toString());
query.setFirstResult(offset);
if (length != -1) query.setMaxResults(length);
Modified: incubator/roller/trunk/src/org/apache/roller/planet/pojos/PlanetConfigData.java
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/src/org/apache/roller/planet/pojos/PlanetConfigData.java?view=diff&rev=453212&r1=453211&r2=453212
==============================================================================
--- incubator/roller/trunk/src/org/apache/roller/planet/pojos/PlanetConfigData.java (original)
+++ incubator/roller/trunk/src/org/apache/roller/planet/pojos/PlanetConfigData.java Thu Oct 5 05:52:59 2006
@@ -229,9 +229,6 @@
}
/**
- * Not longer stored in database, but we keep this field for compatibility
- * with standalone version of planet (which persists config in XML).
- *
* @hibernate.property column="cache_dir" non-null="true" unique="false"
*/
public String getCacheDir()
@@ -240,7 +237,7 @@
}
public void setCacheDir(String dir)
{
- if (dir != null) cacheDir = dir;
+ cacheDir = dir;
}
//-------------------------------------------------------------- implementation
Modified: incubator/roller/trunk/src/org/apache/roller/planet/pojos/PlanetEntryData.java
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/src/org/apache/roller/planet/pojos/PlanetEntryData.java?view=diff&rev=453212&r1=453211&r2=453212
==============================================================================
--- incubator/roller/trunk/src/org/apache/roller/planet/pojos/PlanetEntryData.java (original)
+++ incubator/roller/trunk/src/org/apache/roller/planet/pojos/PlanetEntryData.java Thu Oct 5 05:52:59 2006
@@ -200,7 +200,7 @@
this.categoriesString = categoriesString;
}
/**
- * @hibernate.many-to-one column="subscription_id" cascade="none" not-null="true"
+ * @hibernate.many-to-one column="subscription_id" cascade="save-update" not-null="true"
*/
public PlanetSubscriptionData getSubscription() {
return subscription;
Modified: incubator/roller/trunk/src/org/apache/roller/planet/pojos/PlanetSubscriptionData.java
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/src/org/apache/roller/planet/pojos/PlanetSubscriptionData.java?view=diff&rev=453212&r1=453211&r2=453212
==============================================================================
--- incubator/roller/trunk/src/org/apache/roller/planet/pojos/PlanetSubscriptionData.java (original)
+++ incubator/roller/trunk/src/org/apache/roller/planet/pojos/PlanetSubscriptionData.java Thu Oct 5 05:52:59 2006
@@ -20,6 +20,7 @@
import java.util.Collection;
import java.util.Date;
import java.util.HashSet;
+import java.util.Iterator;
import java.util.List;
import java.util.Set;
import org.apache.roller.pojos.*;
@@ -91,19 +92,6 @@
this.id = id;
}
/**
- * @hibernate.bag lazy="true" inverse="true" cascade="all-delete-orphan"
- * @hibernate.collection-key column="subscription_id"
- * @hibernate.collection-one-to-many class="org.apache.roller.planet.pojos.PlanetEntryData"
- */
- public List getEntries()
- {
- return entries;
- }
- private void setEntries(List entries)
- {
- this.entries = entries;
- }
- /**
* @hibernate.property column="feed_url" non-null="true" unique="false"
* @roller.wrapPojoMethod type="simple"
*/
@@ -236,13 +224,34 @@
return this.feedUrl.hashCode();
}
+ /**
+ * @hibernate.bag lazy="true" inverse="true" cascade="all-delete-orphan"
+ * @hibernate.collection-key column="subscription_id"
+ * @hibernate.collection-one-to-many class="org.apache.roller.planet.pojos.PlanetEntryData"
+ */
+ public List getEntries()
+ {
+ return entries;
+ }
+
+ private void setEntries(List entries)
+ {
+ this.entries = entries;
+ }
public void addEntry(PlanetEntryData entry)
{
+ // bi-directional one-to-many
+ entry.setSubscription(this);
this.getEntries().add(entry);
}
public void addEntries(Collection newEntries)
{
+ // bi-directional one-to-many
+ for (Iterator it = newEntries.iterator(); it.hasNext();) {
+ PlanetEntryData entry = (PlanetEntryData) it.next();
+ entry.setSubscription(this);
+ }
this.getEntries().addAll(newEntries);
}
Modified: incubator/roller/trunk/tests/org/apache/roller/business/PlanetManagerTest.java
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/tests/org/apache/roller/business/PlanetManagerTest.java?view=diff&rev=453212&r1=453211&r2=453212
==============================================================================
--- incubator/roller/trunk/tests/org/apache/roller/business/PlanetManagerTest.java (original)
+++ incubator/roller/trunk/tests/org/apache/roller/business/PlanetManagerTest.java Thu Oct 5 05:52:59 2006
@@ -69,10 +69,10 @@
protected void setUp() throws Exception {
super.setUp();
- RollerConfig.setPlanetCachePath("." + File.separator + "planet-cache");
+ //RollerConfig.setPlanetCachePath("." + File.separator + "planet-cache");
}
- public void _testConfigurationStorage() throws Exception {
+ public void testConfigurationStorage() throws Exception {
PlanetManager planet = RollerFactory.getRoller().getPlanetManager();
@@ -98,7 +98,7 @@
}
- public void _testGroupStorage() throws Exception {
+ public void testGroupStorage() throws Exception {
PlanetManager planet = RollerFactory.getRoller().getPlanetManager();
@@ -200,7 +200,7 @@
}
- public void _testSubscriptionEntryStorage() throws Exception {
+ public void testSubscriptionEntryStorage() throws Exception {
PlanetManager planet = RollerFactory.getRoller().getPlanetManager();
@@ -217,15 +217,17 @@
PlanetEntryData entry1 = new PlanetEntryData();
entry1.setPermalink("test_entry1");
entry1.setCategoriesString("test,test2");
- entry1.setSubscription(sub);
entry1.setPubTime(new Timestamp(System.currentTimeMillis()));
+ entry1.setSubscription(sub);
+ planet.saveEntry(entry1);
sub.addEntry(entry1);
PlanetEntryData entry2 = new PlanetEntryData();
entry2.setPermalink("test_entry2");
entry2.setCategoriesString("test_cat1,test_cat2,test_cat3");
- entry2.setSubscription(sub);
entry2.setPubTime(new Timestamp(System.currentTimeMillis()));
+ entry2.setSubscription(sub);
+ planet.saveEntry(entry2);
sub.addEntry(entry2);
// save entries
@@ -277,13 +279,17 @@
}
- public void _testRefreshEntries() throws Exception {
+ public void testRefreshEntries() throws Exception {
PlanetManager planet = RollerFactory.getRoller().getPlanetManager();
String feed_url1 = "http://rollerweblogger.org/roller/feed/entries/rss";
{
+ PlanetConfigData config = planet.getConfiguration();
+ config.setCacheDir("." + File.separator + "planet-cache");
+ planet.saveConfiguration(config);
+
PlanetGroupData group = new PlanetGroupData();
group.setDescription("test_group_desc");
group.setHandle("test_handle");
@@ -320,7 +326,7 @@
}
- public void _testAggregations() throws Exception {
+ public void testAggregations() throws Exception {
try {
PlanetManager planet = RollerFactory.getRoller().getPlanetManager();
@@ -385,7 +391,7 @@
}
- public void _testSubscriptionCount() throws Exception {
+ public void testSubscriptionCount() throws Exception {
try {
PlanetManager planet = RollerFactory.getRoller().getPlanetManager();