Classes in this File | Line Coverage | Branch Coverage | Complexity | ||||
DroolsBeanFactory |
|
| 1.0;1 |
1 | /* | |
2 | Drools4 Integration Helper | |
3 | Copyright (C) 2009 Mathieu Boretti mathieu.boretti@gmail.com | |
4 | ||
5 | This program is free software: you can redistribute it and/or modify | |
6 | it under the terms of the GNU General Public License as published by | |
7 | the Free Software Foundation, either version 3 of the License, or | |
8 | (at your option) any later version. | |
9 | ||
10 | This program is distributed in the hope that it will be useful, | |
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
13 | GNU General Public License for more details. | |
14 | ||
15 | You should have received a copy of the GNU General Public License | |
16 | along with this program. If not, see <http://www.gnu.org/licenses/>. | |
17 | ||
18 | */ | |
19 | package org.boretti.drools.integration.drools4; | |
20 | ||
21 | import org.springframework.beans.factory.FactoryBean; | |
22 | ||
23 | /** | |
24 | * This class provide a way to interface with spring. | |
25 | * Use | |
26 | * <pre> | |
27 | * <bean id="XXX" | |
28 | * class="org.boretti.drools.integration.drools4.DroolsBeanFactory"> | |
29 | * <property name="droolsInterface" value="interface name"/> | |
30 | * </bean> | |
31 | * </pre> | |
32 | * To use it. The passed interface must have been annotated with the | |
33 | * right annotation. | |
34 | * @author mbo | |
35 | * | |
36 | */ | |
37 | 4 | public class DroolsBeanFactory implements FactoryBean { |
38 | ||
39 | private Class<?> droolsInterface; | |
40 | ||
41 | @Override | |
42 | public Object getObject() throws Exception { | |
43 | 4 | return new DroolsProvider().getService(droolsInterface); |
44 | } | |
45 | ||
46 | @Override | |
47 | public Class<?> getObjectType() { | |
48 | 8 | return droolsInterface; |
49 | } | |
50 | ||
51 | @Override | |
52 | public boolean isSingleton() { | |
53 | 4 | return false; |
54 | } | |
55 | ||
56 | public void setDroolsInterface(Class<?> droolsInterface) { | |
57 | 4 | this.droolsInterface = droolsInterface; |
58 | 4 | } |
59 | ||
60 | ||
61 | } |