You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@roller.apache.org by el...@apache.org on 2006/10/02 18:42:42 UTC
svn commit: r452115 - in /incubator/roller/trunk: metadata/database/
metadata/database/hibernate/ src/org/apache/roller/business/hibernate/
src/org/apache/roller/model/ src/org/apache/roller/pojos/
src/org/apache/roller/ui/authoring/struts/formbeans/ s...
Author: eliast
Date: Mon Oct 2 09:42:40 2006
New Revision: 452115
URL: http://svn.apache.org/viewvc?view=rev&rev=452115
Log:
Reverted commit that was using TagSummariesTask.
- Removed TagManager
- Removed getTagManager() from Roller
- Refactored TagCloudEntry to TagStat
- Removed SiteTagAggregateData (and reference from hibernate.cfg.xml's)
- Removed 2 unnecessary tables in createdb.vm
These changes also fix ROL-1247.
Added:
incubator/roller/trunk/src/org/apache/roller/pojos/TagStat.java
- copied, changed from r450686, incubator/roller/trunk/src/org/apache/roller/pojos/TagCloudEntry.java
Removed:
incubator/roller/trunk/src/org/apache/roller/business/hibernate/HibernateTagManagerImpl.java
incubator/roller/trunk/src/org/apache/roller/pojos/SiteTagAggregateData.java
incubator/roller/trunk/src/org/apache/roller/pojos/TagCloudEntry.java
incubator/roller/trunk/src/org/apache/roller/ui/core/tasks/TagSummariesTask.java
Modified:
incubator/roller/trunk/metadata/database/createdb.vm
incubator/roller/trunk/metadata/database/hibernate/hibernate.cfg.xml
incubator/roller/trunk/src/org/apache/roller/business/hibernate/HibernateRollerImpl.java
incubator/roller/trunk/src/org/apache/roller/business/hibernate/HibernateWeblogManagerImpl.java
incubator/roller/trunk/src/org/apache/roller/model/Roller.java
incubator/roller/trunk/src/org/apache/roller/model/WeblogManager.java
incubator/roller/trunk/src/org/apache/roller/pojos/WeblogEntryData.java
incubator/roller/trunk/src/org/apache/roller/pojos/WeblogEntryTagData.java
incubator/roller/trunk/src/org/apache/roller/pojos/WeblogTagAggregateData.java
incubator/roller/trunk/src/org/apache/roller/ui/authoring/struts/formbeans/WeblogEntryFormEx.java
incubator/roller/trunk/src/org/apache/roller/ui/rendering/model/SiteModel.java
incubator/roller/trunk/testdata/WEB-INF/classes/hibernate.cfg.xml
incubator/roller/trunk/tests/org/apache/roller/business/WeblogEntryTest.java
incubator/roller/trunk/web/WEB-INF/classes/roller.properties
Modified: incubator/roller/trunk/metadata/database/createdb.vm
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/metadata/database/createdb.vm?view=diff&rev=452115&r1=452114&r2=452115
==============================================================================
--- incubator/roller/trunk/metadata/database/createdb.vm (original)
+++ incubator/roller/trunk/metadata/database/createdb.vm Mon Oct 2 09:42:40 2006
@@ -224,32 +224,13 @@
create table weblogtagagg (
id varchar(48) not null primary key,
- websiteid varchar(48) not null,
+ websiteid varchar(48) ,
name varchar(255) not null,
count integer not null
);
create index weta_websiteid_idx on weblogtagagg( websiteid );
create index weta_name_idx on weblogtagagg( name );
-
-create table usertagagg (
- id varchar(48) not null primary key,
- userid varchar(48) not null,
- name varchar(255) not null,
- count integer not null
-);
-
-create index userta_userid_idx on usertagagg( userid );
-create index userta_name_idx on usertagagg( name );
-
-create table sitetagagg (
- id varchar(48) not null primary key,
- name varchar(255) not null,
- count integer not null
-);
-
-create index siteta_name_idx on sitetagagg( name );
-
create table newsfeed (
id varchar(48) not null primary key,
Modified: incubator/roller/trunk/metadata/database/hibernate/hibernate.cfg.xml
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/metadata/database/hibernate/hibernate.cfg.xml?view=diff&rev=452115&r1=452114&r2=452115
==============================================================================
--- incubator/roller/trunk/metadata/database/hibernate/hibernate.cfg.xml (original)
+++ incubator/roller/trunk/metadata/database/hibernate/hibernate.cfg.xml Mon Oct 2 09:42:40 2006
@@ -95,8 +95,7 @@
<mapping resource="org/apache/roller/pojos/WeblogEntryData.hbm.xml" />
<mapping resource="org/apache/roller/pojos/WeblogEntryTagData.hbm.xml" />
- <mapping resource="org/apache/roller/pojos/WeblogTagAggregateData.hbm.xml" />
- <mapping resource="org/apache/roller/pojos/SiteTagAggregateData.hbm.xml" />
+ <mapping resource="org/apache/roller/pojos/WeblogTagAggregateData.hbm.xml" />
<mapping resource="org/apache/roller/pojos/EntryAttributeData.hbm.xml" />
<mapping resource="org/apache/roller/pojos/WeblogCategoryData.hbm.xml" />
<mapping resource="org/apache/roller/pojos/WeblogCategoryAssoc.hbm.xml" />
Modified: incubator/roller/trunk/src/org/apache/roller/business/hibernate/HibernateRollerImpl.java
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/src/org/apache/roller/business/hibernate/HibernateRollerImpl.java?view=diff&rev=452115&r1=452114&r2=452115
==============================================================================
--- incubator/roller/trunk/src/org/apache/roller/business/hibernate/HibernateRollerImpl.java (original)
+++ incubator/roller/trunk/src/org/apache/roller/business/hibernate/HibernateRollerImpl.java Mon Oct 2 09:42:40 2006
@@ -29,7 +29,6 @@
import org.apache.roller.model.AutoPingManager;
import org.apache.roller.model.PingQueueManager;
import org.apache.roller.model.PingTargetManager;
-import org.apache.roller.model.TagManager;
import org.apache.roller.planet.model.PlanetManager;
import org.apache.roller.model.PropertiesManager;
import org.apache.roller.model.RefererManager;
@@ -64,8 +63,6 @@
private PingQueueManager pingQueueManager = null;
private AutoPingManager autoPingManager = null;
private PingTargetManager pingTargetManager = null;
- private TagManager tagManager = null;
-
protected HibernateRollerImpl() throws RollerException {
try {
@@ -226,16 +223,6 @@
pingTargetManager = new HibernatePingTargetManagerImpl(strategy);
}
return pingTargetManager;
- }
-
- /**
- * @see org.apache.roller.model.Roller#getTagManager()
- */
- public TagManager getTagManager() throws RollerException {
- if (tagManager == null) {
- tagManager = new HibernateTagManagerImpl(strategy);
- }
- return tagManager;
- }
+ }
}
Modified: incubator/roller/trunk/src/org/apache/roller/business/hibernate/HibernateWeblogManagerImpl.java
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/src/org/apache/roller/business/hibernate/HibernateWeblogManagerImpl.java?view=diff&rev=452115&r1=452114&r2=452115
==============================================================================
--- incubator/roller/trunk/src/org/apache/roller/business/hibernate/HibernateWeblogManagerImpl.java (original)
+++ incubator/roller/trunk/src/org/apache/roller/business/hibernate/HibernateWeblogManagerImpl.java Mon Oct 2 09:42:40 2006
@@ -21,7 +21,6 @@
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
-import java.util.Collections;
import java.util.Comparator;
import java.util.Date;
import java.util.Hashtable;
@@ -36,14 +35,13 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.roller.RollerException;
-import org.apache.roller.model.Roller;
import org.apache.roller.model.RollerFactory;
import org.apache.roller.model.WeblogManager;
import org.apache.roller.pojos.Assoc;
import org.apache.roller.pojos.CommentData;
import org.apache.roller.pojos.RefererData;
import org.apache.roller.pojos.StatCount;
-import org.apache.roller.pojos.TagCloudEntry;
+import org.apache.roller.pojos.TagStat;
import org.apache.roller.pojos.UserData;
import org.apache.roller.pojos.WeblogCategoryAssoc;
import org.apache.roller.pojos.WeblogCategoryData;
@@ -55,7 +53,6 @@
import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
-import org.hibernate.criterion.CriteriaSpecification;
import org.hibernate.criterion.Expression;
import org.hibernate.criterion.Junction;
import org.hibernate.criterion.MatchMode;
@@ -572,7 +569,7 @@
public Date getWeblogLastPublishTime(WebsiteData website, String catName)
throws RollerException {
WeblogCategoryData cat = null;
- Roller mRoller = RollerFactory.getRoller();
+
if (catName != null && website != null) {
cat = getWeblogCategoryByPath(website, null, catName);
if (cat == null) catName = null;
@@ -1202,6 +1199,56 @@
} catch (Exception e) {
log.error("EXCEPTION applying comment defaults",e);
}
- }
+ }
+
+ public List getTags(Date startDate, Date endDate, WebsiteData website,
+ UserData user, String sortBy, int limit)
+ throws RollerException {
+ try {
+ List results = new ArrayList();
+
+ Session session = ((HibernatePersistenceStrategy) strategy)
+ .getSession();
+
+ if (sortBy != null && sortBy.equals("count")) {
+ sortBy = "col_1_0_ desc";
+ } else {
+ sortBy = "t.name";
+ }
+
+ StringBuffer queryString = new StringBuffer();
+ queryString.append("select t.name, count(t.name) ");
+ queryString.append("from WeblogEntryTagData t ");
+ queryString.append("where t.time between ? and ? ");
+ if (website != null)
+ queryString.append("and t.website.id = '" + website.getId()
+ + "' ");
+ if (user != null)
+ queryString.append("and t.user.id = '" + user.getId() + "' ");
+ queryString.append("group by t.name ");
+ queryString.append("order by " + sortBy);
+
+ Query query = session.createQuery(queryString.toString());
+ query.setTimestamp(0, DateUtil.getStartOfDay(startDate));
+ query.setTimestamp(1, DateUtil.getEndOfDay(endDate));
+ if (limit > 0)
+ query.setMaxResults(limit);
+
+ for (Iterator iter = query.list().iterator(); iter.hasNext();) {
+ Object[] row = (Object[]) iter.next();
+ TagStat ce = new TagStat();
+ ce.setName((String) row[0]);
+ ce.setCount(((Integer) row[1]).intValue());
+ results.add(ce);
+ }
+
+ return results;
+
+ } catch (HibernateException e) {
+ throw new RollerException(e);
+ }
+
+ }
+
}
Modified: incubator/roller/trunk/src/org/apache/roller/model/Roller.java
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/src/org/apache/roller/model/Roller.java?view=diff&rev=452115&r1=452114&r2=452115
==============================================================================
--- incubator/roller/trunk/src/org/apache/roller/model/Roller.java (original)
+++ incubator/roller/trunk/src/org/apache/roller/model/Roller.java Mon Oct 2 09:42:40 2006
@@ -128,13 +128,6 @@
/**
- * Get TagManager associated with this Roller instance.
- */
- public TagManager getTagManager() throws RollerException;
-
-
-
- /**
* Flush object states.
*/
public void flush() throws RollerException;
Modified: incubator/roller/trunk/src/org/apache/roller/model/WeblogManager.java
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/src/org/apache/roller/model/WeblogManager.java?view=diff&rev=452115&r1=452114&r2=452115
==============================================================================
--- incubator/roller/trunk/src/org/apache/roller/model/WeblogManager.java (original)
+++ incubator/roller/trunk/src/org/apache/roller/model/WeblogManager.java Mon Oct 2 09:42:40 2006
@@ -380,4 +380,19 @@
* Release all resources held by manager.
*/
public void release();
+
+ /**
+ * Get list of TagStat. There's no offset/length params just a limit.
+ * @param startDate Start date or null for not start date.
+ * @param endDate End date or null for no end date.
+ * @param website Weblog or null to get for all weblogs.
+ * @param user User or null to get for all users.
+ * @param sortBy Sort by either 'name' or 'count' (null for name)
+ * @param limit Max TagStats to return (or -1 for no limit)
+ * @return
+ * @throws RollerException
+ */
+ public List getTags(Date startDate, Date endDate, WebsiteData website,
+ UserData user, String sortBy, int limit)
+ throws RollerException;
}
Copied: incubator/roller/trunk/src/org/apache/roller/pojos/TagStat.java (from r450686, incubator/roller/trunk/src/org/apache/roller/pojos/TagCloudEntry.java)
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/src/org/apache/roller/pojos/TagStat.java?view=diff&rev=452115&p1=incubator/roller/trunk/src/org/apache/roller/pojos/TagCloudEntry.java&r1=450686&p2=incubator/roller/trunk/src/org/apache/roller/pojos/TagStat.java&r2=452115
==============================================================================
--- incubator/roller/trunk/src/org/apache/roller/pojos/TagCloudEntry.java (original)
+++ incubator/roller/trunk/src/org/apache/roller/pojos/TagStat.java Mon Oct 2 09:42:40 2006
@@ -27,7 +27,7 @@
* @author Elias Torres
*
*/
-public class TagCloudEntry implements java.io.Serializable {
+public class TagStat implements java.io.Serializable {
private static final long serialVersionUID = 1142064841813545198L;
@@ -35,7 +35,7 @@
private int count = 0;
- public TagCloudEntry() {
+ public TagStat() {
}
public String getName() {
Modified: incubator/roller/trunk/src/org/apache/roller/pojos/WeblogEntryData.java
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/src/org/apache/roller/pojos/WeblogEntryData.java?view=diff&rev=452115&r1=452114&r2=452115
==============================================================================
--- incubator/roller/trunk/src/org/apache/roller/pojos/WeblogEntryData.java (original)
+++ incubator/roller/trunk/src/org/apache/roller/pojos/WeblogEntryData.java Mon Oct 2 09:42:40 2006
@@ -620,44 +620,52 @@
}
public void addTag(String name) {
- WeblogEntryTagData tag = new WeblogEntryTagData();
- tag.setName(stripInvalidTagChars(name));
- tag.setUser(getCreator());
- tag.setWebsite(getWebsite());
- tag.setWeblogEntry(this);
- tag.setTime(getUpdateTime());
- tagSet.add(tag);
- }
-
- public void removeTag(String name) {
- Iterator it = tagSet.iterator();
- while(it.hasNext()) {
- WeblogEntryTagData tag = (WeblogEntryTagData) it.next();
- if(tag.getName().equals(name)) {
- it.remove();
- }
- }
- }
-
- public void updateTags(List tags) {
- HashSet newTags = new HashSet(tags);
-
- // remove old ones no longer passed.
- Iterator it = tagSet.iterator();
- while(it.hasNext()) {
- WeblogEntryTagData tag = (WeblogEntryTagData) it.next();
- if(!newTags.contains(tag.getName())) {
- it.remove();
- } else {
- newTags.remove(tag.getName());
- }
- }
-
- // add new ones, duplicates are taken care of by the db.
- it = newTags.iterator();
- while(it.hasNext()) {
- addTag((String) it.next());
- }
+ for (Iterator it = tagSet.iterator(); it.hasNext();) {
+ WeblogEntryTagData tag = (WeblogEntryTagData) it.next();
+ if(tag.getName().equals(name))
+ return;
+ }
+
+ WeblogEntryTagData tag = new WeblogEntryTagData();
+ tag.setName(stripInvalidTagChars(name));
+ tag.setUser(getCreator());
+ tag.setWebsite(getWebsite());
+ tag.setWeblogEntry(this);
+ tag.setTime(getUpdateTime());
+ tagSet.add(tag);
+ }
+
+ public void removeTag(String name) {
+ name = stripInvalidTagChars(name);
+ for (Iterator it = tagSet.iterator(); it.hasNext();) {
+ WeblogEntryTagData tag = (WeblogEntryTagData) it.next();
+ if(tag.getName().equals(name))
+ it.remove();
+ }
+ }
+
+ public void updateTags(List tags) {
+ HashSet newTags = new HashSet(tags);
+
+ HashSet removeTags = new HashSet();
+
+ // remove old ones no longer passed.
+ for (Iterator it = tagSet.iterator(); it.hasNext();) {
+ WeblogEntryTagData tag = (WeblogEntryTagData) it.next();
+ if (!newTags.contains(tag.getName())) {
+ removeTags.add(tag.getName());
+ } else {
+ newTags.remove(tag.getName());
+ }
+ }
+
+ for (Iterator it = removeTags.iterator(); it.hasNext();) {
+ removeTag((String) it.next());
+ }
+
+ for (Iterator it = newTags.iterator(); it.hasNext();) {
+ addTag((String) it.next());
+ }
}
public boolean checkValidTagChar(char c) {
@@ -680,40 +688,39 @@
}
return sb.toString();
}
-
- /**
- *
- * @roller.wrapPojoMethod type="simple"
- */
- public String getTags()
- {
- StringBuffer sb = new StringBuffer();
- for(Iterator it = getTagSet().iterator(); it.hasNext();)
- {
- sb.append(((WeblogEntryTagData)it.next()).getName()).append(" ");
- }
- if(sb.length() > 0)
- {
- sb.deleteCharAt(sb.length()-1);
- }
- return sb.toString();
- }
-
- public void setTags(String tags)
- {
- if (tags == null)
- return;
-
- String[] tagsarr = StringUtils.split(tags, ' ');
-
- if (tagsarr == null || tagsarr.length == 0)
- return;
-
- updateTags(Arrays.asList(tagsarr));
- }
+ /**
+ * @roller.wrapPojoMethod type="simple"
+ */
+ public String getTags() {
+ StringBuffer sb = new StringBuffer();
+ for (Iterator it = getTagSet().iterator(); it.hasNext();) {
+ sb.append(((WeblogEntryTagData) it.next()).getName()).append(" ");
+ }
+ if (sb.length() > 0) {
+ sb.deleteCharAt(sb.length() - 1);
+ }
+
+ return sb.toString();
+ }
+
+ public void setTags(String tags) {
+ if (tags == null) {
+ tagSet.clear();
+ return;
+ }
+
+ String[] tagsarr = StringUtils.split(tags, ' ');
+
+ if (tagsarr == null || tagsarr.length == 0) {
+ tagSet.clear();
+ return;
+ }
+
+ updateTags(Arrays.asList(tagsarr));
+ }
- //------------------------------------------------------------------------
+ // ------------------------------------------------------------------------
/**
* True if comments are still allowed on this entry considering the
Modified: incubator/roller/trunk/src/org/apache/roller/pojos/WeblogEntryTagData.java
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/src/org/apache/roller/pojos/WeblogEntryTagData.java?view=diff&rev=452115&r1=452114&r2=452115
==============================================================================
--- incubator/roller/trunk/src/org/apache/roller/pojos/WeblogEntryTagData.java (original)
+++ incubator/roller/trunk/src/org/apache/roller/pojos/WeblogEntryTagData.java Mon Oct 2 09:42:40 2006
@@ -195,14 +195,15 @@
}
public int hashCode() {
+
int result = 17;
result = PojoUtil.addHashCode(result, this.id);
- result = PojoUtil.addHashCode(result, this.website);
- result = PojoUtil.addHashCode(result, this.weblogEntry);
- result = PojoUtil.addHashCode(result, this.user);
+ result = PojoUtil.addHashCode(result, this.website != null ? this.website.getId() : null);
+ result = PojoUtil.addHashCode(result, this.weblogEntry != null ? this.weblogEntry.getId() : null);
+ result = PojoUtil.addHashCode(result, this.user != null ? this.user.getId() : null);
result = PojoUtil.addHashCode(result, this.name);
result = PojoUtil.addHashCode(result, this.time);
-
+
return result;
}
Modified: incubator/roller/trunk/src/org/apache/roller/pojos/WeblogTagAggregateData.java
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/src/org/apache/roller/pojos/WeblogTagAggregateData.java?view=diff&rev=452115&r1=452114&r2=452115
==============================================================================
--- incubator/roller/trunk/src/org/apache/roller/pojos/WeblogTagAggregateData.java (original)
+++ incubator/roller/trunk/src/org/apache/roller/pojos/WeblogTagAggregateData.java Mon Oct 2 09:42:40 2006
@@ -126,7 +126,7 @@
StringBuffer str = new StringBuffer("{");
str.append("id=" + id + " " +
- "websiteid=" + website.getId() +
+ "website=" + website +
"name=" + name + " " +
"count=" + count);
str.append('}');
Modified: incubator/roller/trunk/src/org/apache/roller/ui/authoring/struts/formbeans/WeblogEntryFormEx.java
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/src/org/apache/roller/ui/authoring/struts/formbeans/WeblogEntryFormEx.java?view=diff&rev=452115&r1=452114&r2=452115
==============================================================================
--- incubator/roller/trunk/src/org/apache/roller/ui/authoring/struts/formbeans/WeblogEntryFormEx.java (original)
+++ incubator/roller/trunk/src/org/apache/roller/ui/authoring/struts/formbeans/WeblogEntryFormEx.java Mon Oct 2 09:42:40 2006
@@ -61,7 +61,6 @@
private String mCategoryId = null;
private String mCreatorId = null;
private String mWebsiteId = null;
- private String mTags = null;
private Date mDate = new Date();
private String mDateString = null;
private Integer mHours = new Integer(0);
@@ -185,11 +184,6 @@
}
}
}
-
- if(getTags() != null)
- {
- entry.setTags(getTags());
- }
}
/**
@@ -211,13 +205,7 @@
{
pluginsArray = StringUtils.split(entry.getPlugins(), ",");
}
-
- String tags = entry.getTags();
- if (tags != null && tags.length() > 0)
- {
- setTags(tags);
- }
-
+
attributes = new HashMap();
Iterator atts = entry.getEntryAttributes().iterator();
while (atts.hasNext())
Modified: incubator/roller/trunk/src/org/apache/roller/ui/rendering/model/SiteModel.java
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/src/org/apache/roller/ui/rendering/model/SiteModel.java?view=diff&rev=452115&r1=452114&r2=452115
==============================================================================
--- incubator/roller/trunk/src/org/apache/roller/ui/rendering/model/SiteModel.java (original)
+++ incubator/roller/trunk/src/org/apache/roller/ui/rendering/model/SiteModel.java Mon Oct 2 09:42:40 2006
@@ -20,7 +20,6 @@
import java.util.ArrayList;
import java.util.Calendar;
-import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.Iterator;
@@ -33,7 +32,6 @@
import org.apache.roller.model.RefererManager;
import org.apache.roller.model.Roller;
import org.apache.roller.model.RollerFactory;
-import org.apache.roller.model.TagManager;
import org.apache.roller.model.UserManager;
import org.apache.roller.model.WeblogManager;
import org.apache.roller.pojos.PermissionsData;
@@ -492,9 +490,9 @@
Date startDate = cal.getTime();
try {
Roller roller = RollerFactory.getRoller();
- TagManager tmgr = roller.getTagManager();
- results = tmgr.getTags(
- startDate, new Date(), null, null, false, -1);
+ WeblogManager wmgr = roller.getWeblogManager();
+ results = wmgr.getTags(
+ startDate, new Date(), null, null, null, -1);
} catch (Exception e) {
log.error("ERROR: fetching site tags list", e);
}
@@ -514,9 +512,9 @@
Date startDate = cal.getTime();
try {
Roller roller = RollerFactory.getRoller();
- TagManager tmgr = roller.getTagManager();
- results = tmgr.getTags(
- startDate, new Date(), null, null, true, length);
+ WeblogManager wmgr = roller.getWeblogManager();
+ results = wmgr.getTags(
+ startDate, new Date(), null, null, "count", length);
} catch (Exception e) {
log.error("ERROR: fetching site tags list", e);
}
Modified: incubator/roller/trunk/testdata/WEB-INF/classes/hibernate.cfg.xml
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/testdata/WEB-INF/classes/hibernate.cfg.xml?view=diff&rev=452115&r1=452114&r2=452115
==============================================================================
--- incubator/roller/trunk/testdata/WEB-INF/classes/hibernate.cfg.xml (original)
+++ incubator/roller/trunk/testdata/WEB-INF/classes/hibernate.cfg.xml Mon Oct 2 09:42:40 2006
@@ -66,8 +66,7 @@
<mapping resource="org/apache/roller/pojos/WeblogEntryData.hbm.xml" />
<mapping resource="org/apache/roller/pojos/WeblogEntryTagData.hbm.xml" />
- <mapping resource="org/apache/roller/pojos/WeblogTagAggregateData.hbm.xml" />
- <mapping resource="org/apache/roller/pojos/SiteTagAggregateData.hbm.xml" />
+ <mapping resource="org/apache/roller/pojos/WeblogTagAggregateData.hbm.xml" />
<mapping resource="org/apache/roller/pojos/EntryAttributeData.hbm.xml" />
<mapping resource="org/apache/roller/pojos/WeblogCategoryData.hbm.xml" />
<mapping resource="org/apache/roller/pojos/WeblogCategoryAssoc.hbm.xml" />
Modified: incubator/roller/trunk/tests/org/apache/roller/business/WeblogEntryTest.java
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/tests/org/apache/roller/business/WeblogEntryTest.java?view=diff&rev=452115&r1=452114&r2=452115
==============================================================================
--- incubator/roller/trunk/tests/org/apache/roller/business/WeblogEntryTest.java (original)
+++ incubator/roller/trunk/tests/org/apache/roller/business/WeblogEntryTest.java Mon Oct 2 09:42:40 2006
@@ -23,6 +23,7 @@
package org.apache.roller.business;
+import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
@@ -626,6 +627,63 @@
TestUtils.teardownWeblogEntry(id);
TestUtils.endSession(true);
}
+
+ /**
+ * We want to make sure that the first time placed on the tag remains
+ * through consequent updates.
+ *
+ * @throws Exception
+ */
+ public void testUpdateTagTime() throws Exception {
+
+ WeblogManager mgr = RollerFactory.getRoller().getWeblogManager();
+
+ // setup some test entries to use
+ WeblogEntryData entry = TestUtils.setupWeblogEntry("entry1", testWeblog
+ .getDefaultCategory(), testWeblog, testUser);
+ entry.addTag("testWillStayTag");
+ entry.addTag("testTagWillBeRemoved");
+ String id = entry.getId();
+ TestUtils.endSession(true);
+
+ entry = mgr.getWeblogEntry(id);
+ assertEquals(2, entry.getTagSet().size());
+
+ Timestamp original = null;
+
+ for (Iterator it = entry.getTagSet().iterator(); it.hasNext();) {
+ WeblogEntryTagData tagData = (WeblogEntryTagData) it.next();
+ if (tagData.getName().equals("testWillStayTag"))
+ original = tagData.getTime();
+ }
+
+ List updateTags = new ArrayList();
+ updateTags.add("testWillStayTag");
+ updateTags.add("testNewTag");
+ updateTags.add("testNewTag3");
+ entry.updateTags(updateTags);
+ TestUtils.endSession(true);
+
+ entry = mgr.getWeblogEntry(id);
+ HashSet tagNames = new HashSet();
+ for (Iterator it = entry.getTagSet().iterator(); it.hasNext();) {
+ WeblogEntryTagData tagData = (WeblogEntryTagData) it.next();
+ tagNames.add(tagData.getName());
+ if (tagData.getName().equals("testWillStayTag"))
+ assertEquals(original, tagData.getTime());
+ }
+
+ assertEquals(3, entry.getTagSet().size());
+ assertEquals(3, tagNames.size());
+ assertEquals(true, tagNames.contains("testWillStayTag"));
+ assertEquals(true, tagNames.contains("testNewTag"));
+ assertEquals(true, tagNames.contains("testNewTag3"));
+
+ // teardown our test entry
+ TestUtils.teardownWeblogEntry(id);
+ TestUtils.endSession(true);
+ }
+
/**
Modified: incubator/roller/trunk/web/WEB-INF/classes/roller.properties
URL: http://svn.apache.org/viewvc/incubator/roller/trunk/web/WEB-INF/classes/roller.properties?view=diff&rev=452115&r1=452114&r2=452115
==============================================================================
--- incubator/roller/trunk/web/WEB-INF/classes/roller.properties (original)
+++ incubator/roller/trunk/web/WEB-INF/classes/roller.properties Mon Oct 2 09:42:40 2006
@@ -247,7 +247,7 @@
#,org.apache.roller.ui.core.tasks.SyncWebsitesTask
# Comma separated list of task classnames to be executed hourly
-tasks.hourly=org.apache.roller.ui.core.tasks.TagSummariesTask\
+tasks.hourly=\
# Hourly Planet task: refresh latest entry list from all weblogs in list
#org.apache.roller.ui.core.tasks.RefreshEntriesTask