[jboss-cvs] jboss-seam/examples/seamspace/src/org/jboss/seam/example/seamspace ...
Shane Bryzak
Shane_Bryzak at symantec.com
Wed Jan 10 19:43:53 EST 2007
User: sbryzak2
Date: 07/01/10 19:43:53
Modified: examples/seamspace/src/org/jboss/seam/example/seamspace
BlogAction.java BlogLocal.java MemberBlog.java
Added: examples/seamspace/src/org/jboss/seam/example/seamspace
BlogComment.java
Log:
added member blog
Revision Changes Path
1.2 +19 -4 jboss-seam/examples/seamspace/src/org/jboss/seam/example/seamspace/BlogAction.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: BlogAction.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/examples/seamspace/src/org/jboss/seam/example/seamspace/BlogAction.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- BlogAction.java 10 Jan 2007 05:20:34 -0000 1.1
+++ BlogAction.java 11 Jan 2007 00:43:53 -0000 1.2
@@ -8,8 +8,11 @@
import org.jboss.seam.ScopeType;
import org.jboss.seam.annotations.Destroy;
+import org.jboss.seam.annotations.Factory;
import org.jboss.seam.annotations.In;
import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Out;
+import org.jboss.seam.annotations.RequestParameter;
import org.jboss.seam.annotations.Scope;
@Stateful
@@ -17,22 +20,34 @@
@Scope(ScopeType.EVENT)
public class BlogAction implements BlogLocal
{
+ @RequestParameter
+ private String name;
+
@In(create=true)
private EntityManager entityManager;
@In(required = false)
private Member selectedMember;
+ @Out(required = false)
+ private List memberBlogs;
+
public List getLatestBlogs()
{
- List blogs =
- entityManager.createQuery(
+ return entityManager.createQuery(
"from MemberBlog b where b.member = :member order by b.entryDate desc")
.setParameter("member", selectedMember)
.setMaxResults(5)
.getResultList();
+ }
- return blogs;
+ @Factory("memberBlogs")
+ public void getMemberBlogs()
+ {
+ memberBlogs = entityManager.createQuery(
+ "from MemberBlog b where b.member.name = :name order by b.entryDate desc")
+ .setParameter("name", name)
+ .getResultList();
}
@Remove @Destroy
1.2 +1 -0 jboss-seam/examples/seamspace/src/org/jboss/seam/example/seamspace/BlogLocal.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: BlogLocal.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/examples/seamspace/src/org/jboss/seam/example/seamspace/BlogLocal.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- BlogLocal.java 10 Jan 2007 05:20:34 -0000 1.1
+++ BlogLocal.java 11 Jan 2007 00:43:53 -0000 1.2
@@ -8,5 +8,6 @@
public interface BlogLocal
{
List getLatestBlogs();
+ void getMemberBlogs();
void destroy();
}
1.2 +32 -0 jboss-seam/examples/seamspace/src/org/jboss/seam/example/seamspace/MemberBlog.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: MemberBlog.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/examples/seamspace/src/org/jboss/seam/example/seamspace/MemberBlog.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- MemberBlog.java 10 Jan 2007 05:20:34 -0000 1.1
+++ MemberBlog.java 11 Jan 2007 00:43:53 -0000 1.2
@@ -1,12 +1,17 @@
package org.jboss.seam.example.seamspace;
import java.io.Serializable;
+import java.text.SimpleDateFormat;
import java.util.Date;
+import java.util.List;
import javax.persistence.Entity;
+import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
+import javax.persistence.OneToMany;
+import javax.persistence.Transient;
import org.jboss.seam.annotations.Name;
@@ -16,12 +21,16 @@
{
private static final long serialVersionUID = 7824113911888715595L;
+ private static SimpleDateFormat df = new SimpleDateFormat("EEEE, MMMM d, yyyy - hh:mm a");
+
private Integer blogId;
private Member member;
private Date entryDate;
private String title;
private String text;
+ private List<BlogComment> comments;
+
@Id
public Integer getBlogId()
{
@@ -43,6 +52,12 @@
this.entryDate = entryDate;
}
+ @Transient
+ public String getFormattedEntryDate()
+ {
+ return df.format(entryDate);
+ }
+
@ManyToOne
@JoinColumn(name = "MEMBER_ID")
public Member getMember()
@@ -74,4 +89,21 @@
{
this.title = title;
}
+
+ @OneToMany
+ public List<BlogComment> getComments()
+ {
+ return comments;
+ }
+
+ public void setComments(List<BlogComment> comments)
+ {
+ this.comments = comments;
+ }
+
+ @Transient
+ public int getCommentCount()
+ {
+ return comments.size();
+ }
}
1.1 date: 2007/01/11 00:43:53; author: sbryzak2; state: Exp;jboss-seam/examples/seamspace/src/org/jboss/seam/example/seamspace/BlogComment.java
Index: BlogComment.java
===================================================================
package org.jboss.seam.example.seamspace;
import java.io.Serializable;
import java.util.Date;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import org.hibernate.validator.NotNull;
import org.jboss.seam.annotations.Name;
@Entity
@Name("blogComment")
public class BlogComment implements Serializable
{
private static final long serialVersionUID = 5495139096911872039L;
private Integer commentId;
private MemberBlog blog;
private Member commentor;
private Date commentDate;
private String comment;
@Id
public Integer getCommentId()
{
return commentId;
}
public void setCommentId(Integer commentId)
{
this.commentId = commentId;
}
@ManyToOne
public MemberBlog getBlog()
{
return blog;
}
public void setBlog(MemberBlog blog)
{
this.blog = blog;
}
@NotNull
public String getComment()
{
return comment;
}
public void setComment(String comment)
{
this.comment = comment;
}
@NotNull
public Date getCommentDate()
{
return commentDate;
}
public void setCommentDate(Date commentDate)
{
this.commentDate = commentDate;
}
@ManyToOne
@JoinColumn(name = "MEMBER_ID")
public Member getCommentor()
{
return commentor;
}
public void setCommentor(Member commentor)
{
this.commentor = commentor;
}
}
More information about the jboss-cvs-commits
mailing list