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=af76440cf665cb3d331a54bf4a080a97894278b7;hpb=58ba2d4922238d2917fddc097aa44d28de93807a;p=helm.git diff --git a/helm/DEVEL/ocaml-http/http_common.mli b/helm/DEVEL/ocaml-http/http_common.mli index af76440cf..6029a7031 100644 --- a/helm/DEVEL/ocaml-http/http_common.mli +++ b/helm/DEVEL/ocaml-http/http_common.mli @@ -2,44 +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 *) -(** Common functionalities *) +(** Common functionalities shared by other OCaml HTTP modules *) + +open Http_types;; (** whether debugging messages are enabled or not, can be changed at runtime *) val debug: bool ref + (** print a string on stderr only if debugging is enabled *) val debug_print: string -> unit -val http_version: Http_types.version + (** see {!Http_constants.version} *) +val http_version: version + + (** see {!Http_constants.server_string} *) val server_string: string -val string_of_version: Http_types.version -> string -val version_of_string: string -> Http_types.version + (** 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 -val status_of_code: int -> Http_types.status -val code_of_status: [< Http_types.status] -> int + (** 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