[jboss-cvs] JBossAS SVN: r100262 - in projects/snowdrop/examples/trunk/sportsclub: sportsclub-domain/src/main/java/org/jboss/snowdrop/samples/sportsclub/domain/repository and 8 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Feb 2 10:54:48 EST 2010
Author: lvlcek at redhat.com
Date: 2010-02-02 10:54:46 -0500 (Tue, 02 Feb 2010)
New Revision: 100262
Added:
projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateAccountRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateEquipmentRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateInvoiceRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateMembershipRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernatePersonRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaAccountRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaEquipmentRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaInvoiceRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaMembershipRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaPersonRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaReservationRepository.java
Removed:
projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateAccountDao.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaPersonDao.java
Modified:
projects/snowdrop/examples/trunk/sportsclub/sportsclub-domain/src/main/java/org/jboss/snowdrop/samples/sportsclub/domain/entity/Reservation.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-domain/src/main/java/org/jboss/snowdrop/samples/sportsclub/domain/repository/AccountRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-domain/src/main/java/org/jboss/snowdrop/samples/sportsclub/domain/repository/PaymentRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-domain/src/main/java/org/jboss/snowdrop/samples/sportsclub/domain/repository/ReservationRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/HibernateReservationRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/initializer/DatabaseInitializer.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateReservationRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaAccountRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaEquipmentRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaInvoiceRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaMembershipRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaPaymentRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaReservationRepository.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/initializer/DatabaseInitializer.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-reservations-spring/src/main/java/org/jboss/snowdrop/samples/sportsclub/service/ReservationService.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-reservations-spring/src/main/java/org/jboss/snowdrop/samples/sportsclub/service/ReservationServiceImpl.java
projects/snowdrop/examples/trunk/sportsclub/sportsclub-reservations-web/src/main/java/org/jboss/snowdrop/samples/sportsclub/jsf/beans/ReservationSearch.java
Log:
Implemented JPA Repository stubs
Implemented tests for JPA and Hibernate Repositories
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-domain/src/main/java/org/jboss/snowdrop/samples/sportsclub/domain/entity/Reservation.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-domain/src/main/java/org/jboss/snowdrop/samples/sportsclub/domain/entity/Reservation.java 2010-02-02 15:31:41 UTC (rev 100261)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-domain/src/main/java/org/jboss/snowdrop/samples/sportsclub/domain/entity/Reservation.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -2,11 +2,7 @@
import java.util.Date;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
-import javax.persistence.ManyToOne;
+import javax.persistence.*;
/**
* @author <a href="mailto:mariusb at redhat.com">Marius Bogoevici</a>
@@ -25,10 +21,10 @@
@Column(name = "toDT", nullable = false)
private Date to;
- @ManyToOne
+ @ManyToOne(fetch = FetchType.LAZY)
private Equipment equipment;
- @ManyToOne
+ @ManyToOne(fetch = FetchType.LAZY)
private Account account;
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-domain/src/main/java/org/jboss/snowdrop/samples/sportsclub/domain/repository/AccountRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-domain/src/main/java/org/jboss/snowdrop/samples/sportsclub/domain/repository/AccountRepository.java 2010-02-02 15:31:41 UTC (rev 100261)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-domain/src/main/java/org/jboss/snowdrop/samples/sportsclub/domain/repository/AccountRepository.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -10,6 +10,7 @@
*/
public interface AccountRepository extends Repository<Account, Long>
{
+ // TODO if no usages then remove this method!
List<Account> findByPersonName(String name);
int countByCriteria(AccountSearchCriteria accountSearchCriteria);
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-domain/src/main/java/org/jboss/snowdrop/samples/sportsclub/domain/repository/PaymentRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-domain/src/main/java/org/jboss/snowdrop/samples/sportsclub/domain/repository/PaymentRepository.java 2010-02-02 15:31:41 UTC (rev 100261)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-domain/src/main/java/org/jboss/snowdrop/samples/sportsclub/domain/repository/PaymentRepository.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -7,6 +7,6 @@
public interface PaymentRepository extends Repository<Payment, Long>
{
-
+ // TODO if not used then remove!
List<Payment> findForAccount(Account account);
}
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-domain/src/main/java/org/jboss/snowdrop/samples/sportsclub/domain/repository/ReservationRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-domain/src/main/java/org/jboss/snowdrop/samples/sportsclub/domain/repository/ReservationRepository.java 2010-02-02 15:31:41 UTC (rev 100261)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-domain/src/main/java/org/jboss/snowdrop/samples/sportsclub/domain/repository/ReservationRepository.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -9,5 +9,5 @@
{
List<Reservation> getByCriteria(ReservationSearchCriteria criteria);
- Integer countByCriteria(ReservationSearchCriteria criteria);
+ Long countByCriteria(ReservationSearchCriteria criteria);
}
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/HibernateReservationRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/HibernateReservationRepository.java 2010-02-02 15:31:41 UTC (rev 100261)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/HibernateReservationRepository.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -66,11 +66,11 @@
return cri.list();
}
- public Integer countByCriteria(ReservationSearchCriteria criteria)
+ public Long countByCriteria(ReservationSearchCriteria criteria)
{
Criteria cri = convert(criteria);
cri.setProjection(Projections.count("id"));
- return (Integer) cri.uniqueResult();
+ return new Long((Integer)cri.uniqueResult());
}
}
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/initializer/DatabaseInitializer.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/initializer/DatabaseInitializer.java 2010-02-02 15:31:41 UTC (rev 100261)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/initializer/DatabaseInitializer.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -95,6 +95,13 @@
saveMap(session, accounts);
+ Map<String, Invoice> invoices = new HashMap<String, Invoice>();
+
+ invoices.put("invoice1", createInvoice(accounts.get("account1")));
+
+ saveMap(session, invoices);
+
+
Map<String, Equipment> equipments = new HashMap<String, Equipment>();
equipments.put("equipment1", createEquipment("Engage", "95T Engage by LifeFitness", TREADMILL));
@@ -123,7 +130,7 @@
});
}
- private static void saveMap(Session session, Map data)
+ private void saveMap(Session session, Map data)
{
for (String key : (Set<String>)data.keySet())
{
@@ -131,13 +138,13 @@
}
}
- private static void save(Session session, Object entity)
+ private void save(Session session, Object entity)
{
session.save(entity);
session.flush();
}
- private static Account createAccount(Membership silverMembership, BillingType billingType, Person person)
+ private Account createAccount(Membership silverMembership, BillingType billingType, Person person)
{
Account account = new Account();
account.setSubscriber(person);
@@ -148,8 +155,21 @@
return account;
}
- private static Person createPerson(String firstname, String lastname, String street, String city, String province, String country)
+ private Invoice createInvoice(Account account)
{
+ Date date = createDate(2009, 02, 01);
+
+ Invoice invoice = new Invoice();
+ invoice.setAccount(account);
+ invoice.setAmount(account.getFeePerBillingPeriod());
+ invoice.setIssueDate(date);
+ invoice.setBillingPeriod(account.getBillingPeriodFor(date));
+
+ return invoice;
+ }
+
+ private Person createPerson(String firstname, String lastname, String street, String city, String province, String country)
+ {
Person person = new Person();
person.setName(new Name());
person.setAddress(new Address());
@@ -164,7 +184,7 @@
return person;
}
- private static Membership createMembership(String code, String amount)
+ private Membership createMembership(String code, String amount)
{
Membership membership = new Membership(code);
membership.setActive(true);
@@ -172,7 +192,7 @@
return membership;
}
- private static Equipment createEquipment(String name, String description, EquipmentType type)
+ private Equipment createEquipment(String name, String description, EquipmentType type)
{
Equipment equipment = new Equipment();
equipment.setDescription(description);
@@ -181,7 +201,7 @@
return equipment;
}
- private static Reservation createReservation(Date fromDate, Date toDate, Equipment equipment, Account account)
+ private Reservation createReservation(Date fromDate, Date toDate, Equipment equipment, Account account)
{
assert fromDate.before(toDate);
Reservation reservation = new Reservation();
@@ -195,7 +215,7 @@
/**
* Months are human readable and start at 1!
*/
- private static Date createDate(int year, int month, int day)
+ private Date createDate(int year, int month, int day)
{
Calendar cal = Calendar.getInstance(Locale.US);
cal.clear();
Deleted: projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateAccountDao.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateAccountDao.java 2010-02-02 15:31:41 UTC (rev 100261)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateAccountDao.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -1,44 +0,0 @@
-package org.jboss.snowdrop.samples.sportsclub.dao.hibernate;
-
-import java.util.Collection;
-import java.util.List;
-
-import org.jboss.snowdrop.samples.sportsclub.domain.entity.Account;
-import org.jboss.snowdrop.samples.sportsclub.domain.repository.AccountRepository;
-import org.jboss.snowdrop.samples.sportsclub.domain.repository.criteria.AccountSearchCriteria;
-import org.jboss.snowdrop.samples.sportsclub.domain.repository.criteria.PersonSearchCriteria;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.test.context.ContextConfiguration;
-import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
-import org.springframework.transaction.annotation.Transactional;
-
-/**
- * @author <a href="mailto:mariusb at redhat.com">Marius Bogoevici</a>
- */
- at ContextConfiguration(locations = {"classpath:test-infrastructure.xml", "classpath:dao-context.xml"})
- at RunWith(SpringJUnit4ClassRunner.class)
-public class TestHibernateAccountDao
-{
-
- @Autowired
- AccountRepository accountRepository;
-
- @Test
- @Transactional
- public void testAccountRepository()
- {
- Collection<Account> accounts = accountRepository.findAll();
- Assert.assertEquals(12, accounts.size());
-
- AccountSearchCriteria criteria = new AccountSearchCriteria();
- PersonSearchCriteria personCriteria = new PersonSearchCriteria();
- personCriteria.setName("Vetinari");
- criteria.setPersonSearchCriteria(personCriteria);
- List<Account> accountList = accountRepository.findByCriteria(criteria);
- Account account = accountList.get(0);
- Assert.assertNotNull(account.getBalance());
- }
-}
Copied: projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateAccountRepository.java (from rev 100243, projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateAccountDao.java)
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateAccountRepository.java (rev 0)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateAccountRepository.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -0,0 +1,44 @@
+package org.jboss.snowdrop.samples.sportsclub.dao.hibernate;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.Account;
+import org.jboss.snowdrop.samples.sportsclub.domain.repository.AccountRepository;
+import org.jboss.snowdrop.samples.sportsclub.domain.repository.criteria.AccountSearchCriteria;
+import org.jboss.snowdrop.samples.sportsclub.domain.repository.criteria.PersonSearchCriteria;
+import org.junit.Assert;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+import org.springframework.transaction.annotation.Transactional;
+
+/**
+ * @author <a href="mailto:mariusb at redhat.com">Marius Bogoevici</a>
+ */
+ at ContextConfiguration(locations = {"classpath:test-infrastructure.xml", "classpath:dao-context.xml"})
+ at RunWith(SpringJUnit4ClassRunner.class)
+ at Transactional
+public class TestHibernateAccountRepository
+{
+
+ @Autowired
+ AccountRepository accountRepository;
+
+ @Test
+ public void testAccountRepository()
+ {
+ Collection<Account> accounts = accountRepository.findAll();
+ Assert.assertEquals(12, accounts.size());
+
+ AccountSearchCriteria criteria = new AccountSearchCriteria();
+ PersonSearchCriteria personCriteria = new PersonSearchCriteria();
+ personCriteria.setName("Vetinari");
+ criteria.setPersonSearchCriteria(personCriteria);
+ List<Account> accountList = accountRepository.findByCriteria(criteria);
+ Account account = accountList.get(0);
+ Assert.assertNotNull(account.getBalance());
+ }
+}
Added: projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateEquipmentRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateEquipmentRepository.java (rev 0)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateEquipmentRepository.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -0,0 +1,30 @@
+package org.jboss.snowdrop.samples.sportsclub.dao.hibernate;
+
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+import org.junit.runner.RunWith;
+import org.junit.Test;
+import org.junit.Assert;
+import org.jboss.snowdrop.samples.sportsclub.domain.repository.EquipmentRepository;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.EquipmentType;
+
+/**
+ * @author <a href="mailto:lvlcek at redhat.com">Lukas Vlcek</a>
+ */
+ at ContextConfiguration(locations = {"classpath:test-infrastructure.xml", "classpath:dao-context.xml"})
+ at RunWith(SpringJUnit4ClassRunner.class)
+ at Transactional
+public class TestHibernateEquipmentRepository
+{
+ @Autowired
+ EquipmentRepository equipmentRepository;
+
+ @Test
+ public void testEquipmentTypes()
+ {
+ EquipmentType[] types = equipmentRepository.getEquipmentTypes();
+ Assert.assertEquals(3,types.length);
+ }
+}
Added: projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateInvoiceRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateInvoiceRepository.java (rev 0)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateInvoiceRepository.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -0,0 +1,39 @@
+package org.jboss.snowdrop.samples.sportsclub.dao.hibernate;
+
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+import org.junit.runner.RunWith;
+import org.junit.Test;
+import org.junit.Assert;
+import org.jboss.snowdrop.samples.sportsclub.domain.repository.InvoiceRepository;
+import org.jboss.snowdrop.samples.sportsclub.domain.repository.AccountRepository;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.Account;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.Invoice;
+
+import java.util.List;
+
+/**
+ * @author <a href="mailto:lvlcek at redhat.com">Lukas Vlcek</a>
+ */
+ at ContextConfiguration(locations = {"classpath:test-infrastructure.xml", "classpath:dao-context.xml"})
+ at RunWith(SpringJUnit4ClassRunner.class)
+ at Transactional
+public class TestHibernateInvoiceRepository
+{
+ @Autowired
+ InvoiceRepository invoiceRepository;
+
+ @Autowired
+ AccountRepository accountRepository;
+
+ @Test
+ public void testFindForAccount()
+ {
+ Account a = accountRepository.findById(2L);
+ List<Invoice> invoices = invoiceRepository.findForAccount(a);
+ Assert.assertNotNull(invoices);
+ Assert.assertEquals(1, invoices.size());
+ }
+}
Added: projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateMembershipRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateMembershipRepository.java (rev 0)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateMembershipRepository.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -0,0 +1,48 @@
+package org.jboss.snowdrop.samples.sportsclub.dao.hibernate;
+
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+import org.junit.runner.RunWith;
+import org.junit.Assert;
+import org.junit.Test;
+import org.jboss.snowdrop.samples.sportsclub.domain.repository.MembershipRepository;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.Membership;
+
+import java.util.List;
+import java.util.Arrays;
+
+/**
+ * @author <a href="mailto:lvlcek at redhat.com">Lukas Vlcek</a>
+ */
+ at ContextConfiguration(locations = {"classpath:test-infrastructure.xml", "classpath:dao-context.xml"})
+ at RunWith(SpringJUnit4ClassRunner.class)
+ at Transactional
+public class TestHibernateMembershipRepository
+{
+ @Autowired
+ MembershipRepository membershipRepository;
+
+ @Test
+ public void testCountAll()
+ {
+ long cnt = membershipRepository.countAll();
+ Assert.assertEquals(3, cnt);
+ }
+
+ @Test
+ public void testFindAllMembershipCodes()
+ {
+ List<String> codes = membershipRepository.findAllMembershipCodes();
+ Assert.assertEquals(3, codes.size());
+ Assert.assertTrue(codes.containsAll(Arrays.asList(new String[]{"GOLD","PLATINUM","SILVER"})));
+ }
+
+ @Test
+ public void testFindAllActiveMembershipTypes()
+ {
+ List<Membership> memlist = membershipRepository.findAllActiveMembershipTypes();
+ Assert.assertEquals(3, memlist.size());
+ }
+}
Added: projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernatePersonRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernatePersonRepository.java (rev 0)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernatePersonRepository.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -0,0 +1,29 @@
+package org.jboss.snowdrop.samples.sportsclub.dao.hibernate;
+
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+import org.junit.runner.RunWith;
+import org.junit.Test;
+import org.junit.Assert;
+import org.jboss.snowdrop.samples.sportsclub.domain.repository.PersonRepository;
+
+/**
+ * @author <a href="mailto:lvlcek at redhat.com">Lukas Vlcek</a>
+ */
+ at ContextConfiguration(locations = {"classpath:test-infrastructure.xml", "classpath:dao-context.xml"})
+ at RunWith(SpringJUnit4ClassRunner.class)
+ at Transactional
+public class TestHibernatePersonRepository
+{
+ @Autowired
+ PersonRepository personRepository;
+
+ @Test
+ public void testPersonRepository()
+ {
+ long count = personRepository.countAll();
+ Assert.assertEquals(12, count);
+ }
+}
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateReservationRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateReservationRepository.java 2010-02-02 15:31:41 UTC (rev 100261)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-hibernate-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/hibernate/TestHibernateReservationRepository.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -16,16 +16,15 @@
@ContextConfiguration(locations = {"classpath:test-infrastructure.xml", "classpath:dao-context.xml"})
@RunWith(SpringJUnit4ClassRunner.class)
+ at Transactional
public class TestHibernateReservationRepository
{
@Autowired
ReservationRepository reservationRepository;
@Test
- @Transactional
public void testFromToFilterCriteria()
{
-
Date from = getDate(2009, 1, 1);
Date to = getDate(2009, 12, 31);
@@ -33,24 +32,23 @@
criteria.setFromDate(from);
criteria.setToDate(to);
- List<Reservation> reservations = reservationRepository.getByCriteria(criteria);
- Assert.assertEquals(6, reservations.size());
+ Assert.assertEquals(6, reservationRepository.getByCriteria(criteria).size());
+ Assert.assertEquals(6, reservationRepository.countByCriteria(criteria).longValue());
criteria = new ReservationSearchCriteria();
criteria.setFromDate(getDate(2009, 02, 01));
- reservations = reservationRepository.getByCriteria(criteria);
- Assert.assertEquals(5, reservations.size());
+ Assert.assertEquals(5, reservationRepository.getByCriteria(criteria).size());
+ Assert.assertEquals(5, reservationRepository.countByCriteria(criteria).longValue());
criteria = new ReservationSearchCriteria();
criteria.setToDate(getDate(2009, 11, 30));
- reservations = reservationRepository.getByCriteria(criteria);
- Assert.assertEquals(5, reservations.size());
+ Assert.assertEquals(5, reservationRepository.getByCriteria(criteria).size());
+ Assert.assertEquals(5, reservationRepository.countByCriteria(criteria).longValue());
}
@Test
- @Transactional
public void testEquipmentTypeFilterCriteria()
{
Date from = getDate(2009, 1, 1);
@@ -63,9 +61,8 @@
criteria.setToDate(to);
criteria.setEquipmentType(types);
- List<Reservation> reservations = reservationRepository.getByCriteria(criteria);
-
- Assert.assertEquals(1, reservations.size());
+ Assert.assertEquals(1, reservationRepository.getByCriteria(criteria).size());
+ Assert.assertEquals(1, reservationRepository.countByCriteria(criteria).longValue());
}
private Date getDate(int year, int month, int day)
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaAccountRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaAccountRepository.java 2010-02-02 15:31:41 UTC (rev 100261)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaAccountRepository.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -7,6 +7,7 @@
import org.jboss.snowdrop.samples.sportsclub.domain.repository.criteria.AccountSearchCriteria;
import org.springframework.stereotype.Repository;
+import javax.persistence.Query;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@@ -15,26 +16,35 @@
* @author Marius Bogoevici
*/
@Repository
-public class JpaAccountRepository extends JpaRepository<Account, Long> implements AccountRepository {
+public class JpaAccountRepository extends JpaRepository<Account, Long> implements AccountRepository
+{
- public JpaAccountRepository() {
- super(Account.class);
- }
+ public JpaAccountRepository()
+ {
+ super(Account.class);
+ }
- public int countByCriteria(AccountSearchCriteria accountSearchCriteria) {
- return this.findAll().size(); // TODO create real implementation
- }
+ public List<Account> findByPersonName(String name)
+ {
+ Query query = entityManager.createQuery(" from " + Account.class.getSimpleName() + " a " +
+ "where a.subscriber.name.firstName like :name " +
+ "or a.subscriber.name.lastName like :name " +
+ "or a.subscriber.name.middleName like :name");
+ query.setParameter("name", "%" + name + "%");
+ return query.getResultList();
+ }
- public List<Account> findByPersonName(String name) {
- // TODO create real implementation
- return this.findAll();
- }
+ public int countByCriteria(AccountSearchCriteria accountSearchCriteria)
+ {
+ return this.findAll().size(); // TODO create real implementation
+ }
- public List<Account> findByCriteria(AccountSearchCriteria accountSearchCriteria) {
- // TODO create real implementation
- if (accountSearchCriteria.getRange() != null)
- return this.findAll().subList(accountSearchCriteria.getRange().getMinIndex(), accountSearchCriteria.getRange().getMaxIndex());
- else
- return this.findAll();
- }
+ public List<Account> findByCriteria(AccountSearchCriteria accountSearchCriteria)
+ {
+ // TODO create real implementation
+ if (accountSearchCriteria.getRange() != null)
+ return this.findAll().subList(accountSearchCriteria.getRange().getMinIndex(), accountSearchCriteria.getRange().getMaxIndex());
+ else
+ return this.findAll();
+ }
}
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaEquipmentRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaEquipmentRepository.java 2010-02-02 15:31:41 UTC (rev 100261)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaEquipmentRepository.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -12,10 +12,10 @@
public class JpaEquipmentRepository extends JpaRepository<Equipment,Long> implements EquipmentRepository{
public JpaEquipmentRepository() {
- super(Equipment.class); //TODO: create real implementation
+ super(Equipment.class);
}
public EquipmentType[] getEquipmentTypes() {
- return new EquipmentType[0]; //TODO: create real implementation
+ return EquipmentType.values();
}
}
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaInvoiceRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaInvoiceRepository.java 2010-02-02 15:31:41 UTC (rev 100261)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaInvoiceRepository.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -5,6 +5,7 @@
import org.jboss.snowdrop.samples.sportsclub.domain.repository.InvoiceRepository;
import org.springframework.stereotype.Repository;
+import javax.persistence.Query;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@@ -13,13 +14,18 @@
* @author Marius Bogoevici
*/
@Repository
-public class JpaInvoiceRepository extends JpaRepository<Invoice, Long> implements InvoiceRepository {
+public class JpaInvoiceRepository extends JpaRepository<Invoice, Long> implements InvoiceRepository
+{
- public JpaInvoiceRepository() {
- super(Invoice.class);
- }
+ public JpaInvoiceRepository()
+ {
+ super(Invoice.class);
+ }
- public List<Invoice> findForAccount(Account account) {
- return Collections.emptyList(); //TODO create real implementation
- }
+ public List<Invoice> findForAccount(Account account)
+ {
+ Query q = entityManager.createQuery("FROM " + Invoice.class.getSimpleName() + " i WHERE i.account.id = :id");
+ q.setParameter("id", account.getId());
+ return q.getResultList();
+ }
}
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaMembershipRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaMembershipRepository.java 2010-02-02 15:31:41 UTC (rev 100261)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaMembershipRepository.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -4,6 +4,7 @@
import org.jboss.snowdrop.samples.sportsclub.domain.repository.MembershipRepository;
import org.springframework.stereotype.Repository;
+import javax.persistence.Query;
import java.lang.reflect.Member;
import java.util.ArrayList;
import java.util.Collections;
@@ -13,18 +14,32 @@
* @author Marius Bogoevici
*/
@Repository
-public class JpaMembershipRepository extends JpaRepository<Membership,String> implements MembershipRepository {
+public class JpaMembershipRepository extends JpaRepository<Membership, String> implements MembershipRepository
+{
- public JpaMembershipRepository() {
- super(Membership.class);
- }
+ public JpaMembershipRepository()
+ {
+ super(Membership.class);
+ }
- public List<Membership> findAllActiveMembershipTypes() {
- return Collections.emptyList();
- }
+ public List<Membership> findAllActiveMembershipTypes()
+ {
+ Query query = entityManager.createQuery("FROM " + Membership.class.getSimpleName() + " m WHERE m.active = :active");
+ query.setParameter("active", true);
+ return query.getResultList();
+ }
- public List<String> findAllMembershipCodes() {
- return Collections.emptyList();
- }
+ public long countAll()
+ {
+ Query query = entityManager.createQuery("SELECT COUNT(code) FROM " + Membership.class.getSimpleName());
+ return (Long) query.getSingleResult();
+ }
+
+ public List<String> findAllMembershipCodes()
+ {
+ Query query = entityManager.createQuery("SELECT m.code FROM " + Membership.class.getSimpleName() + " m WHERE m.active = :active");
+ query.setParameter("active", true);
+ return query.getResultList();
+ }
}
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaPaymentRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaPaymentRepository.java 2010-02-02 15:31:41 UTC (rev 100261)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaPaymentRepository.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -5,6 +5,7 @@
import org.jboss.snowdrop.samples.sportsclub.domain.repository.PaymentRepository;
import org.springframework.stereotype.Repository;
+import javax.persistence.Query;
import java.util.Collections;
import java.util.List;
@@ -19,6 +20,8 @@
}
public List<Payment> findForAccount(Account account) {
- return Collections.emptyList();
+ Query query = entityManager.createQuery("FROM " + Payment.class.getSimpleName() + " p WHERE p.account.id = :id");
+ query.setParameter("id", account.getId());
+ return query.getResultList();
}
}
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaReservationRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaReservationRepository.java 2010-02-02 15:31:41 UTC (rev 100261)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/JpaReservationRepository.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -1,10 +1,12 @@
package org.jboss.snowdrop.samples.sportsclub.dao.jpa;
import org.jboss.snowdrop.samples.sportsclub.domain.entity.Reservation;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.EquipmentType;
import org.jboss.snowdrop.samples.sportsclub.domain.repository.ReservationRepository;
import org.jboss.snowdrop.samples.sportsclub.domain.repository.criteria.ReservationSearchCriteria;
import org.springframework.stereotype.Repository;
+import javax.persistence.Query;
import java.util.Collections;
import java.util.List;
@@ -12,18 +14,66 @@
* @author Marius Bogoevici
*/
@Repository
-public class JpaReservationRepository extends JpaRepository<Reservation, Long> implements ReservationRepository {
+public class JpaReservationRepository extends JpaRepository<Reservation, Long> implements ReservationRepository
+{
- public JpaReservationRepository() {
- super(Reservation.class);
- }
+ public JpaReservationRepository()
+ {
+ super(Reservation.class);
+ }
- public Integer countByCriteria(ReservationSearchCriteria criteria) {
- return 0;
- }
+ public Long countByCriteria(ReservationSearchCriteria criteria)
+ {
+ Query query = getQuery(criteria, "SELECT count(r.id) ");
+ return (Long)query.getSingleResult();
+ }
- public List<Reservation> getByCriteria(ReservationSearchCriteria criteria) {
- return Collections.emptyList();
- }
+ public List<Reservation> getByCriteria(ReservationSearchCriteria criteria)
+ {
+ Query query = getQuery(criteria, null);
+ return query.getResultList();
+ }
+
+ private Query getQuery(ReservationSearchCriteria criteria, String select)
+ {
+ String q = (select != null ? select : "");
+
+ q += "FROM " + Reservation.class.getSimpleName() + " r WHERE 1 = 1";
+
+ if (criteria.getFromDate() != null)
+ {
+ q += " AND r.from >= :from";
+ }
+ if (criteria.getToDate() != null)
+ {
+ q += " AND r.to <= :to";
+ }
+ if (criteria.getEquipmentType() != null && !criteria.getEquipmentType().isEmpty())
+ {
+ StringBuilder sb = new StringBuilder();
+ String d = "";
+ for (EquipmentType type : criteria.getEquipmentType())
+ {
+ sb.append(d);
+ sb.append("'");
+ sb.append(type);
+ sb.append("'");
+ if (d.isEmpty()) d = ",";
+ }
+ q += " AND r.equipment.equipmentType IN (" + sb.toString() + ")";
+ }
+
+ Query query = entityManager.createQuery(q);
+
+ if (criteria.getFromDate() != null)
+ {
+ query.setParameter("from", criteria.getFromDate());
+ }
+ if (criteria.getToDate() != null)
+ {
+ query.setParameter("to", criteria.getToDate());
+ }
+ return query;
+ }
}
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/initializer/DatabaseInitializer.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/initializer/DatabaseInitializer.java 2010-02-02 15:31:41 UTC (rev 100261)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/main/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/initializer/DatabaseInitializer.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -21,15 +21,7 @@
import org.springframework.transaction.support.TransactionCallback;
import org.springframework.transaction.support.TransactionTemplate;
-import org.jboss.snowdrop.samples.sportsclub.domain.entity.Account;
-import org.jboss.snowdrop.samples.sportsclub.domain.entity.Address;
-import org.jboss.snowdrop.samples.sportsclub.domain.entity.BillingType;
-import org.jboss.snowdrop.samples.sportsclub.domain.entity.Equipment;
-import org.jboss.snowdrop.samples.sportsclub.domain.entity.EquipmentType;
-import org.jboss.snowdrop.samples.sportsclub.domain.entity.Membership;
-import org.jboss.snowdrop.samples.sportsclub.domain.entity.Name;
-import org.jboss.snowdrop.samples.sportsclub.domain.entity.Person;
-import org.jboss.snowdrop.samples.sportsclub.domain.entity.Reservation;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.*;
/**
* @author <a href="mailto:mariusb at redhat.com">Marius Bogoevici</a>
@@ -102,6 +94,13 @@
saveMap(DatabaseInitializer.this.entityManager, accounts);
+ Map<String, Invoice> invoices = new HashMap<String, Invoice>();
+
+ invoices.put("invoice1", createInvoice(accounts.get("account1")));
+
+ saveMap(DatabaseInitializer.this.entityManager, invoices);
+
+
Map<String, Equipment> equipments = new HashMap<String, Equipment>();
equipments.put("equipment1", createEquipment("Engage", "95T Engage by LifeFitness", TREADMILL));
@@ -130,7 +129,7 @@
});
}
- private static void saveMap(EntityManager entityManager, Map data)
+ private void saveMap(EntityManager entityManager, Map data)
{
for (String key : (Set<String>)data.keySet())
{
@@ -138,13 +137,13 @@
}
}
- private static void save(EntityManager entityManager, Object entity)
+ private void save(EntityManager entityManager, Object entity)
{
entityManager.persist(entity);
//entityManager.flush();
}
- private static Account createAccount(Membership silverMembership, BillingType billingType, Person person)
+ private Account createAccount(Membership silverMembership, BillingType billingType, Person person)
{
Account account = new Account();
account.setSubscriber(person);
@@ -155,8 +154,21 @@
return account;
}
- private static Person createPerson(String firstname, String lastname, String street, String city, String province, String country)
+ private Invoice createInvoice(Account account)
{
+ Date date = createDate(2009, 02, 01);
+
+ Invoice invoice = new Invoice();
+ invoice.setAccount(account);
+ invoice.setAmount(account.getFeePerBillingPeriod());
+ invoice.setIssueDate(date);
+ invoice.setBillingPeriod(account.getBillingPeriodFor(date));
+
+ return invoice;
+ }
+
+ private Person createPerson(String firstname, String lastname, String street, String city, String province, String country)
+ {
Person person = new Person();
person.setName(new Name());
person.setAddress(new Address());
@@ -171,7 +183,7 @@
return person;
}
- private static Membership createMembership(String code, String amount)
+ private Membership createMembership(String code, String amount)
{
Membership membership = new Membership(code);
membership.setActive(true);
@@ -179,7 +191,7 @@
return membership;
}
- private static Equipment createEquipment(String name, String description, EquipmentType type)
+ private Equipment createEquipment(String name, String description, EquipmentType type)
{
Equipment equipment = new Equipment();
equipment.setDescription(description);
@@ -188,7 +200,7 @@
return equipment;
}
- private static Reservation createReservation(Date fromDate, Date toDate, Equipment equipment, Account account)
+ private Reservation createReservation(Date fromDate, Date toDate, Equipment equipment, Account account)
{
assert fromDate.before(toDate);
Reservation reservation = new Reservation();
@@ -202,7 +214,7 @@
/**
* Months are human readable and start at 1!
*/
- private static Date createDate(int year, int month, int day)
+ private Date createDate(int year, int month, int day)
{
Calendar cal = Calendar.getInstance(Locale.US);
cal.clear();
Added: projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaAccountRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaAccountRepository.java (rev 0)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaAccountRepository.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -0,0 +1,43 @@
+package org.jboss.snowdrop.samples.sportsclub.dao.jpa;
+
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.junit.runner.RunWith;
+import org.junit.Test;
+import org.junit.Assert;
+import org.jboss.snowdrop.samples.sportsclub.domain.repository.AccountRepository;
+import org.jboss.snowdrop.samples.sportsclub.domain.repository.criteria.AccountSearchCriteria;
+import org.jboss.snowdrop.samples.sportsclub.domain.repository.criteria.PersonSearchCriteria;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.Account;
+
+import java.util.Collection;
+import java.util.List;
+
+/**
+ * @author <a href="mailto:lvlcek at redhat.com">Lukas Vlcek</a>
+ */
+ at ContextConfiguration(locations = {"classpath:test-infrastructure.xml",
+ "classpath:TEST-jpa-infrastructure.xml",
+ "classpath:dao-context.xml"})
+ at RunWith(SpringJUnit4ClassRunner.class)
+public class TestJpaAccountRepository
+{
+ @Autowired
+ AccountRepository accountRepository;
+
+ @Test
+ public void testAccountRepository()
+ {
+ Collection<Account> accounts = accountRepository.findAll();
+ Assert.assertEquals(12, accounts.size());
+
+// AccountSearchCriteria criteria = new AccountSearchCriteria();
+// PersonSearchCriteria personCriteria = new PersonSearchCriteria();
+// personCriteria.setName("Vetinari");
+// criteria.setPersonSearchCriteria(personCriteria);
+// List<Account> accountList = accountRepository.findByCriteria(criteria);
+// Account account = accountList.get(0);
+// Assert.assertNotNull(account.getBalance());
+ }
+}
Added: projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaEquipmentRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaEquipmentRepository.java (rev 0)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaEquipmentRepository.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -0,0 +1,30 @@
+package org.jboss.snowdrop.samples.sportsclub.dao.jpa;
+
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.junit.runner.RunWith;
+import org.junit.Test;
+import org.junit.Assert;
+import org.jboss.snowdrop.samples.sportsclub.domain.repository.EquipmentRepository;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.EquipmentType;
+
+/**
+ * @author <a href="mailto:lvlcek at redhat.com">Lukas Vlcek</a>
+ */
+ at ContextConfiguration(locations = {"classpath:test-infrastructure.xml",
+ "classpath:TEST-jpa-infrastructure.xml",
+ "classpath:dao-context.xml"})
+ at RunWith(SpringJUnit4ClassRunner.class)
+public class TestJpaEquipmentRepository
+{
+ @Autowired
+ EquipmentRepository equipmentRepository;
+
+ @Test
+ public void testEquipmentTypes()
+ {
+ EquipmentType[] types = equipmentRepository.getEquipmentTypes();
+ Assert.assertEquals(3,types.length);
+ }
+}
Added: projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaInvoiceRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaInvoiceRepository.java (rev 0)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaInvoiceRepository.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -0,0 +1,41 @@
+package org.jboss.snowdrop.samples.sportsclub.dao.jpa;
+
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+import org.junit.runner.RunWith;
+import org.junit.Test;
+import org.junit.Assert;
+import org.jboss.snowdrop.samples.sportsclub.domain.repository.InvoiceRepository;
+import org.jboss.snowdrop.samples.sportsclub.domain.repository.AccountRepository;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.Account;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.Invoice;
+
+import java.util.List;
+
+/**
+ * @author <a href="mailto:lvlcek at redhat.com">Lukas Vlcek</a>
+ */
+ at ContextConfiguration(locations = {"classpath:test-infrastructure.xml",
+ "classpath:TEST-jpa-infrastructure.xml",
+ "classpath:dao-context.xml"})
+ at RunWith(SpringJUnit4ClassRunner.class)
+public class TestJpaInvoiceRepository
+{
+ @Autowired
+ InvoiceRepository invoiceRepository;
+
+ @Autowired
+ AccountRepository accountRepository;
+
+ @Test
+ @Transactional
+ public void testFindForAccount()
+ {
+ Account a = accountRepository.findById(2L);
+ List<Invoice> invoices = invoiceRepository.findForAccount(a);
+ Assert.assertNotNull(invoices);
+ Assert.assertEquals(1, invoices.size());
+ }
+}
Added: projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaMembershipRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaMembershipRepository.java (rev 0)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaMembershipRepository.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -0,0 +1,48 @@
+package org.jboss.snowdrop.samples.sportsclub.dao.jpa;
+
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.junit.runner.RunWith;
+import org.junit.Test;
+import org.junit.Assert;
+import org.jboss.snowdrop.samples.sportsclub.domain.repository.MembershipRepository;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.Membership;
+
+import java.util.List;
+import java.util.Arrays;
+
+/**
+ * @author <a href="mailto:lvlcek at redhat.com">Lukas Vlcek</a>
+ */
+ at ContextConfiguration(locations = {"classpath:test-infrastructure.xml",
+ "classpath:TEST-jpa-infrastructure.xml",
+ "classpath:dao-context.xml"})
+ at RunWith(SpringJUnit4ClassRunner.class)
+public class TestJpaMembershipRepository
+{
+ @Autowired
+ MembershipRepository membershipRepository;
+
+ @Test
+ public void testCountAll()
+ {
+ long cnt = membershipRepository.countAll();
+ Assert.assertEquals(3, cnt);
+ }
+
+ @Test
+ public void testFindAllMembershipCodes()
+ {
+ List<String> codes = membershipRepository.findAllMembershipCodes();
+ Assert.assertEquals(3, codes.size());
+ Assert.assertTrue(codes.containsAll(Arrays.asList(new String[]{"GOLD","PLATINUM","SILVER"})));
+ }
+
+ @Test
+ public void testFindAllActiveMembershipTypes()
+ {
+ List<Membership> memlist = membershipRepository.findAllActiveMembershipTypes();
+ Assert.assertEquals(3, memlist.size());
+ }
+}
Deleted: projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaPersonDao.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaPersonDao.java 2010-02-02 15:31:41 UTC (rev 100261)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaPersonDao.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -1,32 +0,0 @@
-package org.jboss.snowdrop.samples.sportsclub.dao.jpa;
-
-import javax.persistence.EntityManager;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.test.context.ContextConfiguration;
-import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
-
-import org.jboss.snowdrop.samples.sportsclub.domain.repository.PersonRepository;
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-
-/**
- * @author Marius Bogoevici
- */
- at ContextConfiguration(locations = {"classpath:test-infrastructure.xml",
- "classpath:TEST-jpa-infrastructure.xml",
- "classpath:dao-context.xml"})
- at RunWith(SpringJUnit4ClassRunner.class)
-public class TestJpaPersonDao
-{
- @Autowired
- PersonRepository personRepository;
-
- @Test
- public void testPersonRepository()
- {
- long count = personRepository.countAll();
- Assert.assertEquals(12, count);
- }
-}
Copied: projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaPersonRepository.java (from rev 100243, projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaPersonDao.java)
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaPersonRepository.java (rev 0)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaPersonRepository.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -0,0 +1,32 @@
+package org.jboss.snowdrop.samples.sportsclub.dao.jpa;
+
+import javax.persistence.EntityManager;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+
+import org.jboss.snowdrop.samples.sportsclub.domain.repository.PersonRepository;
+import org.junit.Assert;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+/**
+ * @author Marius Bogoevici
+ */
+ at ContextConfiguration(locations = {"classpath:test-infrastructure.xml",
+ "classpath:TEST-jpa-infrastructure.xml",
+ "classpath:dao-context.xml"})
+ at RunWith(SpringJUnit4ClassRunner.class)
+public class TestJpaPersonRepository
+{
+ @Autowired
+ PersonRepository personRepository;
+
+ @Test
+ public void testPersonRepository()
+ {
+ long count = personRepository.countAll();
+ Assert.assertEquals(12, count);
+ }
+}
Added: projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaReservationRepository.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaReservationRepository.java (rev 0)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-jpa-dao/src/test/java/org/jboss/snowdrop/samples/sportsclub/dao/jpa/TestJpaReservationRepository.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -0,0 +1,78 @@
+package org.jboss.snowdrop.samples.sportsclub.dao.jpa;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+import org.jboss.snowdrop.samples.sportsclub.domain.repository.ReservationRepository;
+import org.jboss.snowdrop.samples.sportsclub.domain.repository.criteria.ReservationSearchCriteria;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.Reservation;
+import org.jboss.snowdrop.samples.sportsclub.domain.entity.EquipmentType;
+import org.junit.runner.RunWith;
+import org.junit.Test;
+import org.junit.Assert;
+
+import java.util.*;
+
+/**
+ * @author <a href="mailto:lvlcek at redhat.com">Lukas Vlcek</a>
+ */
+ at ContextConfiguration(locations = {"classpath:test-infrastructure.xml",
+ "classpath:TEST-jpa-infrastructure.xml",
+ "classpath:dao-context.xml"})
+ at RunWith(SpringJUnit4ClassRunner.class)
+public class TestJpaReservationRepository
+{
+ @Autowired
+ ReservationRepository reservationRepository;
+
+ @Test
+ public void testFromToFilterCriteria()
+ {
+ Date from = getDate(2009, 1, 1);
+ Date to = getDate(2009, 12, 31);
+
+ ReservationSearchCriteria criteria = new ReservationSearchCriteria();
+ criteria.setFromDate(from);
+ criteria.setToDate(to);
+
+ Assert.assertEquals(6, reservationRepository.getByCriteria(criteria).size());
+ Assert.assertEquals(6, reservationRepository.countByCriteria(criteria).longValue());
+
+ criteria = new ReservationSearchCriteria();
+ criteria.setFromDate(getDate(2009, 02, 01));
+
+ Assert.assertEquals(5, reservationRepository.getByCriteria(criteria).size());
+ Assert.assertEquals(5, reservationRepository.countByCriteria(criteria).longValue());
+
+ criteria = new ReservationSearchCriteria();
+ criteria.setToDate(getDate(2009, 11, 30));
+
+ Assert.assertEquals(5, reservationRepository.getByCriteria(criteria).size());
+ Assert.assertEquals(5, reservationRepository.countByCriteria(criteria).longValue());
+ }
+
+ @Test
+ public void testEquipmentTypeFilterCriteria()
+ {
+ Date from = getDate(2009, 1, 1);
+ Date to = getDate(2009, 12, 31);
+
+ List<EquipmentType> types = new ArrayList<EquipmentType>();
+ types.add(EquipmentType.COURT);
+ ReservationSearchCriteria criteria = new ReservationSearchCriteria();
+ criteria.setFromDate(from);
+ criteria.setToDate(to);
+ criteria.setEquipmentType(types);
+
+ Assert.assertEquals(1, reservationRepository.getByCriteria(criteria).size());
+ Assert.assertEquals(1, reservationRepository.countByCriteria(criteria).longValue());
+ }
+
+ private Date getDate(int year, int month, int day)
+ {
+ Calendar cal = Calendar.getInstance(Locale.US);
+ cal.clear();
+ cal.set(year, month - 1, day);
+ return cal.getTime();
+ }
+}
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-reservations-spring/src/main/java/org/jboss/snowdrop/samples/sportsclub/service/ReservationService.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-reservations-spring/src/main/java/org/jboss/snowdrop/samples/sportsclub/service/ReservationService.java 2010-02-02 15:31:41 UTC (rev 100261)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-reservations-spring/src/main/java/org/jboss/snowdrop/samples/sportsclub/service/ReservationService.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -13,7 +13,7 @@
{
List<Reservation> getReservations(Date fromDate, Date toDate, Integer nim, Integer max, List<EquipmentType> types);
- Integer countReservationsForRange(Date fromDate, Date toDate, List<EquipmentType> types);
+ Long countReservationsForRange(Date fromDate, Date toDate, List<EquipmentType> types);
void create(Reservation reservation);
}
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-reservations-spring/src/main/java/org/jboss/snowdrop/samples/sportsclub/service/ReservationServiceImpl.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-reservations-spring/src/main/java/org/jboss/snowdrop/samples/sportsclub/service/ReservationServiceImpl.java 2010-02-02 15:31:41 UTC (rev 100261)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-reservations-spring/src/main/java/org/jboss/snowdrop/samples/sportsclub/service/ReservationServiceImpl.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -36,7 +36,7 @@
return reservationRepository.getByCriteria(criteria);
}
- public Integer countReservationsForRange(Date fromDate, Date toDate, List<EquipmentType> types)
+ public Long countReservationsForRange(Date fromDate, Date toDate, List<EquipmentType> types)
{
ReservationSearchCriteria criteria = new ReservationSearchCriteria();
criteria.setFromDate(fromDate);
Modified: projects/snowdrop/examples/trunk/sportsclub/sportsclub-reservations-web/src/main/java/org/jboss/snowdrop/samples/sportsclub/jsf/beans/ReservationSearch.java
===================================================================
--- projects/snowdrop/examples/trunk/sportsclub/sportsclub-reservations-web/src/main/java/org/jboss/snowdrop/samples/sportsclub/jsf/beans/ReservationSearch.java 2010-02-02 15:31:41 UTC (rev 100261)
+++ projects/snowdrop/examples/trunk/sportsclub/sportsclub-reservations-web/src/main/java/org/jboss/snowdrop/samples/sportsclub/jsf/beans/ReservationSearch.java 2010-02-02 15:54:46 UTC (rev 100262)
@@ -28,7 +28,7 @@
private Long currentId;
private Map<Long, Reservation> reservationsMap = new HashMap<Long, Reservation>();
- private Integer rowCount;
+ private Long rowCount;
private ReservationTableState tableState;
@@ -99,7 +99,7 @@
reservationSearchOptions.getToDate(),
reservationSearchOptions.getSelectedEquipmentTypes());
}
- return rowCount;
+ return rowCount.intValue();
}
@Override
More information about the jboss-cvs-commits
mailing list