source: raptor-distribution/MSIs/raptor-mua/tags/v1.0.1/source/mua/conf/mua-core.xml @ 1725

Revision 1725, 12.2 KB checked in by rhyssmith, 5 years ago (diff)

Tagging raptor-mua v1.0.1-1 release of Raptor MUA MSI

  • Property svn:executable set to *
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<!-- Copyright (C) 2010 Cardiff University, Wales <smartp@cf.ac.uk> Licensed under the Apache License, Version 2.0 (the "License");
3    you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
4    Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS
5    IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language
6    governing permissions and limitations under the License. -->
7<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
8    xmlns:jaxws="http://cxf.apache.org/jaxws"
9    xsi:schemaLocation="
10        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
11        http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd">
12
13
14    <import resource="classpath:META-INF/cxf/cxf.xml" />
15    <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />
16    <import resource="classpath:META-INF/cxf/cxf-servlet.xml" />
17
18
19    <!-- WEB SERVICE ENDPOINT INTERFACE (SEI) SETUP -->
20    <jaxws:endpoint id="muaEndpoint"
21            implementor="#muaEndpointInterface" address="/MultiUnitAggregator">
22        <jaxws:serviceFactory>
23            <ref bean='jaxws-and-aegis-service-factory' />
24        </jaxws:serviceFactory>
25
26
27    </jaxws:endpoint>
28
29    <bean id="muaEndpointInterface" class="uk.ac.cardiff.raptormua.wsinterface.impl.MultiUnitAggregatorImpl">
30        <property name="processService">
31            <ref bean="MUAProcess"></ref>
32        </property>
33    </bean>
34
35    <bean id="aegisBean" class="org.apache.cxf.aegis.databinding.AegisDatabinding" scope="prototype" />
36    <bean id="jaxws-and-aegis-service-factory" class="org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean" scope="prototype">
37        <property name="dataBinding" ref="aegisBean" />
38        <property name="properties">
39            <map>
40                <entry key="writeXsiType">
41                    <value type="java.lang.Boolean">true</value>
42                </entry>
43                <entry key="overrideTypesList">
44                    <list>
45                        <!-- THIS LIST IS IMPORTANT, it exposes these classes to the aegis XSD creator so we can output the
46                            generic Entry class in lists in the Collector Service Endpoint Class but actually output any of its subclasses. Hence, this
47                            is a way of dealing with inheritence in CXF and aegis -->
48                        <value>uk.ac.cardiff.model.event.AuthenticationEvent</value>
49                        <value>uk.ac.cardiff.model.event.ShibbolethIdpAuthenticationEvent</value>
50                        <value>uk.ac.cardiff.model.event.EzproxyAuthenticationEvent</value>
51                        <value>uk.ac.cardiff.model.event.OpenathenslaAuthenticationEvent</value>
52                    </list>
53                </entry>
54            </map>
55        </property>
56    </bean>
57
58    <!-- DONE -->
59
60    <bean id="MUAProcess" class="uk.ac.cardiff.raptormua.service.impl.MUAProcessImpl">
61        <property name="engine">
62            <ref bean="MUAEngine"></ref>
63        </property>
64        <property name="fileUploadEngine">
65            <ref bean="fileUploadFromDirectory" />
66        </property>
67    </bean>
68
69    <bean id="fileUploadFromDirectory" class="uk.ac.cardiff.raptormua.upload.FileUploadEngine">
70        <property name="enabled" value="true" />
71        <property name="uploadDirectories">
72            <list>
73                <bean id="shibUploadDirectory" class="uk.ac.cardiff.raptormua.upload.UploadDirectory">
74                    <property name="allowedFileExtensions">
75                        <list>
76                            <value>txt</value>
77                            <value>log</value>
78                        </list>
79                    </property>
80                    <property name="uploadDirectory" value="/opt/raptor/mua/batchimport/shib2/" />
81                    <property name="eventType">
82                        <value>SHIBBOLETH2</value>
83                    </property>
84                </bean>
85                <bean id="shib13UploadDirectory" class="uk.ac.cardiff.raptormua.upload.UploadDirectory">
86                    <property name="allowedFileExtensions">
87                        <list>
88                            <value>txt</value>
89                            <value>log</value>
90                        </list>
91                    </property>
92                    <property name="uploadDirectory" value="/opt/raptor/mua/batchimport/shib13/" />
93                    <property name="eventType">
94                        <value>SHIBBOLETH13</value>
95                    </property>
96                </bean>
97                <bean id="ezproxyUploadDirectory" class="uk.ac.cardiff.raptormua.upload.UploadDirectory">
98                    <property name="allowedFileExtensions">
99                        <list>
100                            <value>txt</value>
101                            <value>log</value>
102                        </list>
103                    </property>
104                    <property name="uploadDirectory" value="/opt/raptor/mua/batchimport/ezproxy/" />
105                    <property name="eventType">
106                        <value>EZPROXY</value>
107                    </property>
108                </bean>
109            </list>
110        </property>
111    </bean>
112
113    <!-- this bean config kicks of the singleton engine instance which is then used by all services of the MUA -->
114    <bean id="MUAEngine" class="uk.ac.cardiff.raptormua.engine.MUAEngine">
115        <property name="eventReleaseClient">
116            <ref bean="eventReleaseClient"></ref>
117        </property>
118        <property name="statisticsHandler">
119            <ref bean="statisticalUnits" />
120        </property>
121        <property name="storageEngine">
122            <ref bean="storageEngine"></ref>
123        </property>
124        <property name="resourceStorageEngine">
125            <ref bean="resourceStorageEngine"></ref>
126        </property>
127        <property name="muaMetadata">
128            <ref bean="MUAMetadata"></ref>
129        </property>
130        <property name="capabilitiesConstructor">
131            <ref bean="capabilitiesConstructor" />
132        </property>
133        <property name="dataAccessRegister">
134            <ref bean="dataAccessRegister"></ref>
135        </property>
136        <property name="maxReleaseEventSize">
137            <value>2000</value>
138        </property> <!-- Max Size is 3000 -->
139    </bean>
140
141   <bean id="capabilitiesConstructor" class="uk.ac.cardiff.raptormua.engine.CapabilitiesConstructor">
142         <property name="statisticsHandler">
143            <ref bean="statisticalUnits" />
144        </property>
145        <property name="storageEngine">
146            <ref bean="storageEngine"></ref>
147        </property>
148         <property name="metadata">
149            <ref bean="MUAMetadata"></ref>
150        </property>
151        <property name="cacheTimeoutMs">
152            <value>1800000</value>
153        </property>
154        <property name="excludeFieldNames">
155            <set>
156                <value>principalName</value>
157                <value>responseId</value>
158                <value>requestId</value>
159                <value>sessionId</value>
160                <value>requesterIp</value>
161                <value>nameIdentifier</value>
162                <value>persistantId</value>
163                <value>eventTime</value>
164                <value>eventId</value>
165                <value>assertionId</value>
166            </set>
167        </property>
168    </bean>
169
170    <bean id="statisticalUnits" class="uk.ac.cardiff.raptormua.engine.statistics.StatisticsHandler">
171        <property name="statisticRegistry">
172            <ref bean="statisticRegistry" />
173        </property>
174
175    </bean>
176
177    <!-- Handles all statistical units defined -->
178    <bean id="statisticRegistry" class="uk.ac.cardiff.raptormua.engine.statistics.ContextAwareStatisticRegistry">
179        <property name="automaticallyFindStatsiticsToLoad" value="true" />
180        <property name="processorRegistry">
181            <ref bean="processorRegistry" />
182        </property>
183    </bean>
184
185
186
187    <bean id="eventReleaseEngine" class="uk.ac.cardiff.raptor.remoting.client.EventReleaseEngine">
188        <property name="attributeFilterEngine">
189            <ref bean="attributeFilterEngine" />
190        </property>
191        <property name="serviceEndpointInterface">
192            <ref bean="serviceEndpointInterface" />
193        </property>
194    </bean>
195
196    <bean id="attributeFilterEngine" class="uk.ac.cardiff.raptor.attribute.filtering.AttrributeFilterEngine" />
197
198
199    <!-- release trigger setup -->
200    <bean id="muaReleaseQuickTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
201        <property name="jobDetail">
202            <ref local="muaReleaseJobDetail" />
203        </property>
204        <property name="startDelay" value="10000" />
205        <property name="repeatInterval" value="10000" />
206    </bean>
207
208    <bean id="muaReleaseJobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
209        <property name="targetObject">
210            <ref bean="MUAProcess" />
211        </property>
212        <property name="targetMethod">
213            <value>release</value>
214        </property>
215        <property name="concurrent">
216            <value>false</value>
217        </property>
218    </bean>
219
220    <!-- large file upload trigger -->
221    <bean id="muaFileUploadQuickTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
222        <property name="jobDetail">
223            <ref local="muaFileUplaodJobDetail" />
224        </property>
225        <property name="startDelay" value="10000" />
226        <property name="repeatInterval" value="60000" />
227    </bean>
228
229    <bean id="muaFileUplaodJobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
230        <property name="targetObject">
231            <ref bean="MUAProcess" />
232        </property>
233        <property name="targetMethod">
234            <value>uploadFromDirectory</value>
235        </property>
236        <property name="concurrent">
237            <value>false</value>
238        </property>
239    </bean>
240
241    <!-- Trigger setup -->
242    <bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
243        <property name="triggers">
244            <list>
245                <ref local="muaReleaseQuickTrigger" />
246                <ref local="muaFileUploadQuickTrigger" />
247            </list>
248        </property>
249    </bean>
250    <!-- DONE -->
251
252    <!-- Create the storage engine and entry handler -->
253    <bean name="storageEngine" class="uk.ac.cardiff.raptor.store.EventStorageEngine">
254        <property name="eventHandler">
255            <ref bean="persistantEventHandler" />
256        </property>
257        <property name="attributeAssociationEngine">
258            <ref bean="attributeAssociationEngine"></ref>
259        </property>
260    </bean>
261
262    <bean name="resourceStorageEngine" class="uk.ac.cardiff.raptor.store.DefaultResourceStorageEngine">
263        <property name="dataConnection">
264            <ref bean="dataConnectionImpl" />
265        </property>
266    </bean>
267
268
269
270    <bean name="persistantEventHandler" class="uk.ac.cardiff.raptor.store.impl.PersistantEventHandler">
271        <constructor-arg index="0">
272            <ref bean="dataConnectionImpl"></ref>
273        </constructor-arg>
274        <!-- <property name="optimiseCountQueries"><value>true</value></property> <property name="countClassNames"> <list>
275            <value>ShibbolethIdpAuthenticationEvent</value> <value>EzproxyAuthenticationEvent</value> </list> </property> -->
276    </bean>
277
278    <bean name="dataConnectionImpl" class="uk.ac.cardiff.raptor.store.dao.DefaultDataConnection">
279        <property name="sessionFactory" ref="muaSessionFactory" />
280    </bean>
281
282    <!-- Load all other bean definitions -->
283
284    <import resource="database.xml" />
285    <import resource="metadata.xml" />
286    <import resource="statistical-units-custom.xml" />
287    <import resource="event-release.xml" />
288    <import resource="users.xml" />
289    <import resource="attribute-association.xml" />
290    <import resource="batch-event-parse.xml" />
291    <import resource="statistical-units-system.xml" />
292    <import resource="statistical-processors.xml" />
293
294</beans>
Note: See TracBrowser for help on using the repository browser.