X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2FDEVEL%2Focaml-http%2Fhttp_types.ml;fp=helm%2FDEVEL%2Focaml-http%2Fhttp_types.ml;h=0000000000000000000000000000000000000000;hb=d43522a6d38fcb9081a3f0352088377bc0555231;hp=5c88b212ed010990015a936355824685f6d737d8;hpb=9a9c95ebabbb1d4d7dce627ed1baea130ea98766;p=helm.git diff --git a/helm/DEVEL/ocaml-http/http_types.ml b/helm/DEVEL/ocaml-http/http_types.ml deleted file mode 100644 index 5c88b212e..000000000 --- a/helm/DEVEL/ocaml-http/http_types.ml +++ /dev/null @@ -1,219 +0,0 @@ - -(* - OCaml HTTP - do it yourself (fully OCaml) HTTP daemon - - 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 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 Library General Public License for more details. - - 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 -*) - -(** Type definitions *) - -type version = [ `HTTP_1_0 | `HTTP_1_1 ] -type meth = [ `GET | `POST ] -type daemon_mode = [ `Single | `Fork | `Thread ] - -type tcp_server = - sockaddr:Unix.sockaddr -> timeout:int option -> - (in_channel -> out_channel -> unit) -> - unit - -type auth_info = - [ `Basic of string * string (* username, password *) - ] - -type informational_substatus = - [ `Continue - | `Switching_protocols - ] -type success_substatus = - [ `OK - | `Created - | `Accepted - | `Non_authoritative_information - | `No_content - | `Reset_content - | `Partial_content - ] -type redirection_substatus = - [ `Multiple_choices - | `Moved_permanently - | `Found - | `See_other - | `Not_modified - | `Use_proxy - | `Temporary_redirect - ] -type client_error_substatus = - [ `Bad_request - | `Unauthorized - | `Payment_required - | `Forbidden - | `Not_found - | `Method_not_allowed - | `Not_acceptable - | `Proxy_authentication_required - | `Request_time_out - | `Conflict - | `Gone - | `Length_required - | `Precondition_failed - | `Request_entity_too_large - | `Request_URI_too_large - | `Unsupported_media_type - | `Requested_range_not_satisfiable - | `Expectation_failed - ] -type server_error_substatus = - [ `Internal_server_error - | `Not_implemented - | `Bad_gateway - | `Service_unavailable - | `Gateway_time_out - | `HTTP_version_not_supported - ] -type informational_status = [ `Informational of informational_substatus ] -type success_status = [ `Success of success_substatus ] -type redirection_status = [ `Redirection of redirection_substatus ] -type client_error_status = [ `Client_error of client_error_substatus ] -type server_error_status = [ `Server_error of server_error_substatus ] -type error_status = - [ client_error_status - | server_error_status - ] -type status = - [ informational_status - | success_status - | redirection_status - | client_error_status - | server_error_status - ] - -type status_code = [ `Code of int | `Status of status ] - -type file_source = - | FileSrc of string - | InChanSrc of in_channel - -exception Invalid_header of string -exception Invalid_header_name of string -exception Invalid_header_value of string -exception Invalid_HTTP_version of string -exception Invalid_HTTP_method of string -exception Invalid_code of int -exception Malformed_URL of string -exception Malformed_query of string -exception Malformed_query_part of string * string -exception Malformed_request_URI of string -exception Malformed_request of string -exception Malformed_response of string -exception Param_not_found of string -exception Invalid_status_line of string -exception Header_not_found of string -exception Quit -exception Unauthorized of string - -class type message = object - method version: version option - method setVersion: version -> unit - method body: string - method setBody: string -> unit - method bodyBuf: Buffer.t - method setBodyBuf: Buffer.t -> unit - method addBody: string -> unit - method addBodyBuf: Buffer.t -> unit - method addHeader: name:string -> value:string -> unit - method addHeaders: (string * string) list -> unit - method replaceHeader: name:string -> value:string -> unit - method replaceHeaders: (string * string) list -> unit - method removeHeader: name:string -> unit - method hasHeader: name:string -> bool - method header: name:string -> string - method headers: (string * string) list - method clientSockaddr: Unix.sockaddr - method clientAddr: string - method clientPort: int - method serverSockaddr: Unix.sockaddr - method serverAddr: string - method serverPort: int - method toString: string - method serialize: out_channel -> unit - end - -class type request = object - inherit message - method meth: meth - method uri: string - method path: string - method param: ?meth:meth -> ?default:string -> string -> string - method paramAll: ?meth:meth -> string -> string list - method params: (string * string) list - method params_GET: (string * string) list - method params_POST: (string * string) list - method authorization: auth_info option - end - -class type response = object - inherit message - method code: int - method setCode: int -> unit - method status: status - method setStatus: status -> unit - method reason: string - method setReason: string -> unit - method statusLine: string - method setStatusLine: string -> unit - method isInformational: bool - method isSuccess: bool - method isRedirection: bool - method isClientError: bool - method isServerError: bool - method isError: bool - method addBasicHeaders: unit - method contentType: string - method setContentType: string -> unit - method contentEncoding: string - method setContentEncoding: string -> unit - method date: string - method setDate: string -> unit - method expires: string - method setExpires: string -> unit - method server: string - method setServer: string -> unit - end - -class type connection = - object - method getRequest: request option - method respond_with: response -> unit - method close: unit - end -class type daemon = - object - method accept: connection - method getRequest: request * connection - end - -type daemon_spec = { - address: string; - auth: (string * auth_info) option; - callback: request -> out_channel -> unit; - mode: daemon_mode; - port: int; - root_dir: string option; - exn_handler: (exn -> out_channel -> unit) option; - timeout: int option; -} -