1
|
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
<beans xmlns="http://www.springframework.org/schema/beans"
|
3
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:jaxws="http://cxf.apache.org/jaxws"
|
4
|
xmlns:sec="http://cxf.apache.org/configuration/security" xmlns:wsa="http://cxf.apache.org/ws/addressing"
|
5
|
xmlns:p="http://www.springframework.org/schema/p" xmlns:http="http://cxf.apache.org/transports/http/configuration"
|
6
|
xmlns:util="http://www.springframework.org/schema/util" xmlns:t="http://dnetlib.eu/springbeans/t"
|
7
|
xmlns:template="http://dnetlib.eu/springbeans/template"
|
8
|
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
|
9
|
http://cxf.apache.org/ws/addressing http://cxf.apache.org/schemas/ws-addr-conf.xsd
|
10
|
http://cxf.apache.org/configuration/security http://cxf.apache.org/schemas/configuration/security.xsd
|
11
|
http://cxf.apache.org/transports/http/configuration http://cxf.apache.org/schemas/configuration/http-conf.xsd
|
12
|
http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd
|
13
|
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-2.0.xsd
|
14
|
http://dnetlib.eu/springbeans/template http://dnetlib.eu/springbeans/template.xsd">
|
15
|
|
16
|
<!-- beans -->
|
17
|
<bean name="isSNService" class="eu.dnetlib.enabling.is.sn.ISSNServiceImpl"
|
18
|
p:endpoint-ref="isSNServiceEndpoint" p:core-ref="isSNServiceCore"
|
19
|
init-method="start" destroy-method="stop" />
|
20
|
|
21
|
<bean name="isSNServiceCore" class="eu.dnetlib.enabling.is.sn.ISSNServiceCore"
|
22
|
p:registries-ref="issResourceStateNotificationRegistries"
|
23
|
p:backupDir="${services.is.sn.data.path}/backups"/>
|
24
|
|
25
|
<bean name="issnNotificationDetector" class="eu.dnetlib.enabling.is.sn.NotificationDetectorImpl"
|
26
|
p:sender-ref="issnNotificationSender" p:registries-ref="issResourceStateNotificationRegistries" />
|
27
|
|
28
|
<bean id="issnNotificationDetectorPendingSupport"
|
29
|
class="eu.dnetlib.enabling.is.sn.resourcestate.PendingResourceStateNotificationDetectorFilter"
|
30
|
p:delegate-ref="issnNotificationDetector" />
|
31
|
|
32
|
<bean id="subscriptionRequestFilter" class="eu.dnetlib.enabling.is.sn.resourcestate.SubscriptionRequestFilter" />
|
33
|
|
34
|
<!--
|
35
|
set this condition to true to globally inhibit notification processing
|
36
|
-->
|
37
|
<bean id="issnInhibitionCondition" class="eu.dnetlib.miscutils.coupling.StaticCondition" />
|
38
|
|
39
|
<bean id="issnNotificationDetectorConditional"
|
40
|
class="eu.dnetlib.enabling.is.sn.resourcestate.ConditionalResourceStateNotificationDetectorFilter"
|
41
|
p:inhibitionCondition-ref="issnInhibitionCondition" p:delegate-ref="issnNotificationDetectorPendingSupport" />
|
42
|
|
43
|
<util:list id="issResourceStateNotificationRegistries">
|
44
|
<bean id="basicResourceStateSubscriptionRegistry"
|
45
|
class="eu.dnetlib.enabling.is.sn.resourcestate.ResourceStateSubscriptionRegistry">
|
46
|
<property name="subscriptionDao">
|
47
|
<!-- <bean id="basicSubscriptionDao"-->
|
48
|
<!--
|
49
|
class="eu.dnetlib.enabling.is.sn.resourcestate.MemoryResourceStateSubscriptionDAOImpl"
|
50
|
/>
|
51
|
-->
|
52
|
<ref bean="hibernateResourceStateSubscriptionDAO" />
|
53
|
</property>
|
54
|
</bean>
|
55
|
</util:list>
|
56
|
|
57
|
<bean name="issnNotificationSender"
|
58
|
class="eu.dnetlib.enabling.is.sn.AsynchronousNotificationSenderImpl"
|
59
|
p:invoker-ref="issnNotificationInvoker" init-method="start" />
|
60
|
|
61
|
<bean name="issnNotificationInvocationLogger"
|
62
|
class="eu.dnetlib.enabling.is.sn.MemoryNotificationInvocationLogger" />
|
63
|
|
64
|
<bean name="issnNotificationInvoker" class="eu.dnetlib.enabling.is.sn.NotificationInvokerImpl"
|
65
|
p:invocationLogger-ref="issnNotificationInvocationLogger" />
|
66
|
|
67
|
<bean name="issnIntegrationTrigger" class="eu.dnetlib.enabling.is.sn.NotificationTriggerImpl"
|
68
|
p:name="issnIntegrationTrigger" p:detector-ref="issnNotificationDetectorConditional" />
|
69
|
|
70
|
<!-- endpoints -->
|
71
|
<jaxws:endpoint id="isSNServiceEndpoint" implementor="#isSNService"
|
72
|
implementorClass="eu.dnetlib.enabling.is.sn.rmi.ISSNService" address="/isSN" />
|
73
|
|
74
|
<template:instance name="serviceRegistrationManager"
|
75
|
t:serviceRegistrationManagerClass="eu.dnetlib.enabling.tools.registration.ValidatingServiceRegistrationManagerImpl"
|
76
|
t:name="isSNServiceRegistrationManager" t:service="isSNService"
|
77
|
t:endpoint="isSNServiceEndpoint" t:jobScheduler="jobScheduler" />
|
78
|
</beans>
|