[jboss-cvs] JBossBlog SVN: r202 - in trunk: src/action/org/jboss/blog/session/feed/mod and 9 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Feb 7 12:23:14 EST 2008
Author: adamw
Date: 2008-02-07 12:23:13 -0500 (Thu, 07 Feb 2008)
New Revision: 202
Added:
trunk/src/test/org/jboss/blog/tools/FixHtmlExample1.java
Modified:
trunk/resources/META-INF/persistence-dev.xml
trunk/resources/META-INF/persistence-prod.xml
trunk/src/action/org/jboss/blog/session/feed/mod/AggregatedFeedModBean.java
trunk/src/action/org/jboss/blog/session/feed/posts/AggregatedFeedPosts.java
trunk/src/action/org/jboss/blog/session/group/GroupModBean.java
trunk/src/action/org/jboss/blog/session/merge/MergeServiceBean.java
trunk/src/action/org/jboss/blog/session/parser/ParserServiceImpl.java
trunk/src/action/org/jboss/blog/session/update/UpdateHandler.java
trunk/src/action/org/jboss/blog/session/update/UpdateManager.java
trunk/src/action/org/jboss/blog/session/view/FeedViewBean.java
trunk/src/model/org/jboss/blog/model/Group.java
trunk/view/manage/feed_mod.xhtml
Log:
Modified: trunk/resources/META-INF/persistence-dev.xml
===================================================================
--- trunk/resources/META-INF/persistence-dev.xml 2008-02-07 15:20:12 UTC (rev 201)
+++ trunk/resources/META-INF/persistence-dev.xml 2008-02-07 17:23:13 UTC (rev 202)
@@ -28,8 +28,8 @@
<property name="hibernate.cache.use_query_cache" value="true"/>
<property name="hibernate.cache.use_second_level_cache" value="true"/>
- <!--<property name="hibernate.cache.provider_class" value="org.hibernate.cache.EhCacheProvider" />
- <property name="hibernate.cache.provider_configuration_file_resource_path" value="blog-ehcache.xml" />-->
+ <property name="hibernate.cache.provider_class" value="org.hibernate.cache.EhCacheProvider" />
+ <property name="hibernate.cache.provider_configuration_file_resource_path" value="blog-ehcache.xml" />
<!-- TODO Search -->
<!-- use a file system based index -->
Modified: trunk/resources/META-INF/persistence-prod.xml
===================================================================
--- trunk/resources/META-INF/persistence-prod.xml 2008-02-07 15:20:12 UTC (rev 201)
+++ trunk/resources/META-INF/persistence-prod.xml 2008-02-07 17:23:13 UTC (rev 202)
@@ -29,8 +29,8 @@
<property name="hibernate.cache.use_query_cache" value="true"/>
<property name="hibernate.cache.use_second_level_cache" value="true"/>
- <!--<property name="hibernate.cache.provider_class" value="org.hibernate.cache.EhCacheProvider" />
- <property name="hibernate.cache.provider_configuration_file_resource_path" value="blog-ehcache.xml" />-->
+ <property name="hibernate.cache.provider_class" value="org.hibernate.cache.EhCacheProvider" />
+ <property name="hibernate.cache.provider_configuration_file_resource_path" value="blog-ehcache.xml" />
<!-- Search -->
<!-- use a file system based index -->
Modified: trunk/src/action/org/jboss/blog/session/feed/mod/AggregatedFeedModBean.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/feed/mod/AggregatedFeedModBean.java 2008-02-07 15:20:12 UTC (rev 201)
+++ trunk/src/action/org/jboss/blog/session/feed/mod/AggregatedFeedModBean.java 2008-02-07 17:23:13 UTC (rev 202)
@@ -5,6 +5,7 @@
import org.jboss.blog.model.Group;
import org.jboss.blog.model.post.PostFilter;
import org.jboss.blog.service.FeedsService;
+import org.jboss.blog.service.GroupsService;
import org.jboss.blog.session.feed.InvalidFeedTypeException;
import org.jboss.blog.model.post.filter.AndFilter;
import org.jboss.blog.session.view.LinkServiceBean;
@@ -40,6 +41,9 @@
@In
private LinkServiceBean linkService;
+ @In
+ private GroupsService groupsService;
+
private AggregatedFeed aggregatedFeed;
private List<Feed> availableFeeds;
@@ -112,7 +116,7 @@
availableFeeds = new ArrayList<Feed>();
for (Group availableGroup : availableGroups) {
- for (Feed nextFeed : availableGroup.getFeeds()) {
+ for (Feed nextFeed : groupsService.acceptedFeeds(availableGroup)) {
if (GeneralTools.objectsEqual(nextFeed, getAggregatedFeed())) {
continue;
}
Modified: trunk/src/action/org/jboss/blog/session/feed/posts/AggregatedFeedPosts.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/feed/posts/AggregatedFeedPosts.java 2008-02-07 15:20:12 UTC (rev 201)
+++ trunk/src/action/org/jboss/blog/session/feed/posts/AggregatedFeedPosts.java 2008-02-07 17:23:13 UTC (rev 202)
@@ -5,6 +5,7 @@
import org.jboss.blog.model.RestrictedPost;
import org.jboss.blog.model.Group;
import org.jboss.blog.service.FeedsService;
+import org.jboss.blog.service.GroupsService;
import org.jboss.blog.tools.GeneralTools;
import org.jboss.blog.model.post.PostFilter;
import org.jboss.seam.ScopeType;
@@ -24,6 +25,9 @@
private FeedsService feedsService;
@In
+ private GroupsService groupsService;
+
+ @In
private AggregatedFeedStack aggregatedFeedStack;
private void filterPostList(List<? extends RestrictedPost> posts, PostFilter filter) {
@@ -48,7 +52,7 @@
Map<Group, PostFilter> groupsAndFilters = aggregatedFeed.getGroups();
for (Group group : groupsAndFilters.keySet()) {
PostFilter groupFilter = groupsAndFilters.get(group);
- for (Feed feedInGroup : group.getFeeds()) {
+ for (Feed feedInGroup : groupsService.acceptedFeeds(group)) {
feedsAndFilters.put(feedInGroup, groupFilter);
}
}
Modified: trunk/src/action/org/jboss/blog/session/group/GroupModBean.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/group/GroupModBean.java 2008-02-07 15:20:12 UTC (rev 201)
+++ trunk/src/action/org/jboss/blog/session/group/GroupModBean.java 2008-02-07 17:23:13 UTC (rev 202)
@@ -4,6 +4,7 @@
import org.jboss.seam.annotations.In;
import org.jboss.seam.faces.FacesMessages;
import org.jboss.blog.model.Group;
+import org.jboss.blog.service.GroupsService;
import javax.persistence.EntityManager;
import javax.faces.application.FacesMessage;
@@ -19,6 +20,9 @@
@In
private FacesMessages facesMessages;
+ @In
+ private GroupsService groupsService;
+
private Group group;
public Group getGroup() {
@@ -49,7 +53,7 @@
}
public void delete() {
- if (group.getFeeds().size() > 0) {
+ if ((groupsService.acceptedFeeds(group).size() > 0) || (groupsService.unacceptedFeeds(group).size() > 0)) {
facesMessages.addFromResourceBundle(FacesMessage.SEVERITY_INFO, "blog.group.cannotdelete",
group.getDisplayName(), group.getName());
Modified: trunk/src/action/org/jboss/blog/session/merge/MergeServiceBean.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/merge/MergeServiceBean.java 2008-02-07 15:20:12 UTC (rev 201)
+++ trunk/src/action/org/jboss/blog/session/merge/MergeServiceBean.java 2008-02-07 17:23:13 UTC (rev 202)
@@ -38,12 +38,11 @@
public void savePost(Feed feed, Post post) {
post.setTitleAsId(titleAsIdService.generateTitleAsId(post.getTitle()));
- post.setContent(StringTools.fixHtml(post.getContent()));
-
log.debug("Saving post, feed: #0, post title: #1, post titleAsId: #2, published: #3.",
feed.getName(), post.getTitle(), post.getTitleAsId(), post.getPublished());
post.setFeed(feed);
+
entityManager.persist(post);
for (Enclosure enc : post.getEnclosures()) {
@@ -84,31 +83,43 @@
boolean changes = false;
if (!GeneralTools.objectsEqual(mergeTo.getAuthor(), mergeFrom.getAuthor())) {
+ log.debug("Post '#0' merge, changed author, new: '#1', old: '#2'.",
+ mergeTo.getTitleAsId(), mergeFrom.getAuthor(), mergeTo.getAuthor());
mergeTo.setAuthor(mergeFrom.getAuthor());
changes = true;
}
if (!GeneralTools.objectsEqual(mergeTo.getContent(), mergeFrom.getContent())) {
+ log.debug("Post '#0' merge, changed content, new: '#1', old: '#2'.",
+ mergeTo.getTitleAsId(), mergeFrom.getContent(), mergeTo.getContent());
mergeTo.setContent(mergeFrom.getContent());
changes = true;
}
if (!GeneralTools.objectsEqual(mergeTo.getLink(), mergeFrom.getLink())) {
+ log.debug("Post '#0' merge, changed link, new: '#1', old: '#2'.",
+ mergeTo.getTitleAsId(), mergeFrom.getLink(), mergeTo.getLink());
mergeTo.setLink(mergeFrom.getLink());
changes = true;
}
- if (!GeneralTools.objectsEqual(mergeTo.getModified(), mergeFrom.getModified())) {
+ if (mergeTo.getModified().getTime() != mergeFrom.getModified().getTime()) {
+ log.debug("Post '#0' merge, changed modified date, new: '#1', old: '#2'.",
+ mergeTo.getTitleAsId(), mergeFrom.getModified().getTime(), mergeTo.getModified().getTime());
mergeTo.setModified(mergeFrom.getModified());
changes = true;
}
if (!GeneralTools.objectsEqual(mergeTo.getTitle(), mergeFrom.getTitle())) {
+ log.debug("Post '#0' merge, changed title, new: '#1', old: '#2'.",
+ mergeTo.getTitleAsId(), mergeFrom.getTitle(), mergeTo.getTitle());
mergeTo.setTitle(mergeFrom.getTitle());
changes = true;
}
if (changes) {
+ log.debug("Saving merged changes in post #0.", mergeTo.getTitleAsId());
+
entityManager.flush();
Events.instance().raiseEvent("org.jboss.blog.post.updated", mergeTo.getTitleAsId(), feed.getName());
Modified: trunk/src/action/org/jboss/blog/session/parser/ParserServiceImpl.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/parser/ParserServiceImpl.java 2008-02-07 15:20:12 UTC (rev 201)
+++ trunk/src/action/org/jboss/blog/session/parser/ParserServiceImpl.java 2008-02-07 17:23:13 UTC (rev 202)
@@ -96,7 +96,7 @@
}
}
- post.setContent(longestContent);
+ post.setContent(StringTools.fixHtml(longestContent));
// Setting categories
post.setCategories(new ArrayList<Category>());
Modified: trunk/src/action/org/jboss/blog/session/update/UpdateHandler.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/update/UpdateHandler.java 2008-02-07 15:20:12 UTC (rev 201)
+++ trunk/src/action/org/jboss/blog/session/update/UpdateHandler.java 2008-02-07 17:23:13 UTC (rev 202)
@@ -3,6 +3,7 @@
import org.jboss.blog.model.feed.Feed;
import org.jboss.blog.model.Group;
import org.jboss.blog.service.FeedsService;
+import org.jboss.blog.service.GroupsService;
import org.jboss.blog.session.feed.type.FeedTypes;
import org.jboss.seam.annotations.AutoCreate;
import org.jboss.seam.annotations.In;
@@ -23,19 +24,19 @@
private FeedsService feedsService;
@In
+ private GroupsService groupsService;
+
+ @In
private FeedTypes feedTypes;
public void update() {
for (Group group : feedsService.getAllGroups()) {
- for (Feed feed : group.getFeeds()) {
- // TODO: remove
- System.out.println("Updating feed: (1) " + feed.getName());
- if (feed.isAccepted()) {
- try {
- feedTypes.getFeedDao(feed).update();
- } catch (UpdateException e) {
- System.out.println("Exception when updating feed: " + feed.getName() + "; " + e.getMessage());
- }
+ for (Feed feed : groupsService.acceptedFeeds(group)) {
+ try {
+ feedTypes.getFeedDao(feed).update();
+ } catch (UpdateException e) {
+ // TODO: log this somewhere
+ System.out.println("Exception when updating feed: " + feed.getName() + "; " + e.getMessage());
}
}
}
Modified: trunk/src/action/org/jboss/blog/session/update/UpdateManager.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/update/UpdateManager.java 2008-02-07 15:20:12 UTC (rev 201)
+++ trunk/src/action/org/jboss/blog/session/update/UpdateManager.java 2008-02-07 17:23:13 UTC (rev 202)
@@ -3,7 +3,6 @@
import org.jboss.seam.ScopeType;
import org.jboss.seam.Component;
import org.jboss.seam.log.Logging;
-import org.jboss.seam.async.AbstractDispatcher;
import org.jboss.seam.contexts.Contexts;
import org.jboss.seam.contexts.Lifecycle;
import org.jboss.seam.annotations.*;
@@ -30,11 +29,9 @@
// TODO: add monitor and configurable intervals
- // executor.scheduleAtFixedRate(new UpdateRunnable(), 3, 20, TimeUnit.SECONDS);
+ executor.scheduleAtFixedRate(new UpdateRunnable(), 10, 900, TimeUnit.SECONDS);
}
- // TODO: the cache in this thread is not updated
- // TODO: EhCache or hashtable cache? If not ehcache -> remove the jar
private static class UpdateRunnable implements Runnable {
public void run() {
boolean createContexts = !Contexts.isEventContextActive() && !Contexts.isApplicationContextActive();
Modified: trunk/src/action/org/jboss/blog/session/view/FeedViewBean.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/view/FeedViewBean.java 2008-02-07 15:20:12 UTC (rev 201)
+++ trunk/src/action/org/jboss/blog/session/view/FeedViewBean.java 2008-02-07 17:23:13 UTC (rev 202)
@@ -5,6 +5,7 @@
import org.jboss.blog.model.RestrictedPost;
import org.jboss.blog.model.Group;
import org.jboss.blog.service.FeedsService;
+import org.jboss.blog.service.GroupsService;
import org.jboss.blog.tools.StringTools;
import org.jboss.seam.ScopeType;
import org.jboss.seam.annotations.In;
@@ -23,6 +24,9 @@
@In
private FeedsService feedsService;
+ @In
+ private GroupsService groupsService;
+
private Feed feed;
private int from;
@@ -75,7 +79,7 @@
*/
public void fixHtml() {
for (Group group : feedsService.getAllGroups()) {
- for (Feed feed : group.getFeeds()) {
+ for (Feed feed : groupsService.acceptedFeeds(group)) {
for (Post post : feed.getPosts()) {
post.setContent(StringTools.fixHtml(post.getContent()));
}
Modified: trunk/src/model/org/jboss/blog/model/Group.java
===================================================================
--- trunk/src/model/org/jboss/blog/model/Group.java 2008-02-07 15:20:12 UTC (rev 201)
+++ trunk/src/model/org/jboss/blog/model/Group.java 2008-02-07 17:23:13 UTC (rev 202)
@@ -1,6 +1,5 @@
package org.jboss.blog.model;
-import org.jboss.blog.model.feed.Feed;
import org.hibernate.validator.NotEmpty;
import org.hibernate.validator.Pattern;
import org.hibernate.validator.Length;
@@ -8,7 +7,6 @@
import org.hibernate.annotations.CacheConcurrencyStrategy;
import javax.persistence.*;
-import java.util.List;
/**
* @author <a href="mailto:adam at warski.org">Adam Warski</a>
@@ -22,11 +20,6 @@
@Column(updatable = false)
private Integer id;
- @OneToMany(mappedBy = "group")
- @OrderBy("name")
- @Cache(usage = CacheConcurrencyStrategy.READ_WRITE)
- private List<Feed> feeds;
-
@NotEmpty
@Column(unique = true)
@Length(max = 32)
@@ -45,14 +38,6 @@
this.id = id;
}
- public List<Feed> getFeeds() {
- return feeds;
- }
-
- public void setFeeds(List<Feed> feeds) {
- this.feeds = feeds;
- }
-
public String getName() {
return name;
}
Added: trunk/src/test/org/jboss/blog/tools/FixHtmlExample1.java
===================================================================
--- trunk/src/test/org/jboss/blog/tools/FixHtmlExample1.java (rev 0)
+++ trunk/src/test/org/jboss/blog/tools/FixHtmlExample1.java 2008-02-07 17:23:13 UTC (rev 202)
@@ -0,0 +1,16 @@
+package org.jboss.blog.tools;
+
+/**
+ * @author <a href="mailto:adam at warski.org">Adam Warski</a>
+ */
+public class FixHtmlExample1 {
+ public static void main(String[] args) {
+ System.out.println(StringTools.fixHtml("<p>There are times that I realize I haven’t directed my own music choices for a while. Maybe I’ve been traveling, spending all day on the phone, or simply driving down the road with the radio inadvertently tuned to KRAP-FM.</p>\n" +
+ "<p>And I find my motivation waning, my creativity lacking, and my general happiness in deficit. Music matters to me. But even then, I’ll have trouble finding the <strong>right</strong> music to listen to. Somehow the 26.5 days of music jammed into iTunes just is not sufficient. The online streams seem off.</p>\n" +
+ "<p>But then there are days like today, when my wife introduced me to <a href=\"http://en.wikipedia.org/wiki/Jose_Gonzales\" title=\"Wikipedia says...\">José González</a>. This man sings exactly the right way for today. Plus the video has a creepy pigman.</p>\n" +
+ "<p><center><br />\n" +
+ "<object height=\"355\" width=\"425\"></p>\n" +
+ "<param name=\"movie\" value=\"http://www.youtube.com/v/FFiGPMxsnB4&rel=1\"></param>\n" +
+ "<param name=\"wmode\" value=\"transparent\"></param><embed src=\"http://www.youtube.com/v/FFiGPMxsnB4&rel=1\" type=\"application/x-shockwave-flash\" wmode=\"transparent\" height=\"355\" width=\"425\"></embed></object></center></p>"));
+ }
+}
Modified: trunk/view/manage/feed_mod.xhtml
===================================================================
--- trunk/view/manage/feed_mod.xhtml 2008-02-07 15:20:12 UTC (rev 201)
+++ trunk/view/manage/feed_mod.xhtml 2008-02-07 17:23:13 UTC (rev 202)
@@ -24,7 +24,6 @@
</ul>
</div>
-
<h:form>
<div class="adminforms">
<h:panelGrid columns="2">
More information about the jboss-cvs-commits
mailing list