<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
<!ENTITY version SYSTEM "version.xml">
]>
<refentry id="cutter-Convenience-HTTP-server-API">
<refmeta>
<refentrytitle role="top_of_page" id="cutter-Convenience-HTTP-server-API.top_of_page">便利なHTTPサーバーAPI</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>Cutterライブラリ</refmiscinfo>
</refmeta>
<refnamediv>
<refname>便利なHTTPサーバーAPI</refname>
<refpurpose>HTTPサーバーとして動作するためのAPI。</refpurpose>
</refnamediv>

<refsynopsisdiv id="cutter-Convenience-HTTP-server-API.synopsis" role="synopsis">
<title role="synopsis.title">概要</title>

<synopsis><link linkend="SoupServer"><returnvalue>SoupServer</returnvalue></link> *        <link linkend="soupcut-server-take">soupcut_server_take</link>                 (<parameter><link linkend="SoupServer"><type>SoupServer</type></link> *server</parameter>);
<link linkend="SoupServer"><returnvalue>SoupServer</returnvalue></link> *        <link linkend="soupcut-server-take-new">soupcut_server_take_new</link>             (<parameter><link linkend="GMainContext"><type>GMainContext</type></link> *context</parameter>);
const <link linkend="gchar"><returnvalue>gchar</returnvalue></link> *       <link linkend="soupcut-server-build-uri">soupcut_server_build_uri</link>            (<parameter><link linkend="SoupServer"><type>SoupServer</type></link> *server</parameter>,
                                                         <parameter>const <link linkend="gchar"><type>gchar</type></link> *path</parameter>);
</synopsis>
</refsynopsisdiv>

<refsect1 id="cutter-Convenience-HTTP-server-API.description" role="desc">
<title role="desc.title">説明</title>
<para><link linkend="SoupServer"><type>SoupServer</type></link>の便利なラッパー。</para>
</refsect1>
<refsect1 id="cutter-Convenience-HTTP-server-API.details" role="details">
<title role="details.title">詳細</title>
<refsect2 id="soupcut-server-take" role="function" condition="since:1.0.8">
<title>soupcut_server_take ()</title>
<indexterm zone="soupcut-server-take" role="1.0.8"><primary>soupcut_server_take</primary></indexterm>
<programlisting><link linkend="SoupServer"><returnvalue>SoupServer</returnvalue></link> *        soupcut_server_take                 (<parameter><link linkend="SoupServer"><type>SoupServer</type></link> *server</parameter>);</programlisting>
<para>サーバーは tear down 時に自動的にシャットダウンされ、<link linkend="g-object-unref"><function>g_object_unref()</function></link>により解放されます。</para><variablelist role="params">
<varlistentry><term><parameter>server</parameter> :</term>
<listitem><simpara><link linkend="SoupServer"><type>SoupServer</type></link>オブジェクト。</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>戻り値</emphasis> :</term><listitem><simpara><parameter>server</parameter>はCutterが所有権を持つので、<link linkend="g-object-unref"><function>g_object_unref()</function></link>を呼ばないでください。</simpara></listitem></varlistentry>
</variablelist><para role="since">1.0.8から</para></refsect2>
<refsect2 id="soupcut-server-take-new" role="function" condition="since:1.0.8">
<title>soupcut_server_take_new ()</title>
<indexterm zone="soupcut-server-take-new" role="1.0.8"><primary>soupcut_server_take_new</primary></indexterm>
<programlisting><link linkend="SoupServer"><returnvalue>SoupServer</returnvalue></link> *        soupcut_server_take_new             (<parameter><link linkend="GMainContext"><type>GMainContext</type></link> *context</parameter>);</programlisting>
<para>コンテキストが<parameter>context</parameter>である<link linkend="SoupServer"><type>SoupServer</type></link>オブジェクトを生成して返します。サーバーはtear down 時に自動的にシャットダウンされ、</para><variablelist role="params">
<varlistentry><term><parameter>context</parameter> :</term>
<listitem><simpara>サーバーの<link linkend="GMainContext"><type>GMainContext</type></link>コンテキスト。</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>戻り値</emphasis> :</term><listitem><simpara>新たに<link linkend="SoupServer"><type>SoupServer</type></link>オブジェクトを生成します。作成されたサーバーはCutterが所有権を持つので、<link linkend="g-object-unref"><function>g_object_unref()</function></link>を呼ばないでください。</simpara></listitem></varlistentry>
</variablelist><para role="since">1.0.8から</para></refsect2>
<refsect2 id="soupcut-server-build-uri" role="function" condition="since:1.0.8">
<title>soupcut_server_build_uri ()</title>
<indexterm zone="soupcut-server-build-uri" role="1.0.8"><primary>soupcut_server_build_uri</primary></indexterm>
<programlisting>const <link linkend="gchar"><returnvalue>gchar</returnvalue></link> *       soupcut_server_build_uri            (<parameter><link linkend="SoupServer"><type>SoupServer</type></link> *server</parameter>,
                                                         <parameter>const <link linkend="gchar"><type>gchar</type></link> *path</parameter>);</programlisting>
<para>@server のベースURIにパスとして @path を組み合わせたURIの文字列を作成します。</para><variablelist role="params">
<varlistentry><term><parameter>server</parameter> :</term>
<listitem><simpara><link linkend="SoupServer"><type>SoupServer</type></link>オブジェクト。</simpara></listitem></varlistentry>
<varlistentry><term><parameter>path</parameter> :</term>
<listitem><simpara>パス。</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>戻り値</emphasis> :</term><listitem><simpara>Cutterが所有するURI文字列。解放しないで下さい。</simpara></listitem></varlistentry>
</variablelist><para role="since">1.0.8から</para></refsect2>

</refsect1>
<refsect1 id="cutter-Convenience-HTTP-server-API.see-also">
<title>参考</title>
<link linkend="cutter-Assertions-for-HTTP-client-and-server">HTTPクライアント・サーバ用の検証</link>
</refsect1>

</refentry>
