Ajout du forum
This commit is contained in:
@@ -0,0 +1,13 @@
|
|||||||
|
package org.yacos.core.forum;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import javax.ejb.Remote;
|
||||||
|
|
||||||
|
@Remote
|
||||||
|
public interface IMessageManager {
|
||||||
|
|
||||||
|
public Message addMessage(String message, String title, Integer articleId, String userLogin);
|
||||||
|
public List<Message> getMessagesForArticle(Integer articleId);
|
||||||
|
|
||||||
|
}
|
||||||
116
YACOSCore/ejbModule/org/yacos/core/forum/Message.java
Normal file
116
YACOSCore/ejbModule/org/yacos/core/forum/Message.java
Normal file
@@ -0,0 +1,116 @@
|
|||||||
|
package org.yacos.core.forum;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
import javax.persistence.Entity;
|
||||||
|
import javax.persistence.GeneratedValue;
|
||||||
|
import javax.persistence.GenerationType;
|
||||||
|
import javax.persistence.Id;
|
||||||
|
import javax.persistence.JoinColumn;
|
||||||
|
import javax.persistence.ManyToOne;
|
||||||
|
import javax.persistence.Temporal;
|
||||||
|
import javax.persistence.TemporalType;
|
||||||
|
|
||||||
|
import org.yacos.core.article.Article;
|
||||||
|
import org.yacos.core.users.User;
|
||||||
|
|
||||||
|
@Entity
|
||||||
|
public class Message implements Serializable {
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private static final long serialVersionUID = -8960098137182930392L;
|
||||||
|
|
||||||
|
@Id
|
||||||
|
@GeneratedValue(strategy=GenerationType.AUTO)
|
||||||
|
private Integer id;
|
||||||
|
private String message;
|
||||||
|
private String title;
|
||||||
|
|
||||||
|
@Temporal(TemporalType.DATE)
|
||||||
|
private Date dateMessage;
|
||||||
|
|
||||||
|
@ManyToOne(targetEntity=Article.class)
|
||||||
|
@JoinColumn(name="article_id",nullable=false)
|
||||||
|
private Article article;
|
||||||
|
|
||||||
|
@ManyToOne(targetEntity=User.class)
|
||||||
|
@JoinColumn(name="user_id",nullable=false)
|
||||||
|
private User user;
|
||||||
|
|
||||||
|
public Message() {}
|
||||||
|
|
||||||
|
public Message(Integer id, String message, String title, Article article, User user) {
|
||||||
|
this.id = id;
|
||||||
|
this.message = message;
|
||||||
|
this.title = title;
|
||||||
|
this.dateMessage = new Date();
|
||||||
|
this.article = article;
|
||||||
|
this.user = user;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Id
|
||||||
|
@GeneratedValue(strategy=GenerationType.AUTO)
|
||||||
|
public Integer getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Id
|
||||||
|
@GeneratedValue(strategy=GenerationType.AUTO)
|
||||||
|
public void setId(Integer id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMessage() {
|
||||||
|
return message;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMessage(String message) {
|
||||||
|
this.message = message;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Temporal(TemporalType.DATE)
|
||||||
|
public Date getDateMessage() {
|
||||||
|
return dateMessage;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Temporal(TemporalType.DATE)
|
||||||
|
public void setDateMessage(Date dateMessage) {
|
||||||
|
this.dateMessage = dateMessage;
|
||||||
|
}
|
||||||
|
|
||||||
|
@ManyToOne(targetEntity=Article.class)
|
||||||
|
@JoinColumn(name="article_id",nullable=false)
|
||||||
|
public Article getArticle() {
|
||||||
|
return article;
|
||||||
|
}
|
||||||
|
|
||||||
|
@ManyToOne(targetEntity=Article.class)
|
||||||
|
@JoinColumn(name="article_id",nullable=false)
|
||||||
|
public void setArticle(Article article) {
|
||||||
|
this.article = article;
|
||||||
|
}
|
||||||
|
|
||||||
|
@ManyToOne(targetEntity=User.class)
|
||||||
|
@JoinColumn(name="user_id",nullable=false)
|
||||||
|
public User getUser() {
|
||||||
|
return user;
|
||||||
|
}
|
||||||
|
|
||||||
|
@ManyToOne(targetEntity=User.class)
|
||||||
|
@JoinColumn(name="user_id",nullable=false)
|
||||||
|
public void setUser(User user) {
|
||||||
|
this.user = user;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getTitle() {
|
||||||
|
return title;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTitle(String title) {
|
||||||
|
this.title = title;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,64 @@
|
|||||||
|
package org.yacos.core.forum;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import javax.ejb.Stateless;
|
||||||
|
import javax.ejb.TransactionManagement;
|
||||||
|
import javax.ejb.TransactionManagementType;
|
||||||
|
import javax.persistence.EntityManager;
|
||||||
|
import javax.persistence.PersistenceContext;
|
||||||
|
import javax.persistence.Query;
|
||||||
|
import javax.transaction.UserTransaction;
|
||||||
|
import org.yacos.core.article.Article;
|
||||||
|
import org.yacos.core.users.User;
|
||||||
|
|
||||||
|
@Stateless
|
||||||
|
@TransactionManagement(TransactionManagementType.BEAN)
|
||||||
|
public class MessageManagerBean implements IMessageManager, Serializable {
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private static final long serialVersionUID = -2669902949630827480L;
|
||||||
|
|
||||||
|
@PersistenceContext
|
||||||
|
EntityManager em;
|
||||||
|
@Resource
|
||||||
|
UserTransaction ut;
|
||||||
|
|
||||||
|
public Message addMessage(String message, String title, Integer articleId, String userLogin) {
|
||||||
|
try {
|
||||||
|
ut.begin();
|
||||||
|
Message m = new Message();
|
||||||
|
m.setMessage(message);
|
||||||
|
m.setTitle(title);
|
||||||
|
m.setDateMessage(new Date());
|
||||||
|
User user = em.find(User.class, userLogin);
|
||||||
|
m.setUser(user);
|
||||||
|
Article a = em.find(Article.class, articleId);
|
||||||
|
m.setArticle(a);
|
||||||
|
em.persist(m);
|
||||||
|
ut.commit();
|
||||||
|
|
||||||
|
return m;
|
||||||
|
} catch (Exception e) {
|
||||||
|
try {
|
||||||
|
ut.rollback();
|
||||||
|
e.printStackTrace();
|
||||||
|
} catch (Exception e1) {
|
||||||
|
e1.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
public List<Message> getMessagesForArticle(Integer articleId) {
|
||||||
|
Article a = em.find(Article.class, articleId);
|
||||||
|
Query query = em.createQuery("from Message m WHERE article = ? ORDER BY m.dateMessage");
|
||||||
|
query.setParameter(1, a);
|
||||||
|
return query.getResultList();
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user