Use bounce filter in proper route location.
[metaproxy-moved-to-github.git] / etc / config-sru-to-z3950.xml
1 <?xml version="1.0"?>
2 <!-- $Id: config-sru-to-z3950.xml,v 1.18 2007-01-25 13:57:40 adam Exp $ -->
3 <metaproxy 
4     xmlns="http://indexdata.com/metaproxy" 
5     version="1.0">
6   <start route="start"/>
7   <filters>
8     <filter id="frontend" type="frontend_net">
9       <threads>10</threads>
10       <port>@:9000</port>
11     </filter>
12     <filter id="sru" type="sru_z3950">
13       <database name="Default">
14        <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
15                     href="../etc/explain.xml"/>
16       </database>
17       <database name="test">
18        <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
19                     href="../etc/explain.xml"/>
20       </database>
21     </filter>
22     <filter id="cql" type="cql_rpn">
23       <conversion file="../etc/cql2pqf.txt"/>
24     </filter>
25     <filter id="retrieve" type="record_transform">
26       <retrievalinfo  xmlns="http://indexdata.com/yaz" version="1.0">
27         <retrieval syntax="xml" name="dc"
28                    identifier="info:srw/schema/1/dc-v1.1">
29           <backend syntax="usmarc" name="F">
30             <marc inputformat="marc" outputformat="marcxml"
31                   inputcharset="marc-8"/>
32             <xslt stylesheet="../xml/xslt/MARC21slim2DC.xsl"/>
33           </backend>
34         </retrieval>
35         <retrieval syntax="usmarc">
36           <backend syntax="usmarc" name="F">
37           </backend>
38         </retrieval>
39       </retrievalinfo>
40     </filter>
41   </filters>
42   <routes>  
43     <!-- Z39.50 clients -->
44     <route id="remote">
45       <filter type="log">
46         <message>remote</message>
47       </filter>
48       <filter type="z3950_client">
49         <timeout>30</timeout>
50       </filter>
51     </route>
52     
53     <!-- shared Z39.50 clients -->
54     <route id="shared">
55       <filter type="log">
56         <message>shared</message>
57       </filter>
58       <filter type="session_shared"/>
59       <filter type="z3950_client">
60         <timeout>30</timeout>
61       </filter>
62     </route>
63     
64     <!-- local built-in server -->
65     <route id="local">
66       <filter type="backend_test"/>
67       <filter type="bounce"/>
68     </route>
69
70     <route id="start">
71       <filter refid="frontend"/>
72       <filter type="log">
73         <message>HTTP</message>
74         <category apdu="true"/>
75       </filter>
76       <filter refid="sru"/>
77       <filter refid="cql"/>
78       <filter refid="retrieve"/>
79       <filter type="log">
80         <message>Z3950</message>
81       </filter>
82       <filter type="virt_db">
83         <virtual route="shared">
84           <database>Default</database>
85           <target>localhost:9999/Default</target>
86         </virtual>
87         <virtual route="local">
88           <database>test</database>
89           <target>someid</target>
90         </virtual>
91       </filter>
92       <filter type="bounce"/>
93     </route>
94   </routes>
95 </metaproxy>
96