X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2FDEVEL%2Focaml-http%2Fhttp_common.mli;h=6029a7031cfd15e701df68846512a514779ed41b;hb=4167cea65ca58897d1a3dbb81ff95de5074700cc;hp=172e66e5ad5d2bd68e73a79efcd1e415ca404840;hpb=6a8da4dd52033adfe80533f7467439aec1561147;p=helm.git diff --git a/helm/DEVEL/ocaml-http/http_common.mli b/helm/DEVEL/ocaml-http/http_common.mli index 172e66e5a..6029a7031 100644 --- a/helm/DEVEL/ocaml-http/http_common.mli +++ b/helm/DEVEL/ocaml-http/http_common.mli @@ -2,42 +2,79 @@ (* OCaml HTTP - do it yourself (fully OCaml) HTTP daemon - Copyright (C) <2002> Stefano Zacchiroli + Copyright (C) <2002-2005> Stefano Zacchiroli This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. + it under the terms of the GNU Library General Public License as + published by the Free Software Foundation, version 2. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. + GNU Library General Public License for more details. - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + You should have received a copy of the GNU Library General Public + License along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + USA *) -exception Invalid_HTTP_version of string -exception Invalid_code of int -exception Invalid_status of Http_types.status +(** Common functionalities shared by other OCaml HTTP modules *) -val http_version: Http_types.version +open Http_types;; -val string_of_version: Http_types.version -> string -val version_of_string: string -> Http_types.version + (** whether debugging messages are enabled or not, can be changed at runtime + *) +val debug: bool ref -val status_of_code: int -> Http_types.status -val code_of_status: [< Http_types.status] -> int + (** print a string on stderr only if debugging is enabled *) +val debug_print: string -> unit -val reason_phrase_of_code: int -> string -val reason_phrase_of_status: [< Http_types.status] -> string + (** see {!Http_constants.version} *) +val http_version: version + (** see {!Http_constants.server_string} *) +val server_string: string + + (** pretty print an HTTP version *) +val string_of_version: version -> string + + (** parse an HTTP version from a string + @raise Invalid_HTTP_version if given string doesn't represent a supported HTTP + version *) +val version_of_string: string -> version + + (** pretty print an HTTP method *) +val string_of_method: meth -> string + + (** parse an HTTP method from a string + @raise Invalid_HTTP_method if given string doesn't represent a supported + method *) +val method_of_string: string -> meth + + (** converts an integer HTTP status to the corresponding status value + @raise Invalid_code if given integer isn't a valid HTTP status code *) +val status_of_code: int -> status + + (** converts an HTTP status to the corresponding integer value *) +val code_of_status: [< status] -> int + + (** @return true on "informational" status codes, false elsewhere *) val is_informational: int -> bool + + (** @return true on "success" status codes, false elsewhere *) val is_success: int -> bool + + (** @return true on "redirection" status codes, false elsewhere *) val is_redirection: int -> bool + + (** @return true on "client error" status codes, false elsewhere *) val is_client_error: int -> bool + + (** @return true on "server error" status codes, false elsewhere *) val is_server_error: int -> bool + + (** @return true on "client error" and "server error" status code, false + elsewhere *) val is_error: int -> bool