Project

General

Profile

1
<?xml version="1.0" encoding="UTF-8"?>
2

    
3
<beans xmlns="http://www.springframework.org/schema/beans"
4
	   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
5
	   xmlns:context="http://www.springframework.org/schema/context"
6
	   xmlns:cxf="http://cxf.apache.org/core"
7
	   xmlns:jaxws="http://cxf.apache.org/jaxws"
8
	   xmlns:p="http://http://www.springframework.org/schema/p"
9
	   xmlns:template="http://dnetlib.eu/springbeans/template"
10
	   xmlns:t="http://dnetlib.eu/springbeans/t"
11
	   xmlns:util="http://www.springframework.org/schema/util"
12

    
13
	   xsi:schemaLocation="
14
		http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
15
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd
16
        http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd
17
        http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd
18
		http://dnetlib.eu/springbeans/template http://dnetlib.eu/springbeans/template.xsd
19
		http://www.springframework.org/schema/util
20
        http://www.springframework.org/schema/util/spring-util-4.0.xsd"
21
	   	default-autowire="byName">
22

    
23
	<alias name="indexServiceLocator" alias="service.indexServiceLocator" />
24
	<alias name="resultSetFactory" alias="service.resultSetFactory" />
25

    
26
	<alias name="${services.search.indexMode}.indexServiceLocator"  alias="search.indexServiceLocator" />
27
	<alias name="${services.search.indexMode}.resultSetFactory"  alias="search.resultSetFactory" />
28

    
29
	<!-- query rewrite rules
30
	<bean id="prefixRule" class="eu.dnetlib.data.search.app.plan.PrefixRule">
31
		<property name="name" value="query prefix rule" />
32
		<property name="prefix" value="(deletedbyinference=false)" />
33
	</bean>-->
34

    
35
	<!-- field rewrite rules -->
36
	<bean id="collectionRule" class="eu.dnetlib.data.search.app.plan.CollectionRewriteRule">
37
		<property name="name" value="collection expand rule" />
38
		<property name="fieldName" value="collection" />
39
		<property name="collectionLookUp" ref="collectionLookUp" />
40
	</bean>
41

    
42
	<util:list id="fieldQueryRules" value-type="java.lang.String">
43
		<value>deletedbyinference=false</value>
44
	</util:list>
45

    
46

    
47
    <bean id="blackboardHandler" class="eu.dnetlib.enabling.tools.blackboard.BlackboardHandlerImpl">
48
		<property name="serviceLocator" ref="cnr.uniqueServiceLocator" />
49
        <property name="messageFactory">
50
            <bean class="eu.dnetlib.miscutils.jaxb.JaxbFactory">
51
                <constructor-arg value="eu.dnetlib.enabling.tools.blackboard.BlackboardMessageImpl" />
52
            </bean>
53
        </property>
54
    </bean>
55
	<bean id="searchServiceBlackboardHandler" class="eu.dnetlib.data.search.app.SearchServiceBlackboardHandler" lazy-init="true">
56
		<property name="searchService" ref="searchService" />
57
		<property name="lookUpServiceServiceLocator" ref="lookupServiceLocator" />
58
		<property name="blackboardHandler" ref="blackboardHandler" />
59
		<property name="registryServiceServiceLocator" ref="registryServiceLocator"/>
60
	</bean>
61

    
62
	<!--  the service bean -->
63
	<bean id="searchService"
64
		  class="eu.dnetlib.data.search.app.SearchServiceImpl"
65
		  autowire="no">
66
		<property name="snManager" ref="snManager" />
67
		<property name="serviceIdentity">
68
			<bean class="eu.dnetlib.utils.ServiceIdentityFactory"
69
				  factory-method="createIdentity" >
70
				<constructor-arg value="${services.search.serviceName}" />
71
			</bean>
72
		</property>
73
		<property name="mdFormat" value="${services.search.mdFormat}" />
74
		<property name="indexLayout" value="${services.search.indexLayout}" />
75
		<property name="indexLocator" ref="search.indexServiceLocator" />
76
		<property name="lookUpServiceServiceLocator" ref="lookupServiceLocator" />
77
		<property name="rsFactory" ref="search.resultSetFactory" />
78
		<property name="transformerFactory" ref="transformerFactory"/>
79
		<property name="blackboardNotificationHandler" ref="searchServiceBlackboardHandler" />
80
		<!--
81
		<property name="queryRules">
82
			<list>
83
					<ref bean="prefixRule"/>
84
			</list>
85
		</property>
86
		-->
87
		<property name="fieldRules">
88
			<list>
89
				<ref bean="collectionRule" />
90
			</list>
91
		</property>
92
		<property name="fieldQueryRules" ref="fieldQueryRules"/>
93
	</bean>
94

    
95
	<!-- The web service bean -->
96
	<bean id="searchWebServiceImpl"
97
		  class="eu.dnetlib.clients.data.search.ws.SearchWebServiceImpl">
98
		<property name="service" ref="searchService" />
99
	</bean>
100

    
101
	<!-- Service endpoint -->
102
	<jaxws:endpoint
103
			id="searchWebService"
104
			implementor="#searchWebServiceImpl"
105
			implementorClass="eu.dnetlib.clients.data.search.ws.SearchWebService"
106
			address="/searchWebService"/>
107

    
108
	<template:instance name="nkua.serviceRegistrationManager"
109
					   t:name="searchServiceRegistrationManager"
110
					   t:service="searchService"
111
					   t:endpoint="searchWebService"
112
					   t:serviceRegistrator="searchServiceRegistrator"/>
113

    
114
	<bean id="searchServiceRegistrator" parent="serviceRegistrator">
115
		<property name="serviceProperties">
116
			<map>
117
				<entry key="infrastructure" value="${services.search.infrastructure}" />
118
				<entry key="mdformat" value="${services.search.mdFormat}" />
119
			</map>
120
		</property>
121
	</bean>
122

    
123
	<bean id="searchServiceLocator"
124
		  class="gr.uoa.di.driver.util.StaticServiceLocator">
125
		<property name="service" ref="searchService" />
126
	</bean>
127

    
128
	<bean id="maxResults" class="java.lang.String">
129
		<constructor-arg value="${services.search.maxResults}"/>
130
	</bean>
131

    
132
	<bean id="maxSize" class="java.lang.String">
133
		<constructor-arg value="${services.search.maxSize}"/>
134
	</bean>
135

    
136
</beans>
(2-2/4)