|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
JpaQueryAdapter | Line # 38 | 3 | 16.7% | 3 | 0 | 100% |
1.0
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
(6) | |||
Result | |||
1.0
|
org.perfectjpattern.jee.integration.dao.jpa.TestExample.testJpaCmpGenericDao org.perfectjpattern.jee.integration.dao.jpa.TestExample.testJpaCmpGenericDao | 1 PASS | |
1.0
|
org.perfectjpattern.jee.integration.dao.TestJpaGenericReadOnlyDao.testContains org.perfectjpattern.jee.integration.dao.TestJpaGenericReadOnlyDao.testContains | 1 PASS | |
1.0
|
org.perfectjpattern.jee.integration.dao.TestJpaGenericDao.testCreate org.perfectjpattern.jee.integration.dao.TestJpaGenericDao.testCreate | 1 PASS | |
1.0
|
org.perfectjpattern.jee.integration.dao.TestJpaGenericDao.testUpdate org.perfectjpattern.jee.integration.dao.TestJpaGenericDao.testUpdate | 1 PASS | |
1.0
|
org.perfectjpattern.jee.integration.dao.TestJpaGenericReadOnlyDao.testFindAll org.perfectjpattern.jee.integration.dao.TestJpaGenericReadOnlyDao.testFindAll | 1 PASS | |
1.0
|
org.perfectjpattern.jee.integration.dao.TestJpaGenericReadOnlyDao.testCount org.perfectjpattern.jee.integration.dao.TestJpaGenericReadOnlyDao.testCount | 1 PASS | |
1 | //---------------------------------------------------------------------- | |
2 | // | |
3 | // PerfectJPattern: "Design patterns are good but components are better!" | |
4 | // HibernateQueryAdapter.java Copyright (c) 2009 Giovanni Azua Garcia | |
5 | // bravegag@hotmail.com | |
6 | // | |
7 | // This program is free software; you can redistribute it and/or | |
8 | // modify it under the terms of the GNU General Public License | |
9 | // as published by the Free Software Foundation; either version 3 | |
10 | // of the License, or (at your option) any later version. | |
11 | // | |
12 | // This program is distributed in the hope that it will be useful, | |
13 | // but WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 | // GNU General Public License for more details. | |
16 | // | |
17 | // You should have received a copy of the GNU General Public License | |
18 | // along with this program; if not, see <http://www.gnu.org/licenses/>. | |
19 | // | |
20 | //---------------------------------------------------------------------- | |
21 | package org.perfectjpattern.jee.integration.dao; | |
22 | ||
23 | import java.lang.reflect.*; | |
24 | ||
25 | import javax.persistence.*; | |
26 | ||
27 | import org.perfectjpattern.core.structural.adapter.*; | |
28 | import org.perfectjpattern.jee.api.integration.dao.*; | |
29 | ||
30 | /** | |
31 | * Adapts Hibernate's {@link Query} to the JPA implementation-free | |
32 | * PerfectJPattern's {@link IQuery} definition | |
33 | * | |
34 | * @author <a href="mailto:bravegag@hotmail.com">Giovanni Azua</a> | |
35 | * @version $Revision: 1.0 $Date: Feb 18, 2009 11:54:49 AM $ | |
36 | */ | |
37 | public | |
38 | class JpaQueryAdapter | |
39 | extends Adapter<IQuery, Query> | |
40 | { | |
41 | //------------------------------------------------------------------------ | |
42 | // public | |
43 | //------------------------------------------------------------------------ | |
44 | /** | |
45 | * Constructs a {@link JpaQueryAdapter} from the Adaptee | |
46 | * {@link Query} instance | |
47 | * | |
48 | * @param anAdaptee Adaptee Hibernate Query | |
49 | * @throws IllegalArgumentException | |
50 | */ | |
51 | 15 | public |
52 | JpaQueryAdapter(Query anAdaptee) | |
53 | throws IllegalArgumentException | |
54 | { | |
55 | 15 | super(IQuery.class, anAdaptee); |
56 | } | |
57 | ||
58 | //------------------------------------------------------------------------ | |
59 | // protected | |
60 | //------------------------------------------------------------------------ | |
61 | /** | |
62 | * {@inheritDoc} | |
63 | */ | |
64 | 15 | @Override |
65 | protected Object | |
66 | invokeUnderlying(Method aMethod, Object[] anArguments) | |
67 | throws Throwable | |
68 | { | |
69 | 15 | try |
70 | { | |
71 | 15 | return super.invokeUnderlying(aMethod, anArguments); |
72 | } | |
73 | // CHECKSTYLE:OFF | |
74 | catch (Throwable anException) | |
75 | // CHECKSTYLE:ON | |
76 | { | |
77 | // make sure that Exceptions are properly chained | |
78 | throw new DaoException(anException); | |
79 | } | |
80 | } | |
81 | } |
|