import sources from develop/0.1.0
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
package com.peetz.library.dal;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import javax.ejb.Local;
|
||||
|
||||
import com.peetz.library.entity.ArticleEntity;
|
||||
|
||||
@Local
|
||||
public interface ArticleDao {
|
||||
public ArticleEntity getById(Long id);
|
||||
|
||||
public List<ArticleEntity> findByIds(List<Long> ids);
|
||||
|
||||
public List<ArticleEntity> findByTitle(String title);
|
||||
|
||||
public List<ArticleEntity> getRelatedArticles(ArticleEntity entity);
|
||||
|
||||
public ArticleEntity assign(ArticleEntity origin, ArticleEntity reference);
|
||||
|
||||
public ArticleEntity store(ArticleEntity entity);
|
||||
|
||||
public void delete(ArticleEntity entity);
|
||||
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
package com.peetz.library.dal;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
import javax.ejb.Local;
|
||||
|
||||
import com.peetz.library.entity.BookEntity;
|
||||
|
||||
@Local
|
||||
public interface BookDao {
|
||||
public BookEntity findById(Long id);
|
||||
public Collection<BookEntity> findByIds(Collection<Long> ids);
|
||||
public BookEntity store(BookEntity entity);
|
||||
public void delete(BookEntity entity);
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package com.peetz.library.dal;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import javax.ejb.Local;
|
||||
|
||||
import com.peetz.library.entity.BookshelfEntity;
|
||||
|
||||
|
||||
@Local
|
||||
public interface BookshelfDao {
|
||||
public BookshelfEntity getById(Long id);
|
||||
|
||||
public List<BookshelfEntity> findByIds(List<Long> ids);
|
||||
|
||||
public List<BookshelfEntity> findByTitle(String title);
|
||||
|
||||
public BookshelfEntity store(BookshelfEntity entity);
|
||||
|
||||
public void delete(BookshelfEntity entity);
|
||||
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
package com.peetz.library.dal;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
import javax.ejb.Local;
|
||||
|
||||
import com.peetz.library.entity.FileEntity;
|
||||
|
||||
@Local
|
||||
public interface FileDao {
|
||||
public FileEntity findById(Long id);
|
||||
public Collection<FileEntity> findByIds(Collection<Long> ids);
|
||||
public FileEntity store(FileEntity entity);
|
||||
public void delete(FileEntity entity);
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
package com.peetz.library.dal;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
import javax.ejb.Local;
|
||||
|
||||
import com.peetz.library.entity.MagazineEntity;
|
||||
|
||||
@Local
|
||||
public interface MagazineDao {
|
||||
public MagazineEntity findById(Long id);
|
||||
public Collection<MagazineEntity> findByIds(Collection<Long> ids);
|
||||
public MagazineEntity store(MagazineEntity entity);
|
||||
public void delete(MagazineEntity entity);
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
package com.peetz.library.dal;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
import javax.ejb.Local;
|
||||
|
||||
import com.peetz.library.entity.ShelfObjectEntity;
|
||||
|
||||
@Local
|
||||
public interface ShelfObjectDao {
|
||||
public ShelfObjectEntity getById(Long id);
|
||||
public Collection<ShelfObjectEntity> getByIds(Collection<Long> ids);
|
||||
public ShelfObjectEntity store(ShelfObjectEntity entity);
|
||||
public void delete(ShelfObjectEntity entity);
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
package com.peetz.library.dal;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
import javax.ejb.Local;
|
||||
|
||||
import com.peetz.library.entity.ShelfboardEntity;
|
||||
|
||||
@Local
|
||||
public interface ShelfboardDao {
|
||||
public ShelfboardEntity getById(Long id);
|
||||
public Collection<ShelfboardEntity> getByIds(Collection<Long> ids);
|
||||
public ShelfboardEntity store(ShelfboardEntity entity);
|
||||
public void delete(ShelfboardEntity entity);
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
/**
|
||||
* @author TPEETZ
|
||||
*
|
||||
*/
|
||||
package com.peetz.library.dal;
|
||||
@@ -0,0 +1,87 @@
|
||||
package com.peetz.library.entity;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.GeneratedValue;
|
||||
import javax.persistence.GenerationType;
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.ManyToMany;
|
||||
import javax.persistence.ManyToOne;
|
||||
import javax.persistence.NamedQueries;
|
||||
import javax.persistence.NamedQuery;
|
||||
import javax.persistence.Table;
|
||||
|
||||
@NamedQueries({
|
||||
@NamedQuery(name="Article.findAll", query="SELECT a from ArticleEntity as a")
|
||||
})
|
||||
|
||||
@Entity
|
||||
@Table(name="ARTICLE")
|
||||
public class ArticleEntity {
|
||||
private Long id;
|
||||
|
||||
private String title;
|
||||
|
||||
private Collection<ArticleEntity> relatedArticles = new ArrayList<ArticleEntity>();
|
||||
|
||||
private Collection<ArticleEntity> originArticles = new ArrayList<ArticleEntity>();
|
||||
|
||||
private FileEntity file;
|
||||
|
||||
private MagazineEntity magazine;
|
||||
|
||||
@Id
|
||||
@GeneratedValue(strategy=GenerationType.AUTO)
|
||||
public Long getId() { return id; }
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
private void setId(Long id) { this.id = id; }
|
||||
|
||||
@Column
|
||||
public String getTitle() {
|
||||
return title;
|
||||
}
|
||||
|
||||
public void setTitle(String title) {
|
||||
this.title = title;
|
||||
}
|
||||
|
||||
@ManyToMany
|
||||
public Collection<ArticleEntity> getRelatedArticles() {
|
||||
return relatedArticles;
|
||||
}
|
||||
|
||||
public void setRelatedArticles(Collection<ArticleEntity> relatedArticles) {
|
||||
this.relatedArticles = relatedArticles;
|
||||
}
|
||||
|
||||
@ManyToMany
|
||||
public Collection<ArticleEntity> getOriginArticles() {
|
||||
return originArticles;
|
||||
}
|
||||
|
||||
public void setOriginArticles(Collection<ArticleEntity> originArticles) {
|
||||
this.originArticles = originArticles;
|
||||
}
|
||||
|
||||
@ManyToOne
|
||||
public FileEntity getFile() {
|
||||
return file;
|
||||
}
|
||||
|
||||
public void setFile(FileEntity file) {
|
||||
this.file = file;
|
||||
}
|
||||
|
||||
@ManyToOne
|
||||
public MagazineEntity getMagazine() {
|
||||
return magazine;
|
||||
}
|
||||
|
||||
public void setMagazine(MagazineEntity magazine) {
|
||||
this.magazine = magazine;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,93 @@
|
||||
package com.peetz.library.entity;
|
||||
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.GeneratedValue;
|
||||
import javax.persistence.GenerationType;
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.NamedQueries;
|
||||
import javax.persistence.NamedQuery;
|
||||
import javax.persistence.Table;
|
||||
|
||||
@NamedQueries({
|
||||
@NamedQuery(name="Book.findAll", query="SELECT a from BookEntity as a")
|
||||
})
|
||||
|
||||
@Entity
|
||||
@Table(name="BOOK")
|
||||
public class BookEntity {
|
||||
private Long id;
|
||||
|
||||
private String title;
|
||||
|
||||
private String author;
|
||||
|
||||
private String publisher;
|
||||
|
||||
private String isbn;
|
||||
|
||||
private Long page;
|
||||
|
||||
private String edition;
|
||||
|
||||
@Id
|
||||
@GeneratedValue(strategy=GenerationType.AUTO)
|
||||
public Long getId() { return id; }
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
private void setId(Long id) { this.id = id; }
|
||||
|
||||
@Column
|
||||
public String getTitle() {
|
||||
return title;
|
||||
}
|
||||
|
||||
public void setTitle(String title) {
|
||||
this.title = title;
|
||||
}
|
||||
|
||||
@Column
|
||||
public String getAuthor() {
|
||||
return author;
|
||||
}
|
||||
|
||||
public void setAuthor(String author) {
|
||||
this.author = author;
|
||||
}
|
||||
|
||||
@Column
|
||||
public String getPublisher() {
|
||||
return publisher;
|
||||
}
|
||||
|
||||
public void setPublisher(String publisher) {
|
||||
this.publisher = publisher;
|
||||
}
|
||||
|
||||
@Column
|
||||
public String getIsbn() {
|
||||
return isbn;
|
||||
}
|
||||
|
||||
public void setIsbn(String isbn) {
|
||||
this.isbn = isbn;
|
||||
}
|
||||
|
||||
@Column
|
||||
public Long getPage() {
|
||||
return page;
|
||||
}
|
||||
|
||||
public void setPage(Long page) {
|
||||
this.page = page;
|
||||
}
|
||||
|
||||
@Column
|
||||
public String getEdition() {
|
||||
return edition;
|
||||
}
|
||||
|
||||
public void setEdition(String edition) {
|
||||
this.edition = edition;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,53 @@
|
||||
package com.peetz.library.entity;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
|
||||
import javax.persistence.CascadeType;
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.GeneratedValue;
|
||||
import javax.persistence.GenerationType;
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.NamedQueries;
|
||||
import javax.persistence.NamedQuery;
|
||||
import javax.persistence.OneToMany;
|
||||
import javax.persistence.Table;
|
||||
|
||||
@NamedQueries({
|
||||
@NamedQuery(name="Bookshelf.findAll", query="SELECT b from BookshelfEntity as b"),
|
||||
@NamedQuery(name="Bookshelf.findById", query="SELECT b from BookshelfEntity as b WHERE b.id = :id"),
|
||||
@NamedQuery(name="Bookshelf.findByTitle", query="SELECT b from BookshelfEntity as b WHERE b.title = :title")
|
||||
})
|
||||
|
||||
@Entity
|
||||
@Table(name="BOOKSHELF")
|
||||
public class BookshelfEntity {
|
||||
|
||||
private Long id;
|
||||
|
||||
private String title;
|
||||
|
||||
private Collection<ShelfboardEntity> shelfBoards = new ArrayList<ShelfboardEntity>();
|
||||
|
||||
@Id
|
||||
@GeneratedValue(strategy=GenerationType.AUTO)
|
||||
public Long getId() { return id; }
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
private void setId(Long id) { this.id = id; }
|
||||
|
||||
@Column
|
||||
public String getTitle() { return title; }
|
||||
|
||||
public void setTitle(String title) { this.title = title; }
|
||||
|
||||
@OneToMany(mappedBy="bookshelf", cascade=CascadeType.REMOVE)
|
||||
public Collection<ShelfboardEntity> getShelfBoards() {
|
||||
return shelfBoards;
|
||||
}
|
||||
|
||||
public void setShelfBoards(Collection<ShelfboardEntity> shelfBoards) {
|
||||
this.shelfBoards = shelfBoards;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
package com.peetz.library.entity;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
|
||||
import javax.persistence.CascadeType;
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.GeneratedValue;
|
||||
import javax.persistence.GenerationType;
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.OneToMany;
|
||||
import javax.persistence.Table;
|
||||
|
||||
@Entity
|
||||
@Table(name="FILE")
|
||||
public class FileEntity {
|
||||
private Long id;
|
||||
|
||||
private String title;
|
||||
|
||||
private Collection<ArticleEntity> articles = new ArrayList<ArticleEntity>();
|
||||
|
||||
@Id
|
||||
@GeneratedValue(strategy=GenerationType.AUTO)
|
||||
public Long getId() { return id; }
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
private void setId(Long id) { this.id = id; }
|
||||
|
||||
@Column
|
||||
public String getTitle() {
|
||||
return title;
|
||||
}
|
||||
|
||||
public void setTitle(String title) {
|
||||
this.title = title;
|
||||
}
|
||||
|
||||
@OneToMany(mappedBy="file", cascade=CascadeType.REMOVE)
|
||||
public Collection<ArticleEntity> getArticles() {
|
||||
return articles;
|
||||
}
|
||||
|
||||
public void setArticles(Collection<ArticleEntity> articles) {
|
||||
this.articles = articles;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
package com.peetz.library.entity;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
|
||||
import javax.persistence.CascadeType;
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.GeneratedValue;
|
||||
import javax.persistence.GenerationType;
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.OneToMany;
|
||||
import javax.persistence.Table;
|
||||
|
||||
@Entity
|
||||
@Table(name="MAGAZINE")
|
||||
public class MagazineEntity {
|
||||
private Long id;
|
||||
|
||||
private String title;
|
||||
|
||||
private Collection<ArticleEntity> articles = new ArrayList<ArticleEntity>();
|
||||
|
||||
@Id
|
||||
@GeneratedValue(strategy=GenerationType.AUTO)
|
||||
public Long getId() { return id; }
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
private void setId(Long id) { this.id = id; }
|
||||
|
||||
@Column
|
||||
public String getTitle() {
|
||||
return title;
|
||||
}
|
||||
|
||||
public void setTitle(String title) {
|
||||
this.title = title;
|
||||
}
|
||||
|
||||
@OneToMany(mappedBy="magazine", cascade=CascadeType.REMOVE)
|
||||
public Collection<ArticleEntity> getArticles() {
|
||||
return articles;
|
||||
}
|
||||
|
||||
public void setArticles(Collection<ArticleEntity> articles) {
|
||||
this.articles = articles;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
package com.peetz.library.entity;
|
||||
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.GeneratedValue;
|
||||
import javax.persistence.GenerationType;
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.ManyToOne;
|
||||
import javax.persistence.Table;
|
||||
|
||||
@Entity
|
||||
@Table(name="SHELFOBJECT")
|
||||
public class ShelfObjectEntity {
|
||||
private Long id;
|
||||
|
||||
private ShelfboardEntity shelfboard;
|
||||
|
||||
@Id
|
||||
@GeneratedValue(strategy=GenerationType.AUTO)
|
||||
public Long getId() { return id; }
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
private void setId(Long id) { this.id = id; }
|
||||
|
||||
@ManyToOne
|
||||
public ShelfboardEntity getShelfboard() {
|
||||
return shelfboard;
|
||||
}
|
||||
|
||||
public void setShelfboard(ShelfboardEntity shelfboard) {
|
||||
this.shelfboard = shelfboard;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,57 @@
|
||||
package com.peetz.library.entity;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
|
||||
import javax.persistence.CascadeType;
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.GeneratedValue;
|
||||
import javax.persistence.GenerationType;
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.ManyToOne;
|
||||
import javax.persistence.OneToMany;
|
||||
import javax.persistence.Table;
|
||||
|
||||
@Entity
|
||||
@Table(name="SHELFBOARD")
|
||||
public class ShelfboardEntity {
|
||||
private Long id;
|
||||
|
||||
private String title;
|
||||
|
||||
private BookshelfEntity bookshelf;
|
||||
|
||||
private Collection<ShelfObjectEntity> objects = new ArrayList<ShelfObjectEntity>();
|
||||
|
||||
@Id
|
||||
@GeneratedValue(strategy=GenerationType.AUTO)
|
||||
public Long getId() { return id; }
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
private void setId(Long id) { this.id = id; }
|
||||
|
||||
@Column
|
||||
public String getTitle() { return title; }
|
||||
|
||||
public void setTitle(String title) { this.title = title; }
|
||||
|
||||
@ManyToOne
|
||||
public BookshelfEntity getBookshelf() {
|
||||
return bookshelf;
|
||||
}
|
||||
|
||||
public void setBookshelf(BookshelfEntity bookshelf) {
|
||||
this.bookshelf = bookshelf;
|
||||
}
|
||||
|
||||
@OneToMany(mappedBy="shelfboard", cascade=CascadeType.REMOVE)
|
||||
public Collection<ShelfObjectEntity> getObjects() {
|
||||
return objects;
|
||||
}
|
||||
|
||||
public void setObjects(Collection<ShelfObjectEntity> objects) {
|
||||
this.objects = objects;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
/**
|
||||
* @author TPEETZ
|
||||
*
|
||||
*/
|
||||
package com.peetz.library.entity;
|
||||
@@ -0,0 +1,28 @@
|
||||
package com.peetz.library.service;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
import javax.ejb.Local;
|
||||
|
||||
import com.peetz.library.entity.ArticleEntity;
|
||||
import com.peetz.library.entity.BookEntity;
|
||||
import com.peetz.library.entity.BookshelfEntity;
|
||||
|
||||
@Local
|
||||
public interface LibraryService {
|
||||
|
||||
Collection<BookEntity> getAllBooks();
|
||||
|
||||
Collection<BookshelfEntity> getAllBookshelfs();
|
||||
|
||||
Collection<ArticleEntity> getAllArticles();
|
||||
|
||||
void addBookshelf(String title);
|
||||
|
||||
void addArticle(String title);
|
||||
|
||||
BookEntity addBook(String title);
|
||||
|
||||
void saveBook(BookEntity book);
|
||||
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
package com.peetz.library.service;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
import javax.ejb.Stateless;
|
||||
import javax.ejb.TransactionAttribute;
|
||||
import javax.ejb.TransactionAttributeType;
|
||||
|
||||
import com.peetz.library.entity.ArticleEntity;
|
||||
import com.peetz.library.entity.BookEntity;
|
||||
import com.peetz.library.entity.BookshelfEntity;
|
||||
import java.util.ArrayList;
|
||||
import javax.persistence.EntityManager;
|
||||
import javax.persistence.PersistenceContext;
|
||||
import javax.persistence.Query;
|
||||
|
||||
@Stateless(name="LibraryService")
|
||||
@TransactionAttribute(TransactionAttributeType.REQUIRED)
|
||||
public class LibraryServiceImpl implements LibraryService {
|
||||
|
||||
@PersistenceContext(unitName = "kontor")
|
||||
private EntityManager em;
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
@Override
|
||||
public Collection<BookEntity> getAllBooks() {
|
||||
Query query = em.createNamedQuery("Book.findAll");
|
||||
ArrayList<BookEntity> bookList = new ArrayList<BookEntity>(query.getResultList());
|
||||
return bookList;
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
@Override
|
||||
public Collection<BookshelfEntity> getAllBookshelfs() {
|
||||
Query query = em.createNamedQuery("Bookshelf.findAll");
|
||||
ArrayList<BookshelfEntity> bookshelfList = new ArrayList<BookshelfEntity>(query.getResultList());
|
||||
return bookshelfList;
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
@Override
|
||||
public Collection<ArticleEntity> getAllArticles() {
|
||||
Query query = em.createNamedQuery("Article.findAll");
|
||||
ArrayList<ArticleEntity> articleList = new ArrayList<ArticleEntity>(query.getResultList());
|
||||
return articleList;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addBookshelf(String title) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addArticle(String title) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public BookEntity addBook(String title) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void saveBook(BookEntity book) {
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
/**
|
||||
* @author TPEETZ
|
||||
*
|
||||
*/
|
||||
package com.peetz.library.service;
|
||||
Reference in New Issue
Block a user