]> matita.cs.unibo.it Git - helm.git/blob - helm/ocaml/getter/http_getter_common.mli
b4f733d8f23a95779ff94f9922762b9b2c166c40
[helm.git] / helm / ocaml / getter / http_getter_common.mli
1 (*
2  * Copyright (C) 2003-2004:
3  *    Stefano Zacchiroli <zack@cs.unibo.it>
4  *    for the HELM Team http://helm.cs.unibo.it/
5  *
6  *  This file is part of HELM, an Hypertextual, Electronic
7  *  Library of Mathematics, developed at the Computer Science
8  *  Department, University of Bologna, Italy.
9  *
10  *  HELM is free software; you can redistribute it and/or
11  *  modify it under the terms of the GNU General Public License
12  *  as published by the Free Software Foundation; either version 2
13  *  of the License, or (at your option) any later version.
14  *
15  *  HELM is distributed in the hope that it will be useful,
16  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
17  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  *  GNU General Public License for more details.
19  *
20  *  You should have received a copy of the GNU General Public License
21  *  along with HELM; if not, write to the Free Software
22  *  Foundation, Inc., 59 Temple Place - Suite 330, Boston,
23  *  MA  02111-1307, USA.
24  *
25  *  For details, see the HELM World-Wide-Web page,
26  *  http://helm.cs.unibo.it/
27  *)
28
29 open Http_getter_types;;
30
31 val string_of_ls_flag: ls_flag -> string
32 val string_of_encoding: encoding -> string
33
34 val is_cic_uri: string -> bool
35 val is_nuprl_uri: string -> bool
36 val is_rdf_uri: string -> bool
37 val is_xsl_uri: string -> bool
38
39 val uri_of_string: string -> uri
40
41 val patch_xml : ?via_http:bool -> unit -> string -> string
42 val patch_dtd : ?via_http:bool -> unit -> string -> string
43   (* TODO via_http not yet supported for patch_xsl *)
44 val patch_xsl : ?via_http:bool -> unit -> string -> string
45
46   (**
47   @param fname name of the file to be sent
48   @param contype Content-Type header value
49   @param contenc Content-Enconding header value
50   @param patch_fun function used to patch file contents
51   @param gunzip is meaningful only if a patch function is provided. If gunzip
52   is true patch_fun is applied to the uncompressed version of the file. The file
53   is then compressed again and send to client
54   @param via_http (default: true) if true http specific communications are used
55   (e.g. headers, crlf before body) and sent via outchan, otherwise they're not.
56   Set it to false when saving to a local file
57   @param outchan output channel over which sent file fname *)
58 val return_file:
59   fname:string ->
60   ?contype:string -> ?contenc:string ->
61   ?patch_fun:(string -> string) -> ?gunzip:bool -> ?via_http:bool ->
62   out_channel ->
63     unit
64