-<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN"
- "http://www.oasis-open.org/docbook/xml/4.1/docbookx.dtd" [
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.4//EN"
+ "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
<!ENTITY copyright SYSTEM "copyright.xml">
+ <!ENTITY % local SYSTEM "local.ent">
+ %local;
<!ENTITY % idcommon SYSTEM "common/common.ent">
%idcommon;
]>
<refentry id="ref-metaproxy">
+ <refentryinfo>
+ <productname>Metaproxy</productname>
+ <productnumber>&version;</productnumber>
+ <info><orgname>Index Data</orgname></info>
+ </refentryinfo>
+
<refmeta>
<refentrytitle>metaproxy</refentrytitle>
<manvolnum>1</manvolnum>
+ <refmiscinfo class="manual">Commands</refmiscinfo>
</refmeta>
<refnamediv>
<arg choice="opt"><option>-D</option></arg>
<arg choice="opt"><option>-l <replaceable>logfile</replaceable></option></arg>
<arg choice="opt"><option>-p <replaceable>pidfile</replaceable></option></arg>
+ <arg choice="opt"><option>-t</option></arg>
<arg choice="opt"><option>-u <replaceable>ID</replaceable></option></arg>
<arg choice="opt"><option>-w <replaceable>dir</replaceable></option></arg>
<arg choice="opt"><option>-X</option></arg>
</varlistentry>
<varlistentry>
+ <term>-t</term>
+ <listitem><para>
+ Tests configuration. Returns exit code 0 on success; non-zero on failure.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
<term>-u <replaceable>ID</replaceable></term>
<listitem><para>
Makes Metaproxy changes its identity to ID after startup.
</variablelist>
</refsect1>
+ <refsect1><title>CONFIGURATION</title>
+ <para>Metaproxy's configuration is XML based. All elements
+ should be in namespace <literal>http://indexdata.com/metaproxy</literal>.
+ </para>
+ <para>
+ The root element must be named <literal>metaproxy</literal> and
+ must specify a version. Currently the version must be
+ <literal>1.0</literal>. The children elements of metaproxy
+ are:
+ <variablelist>
+ <varlistentry>
+ <term>dlpath</term>
+ <listitem>
+ <para>
+ Specifies the path for Loadable filter modules
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>start</term>
+ <listitem>
+ <para>
+ Specifies the start route. Takes a <literal>route</literal>
+ attribute with the name of the route.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>filters</term>
+ <listitem>
+ <para>
+ Specifies all filters. Includes one ore more
+ <literal>filter</literal> elements with filter-specific
+ configuration material.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>routes</term>
+ <listitem>
+ <para>
+ Specifies all routes. Includes one or more
+ <literal>route</literal> elements. Each <literal>route</literal>
+ in turn includes one or more filter specifications.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </para>
+ <para>
+ The configuration is described in more detail in the
+ <ulink url="&url.metaproxy.doc;">Metaproxy manual</ulink>.
+ </para>
+ </refsect1>
<refsect1><title>EXAMPLES</title>
- <para>
- Start server with configuration in <filename>my.xml</filename>.
- <screen>
- metaproxy --config my.xml
+ <para>
+ The configuration below specifies a simple Z39.50 proxy and
+ illustrates most configuration elements of Metaproxy.
+ </para>
+ <screen><![CDATA[
+<?xml version="1.0"?>
+<metaproxy xmlns="http://indexdata.com/metaproxy" version="1.0">
+ <dlpath>/usr/local/metaproxy/filters</dlpath>
+ <start route="start"/>
+ <filters>
+ <filter id="frontend" type="frontend_net">
+ <threads>10</threads>
+ <port>@:9000</port>
+ </filter>
+ <filter id="backend" type="z3950_client">
+ <timeout>30</timeout>
+ <default_target>z3950.indexdata.dk</default_target>
+ </filter>
+ </filters>
+ <routes>
+ <route id="start">
+ <filter refid="frontend"/>
+ <filter type="log">
+ <message>log</message>
+ </filter>
+ <filter refid="backend"/>
+ <filter type="bounce"/>
+ </route>
+ </routes>
+</metaproxy>
+]]>
</screen>
- </para>
+ <para>
+ Start server with configuration in <filename>my.xml</filename>.
+ <screen>
+ metaproxy --config my.xml
+ </screen>
+ </para>
</refsect1>
+ <refsect1><title>SCHEMA</title>
+ <literallayout><xi:include
+ xi:href="../xml/schema/metaproxy.rnc"
+ xi:parse="text"
+ xmlns:xi="http://www.w3.org/2001/XInclude" />
+ </literallayout>
+ </refsect1>
+
<refsect1><title>FILES</title>
<para>
None important.
</para>
<para>
The Metaproxy
- <ulink url="http://www.indexdata.com/metaproxy/doc/">manual</ulink>.
+ <ulink url="&url.metaproxy.doc;">manual</ulink>.
</para>
</refsect1>