X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Focaml%2Fgetter%2Fhttp_getter.ml;h=4094a7376268eb6a31036a874643e258cbad4e9a;hb=5158d99efec8b0ace3dfb694faa9112c664d4813;hp=58c94ac957c8dc2ccce93d7546f7bed42ea53ff8;hpb=b6c8b96f5db84019503c805f7e1d6d5e9aff138e;p=helm.git diff --git a/helm/ocaml/getter/http_getter.ml b/helm/ocaml/getter/http_getter.ml index 58c94ac95..4094a7376 100644 --- a/helm/ocaml/getter/http_getter.ml +++ b/helm/ocaml/getter/http_getter.ml @@ -42,17 +42,18 @@ type resolve_result = type logger_callback = HelmLogger.html_tag -> unit -let stdout_logger tag = print_string (HelmLogger.string_of_html_tag tag) +let stdout_logger tag = print_string (HelmLogger.string_of_html_tag tag) let not_implemented s = raise (Not_implemented ("Http_getter." ^ s)) -let (index_line_sep_RE, index_sep_RE, trailing_types_RE, - heading_cic_RE, heading_theory_RE, heading_nuprl_RE, - heading_rdf_cic_RE, heading_rdf_theory_RE) = - (Pcre.regexp "[ \t]+", Pcre.regexp "\r\n|\r|\n", - Pcre.regexp "\\.types$", - Pcre.regexp "^cic:", Pcre.regexp "^theory:", Pcre.regexp "^nuprl:", - Pcre.regexp "^helm:rdf.*//cic:", Pcre.regexp "^helm:rdf.*//theory:") +let index_line_sep_RE = Pcre.regexp "[ \t]+" +let index_sep_RE = Pcre.regexp "\r\n|\r|\n" +let trailing_types_RE = Pcre.regexp "\\.types$" +let heading_cic_RE = Pcre.regexp "^cic:" +let heading_theory_RE = Pcre.regexp "^theory:" +let heading_nuprl_RE = Pcre.regexp "^nuprl:" +let heading_rdf_cic_RE = Pcre.regexp "^helm:rdf.*//cic:" +let heading_rdf_theory_RE = Pcre.regexp "^helm:rdf.*//theory:" (* global maps, shared by all threads *) @@ -258,7 +259,9 @@ let ls_remote lsuri = not_implemented "ls_remote" let resolve_remote uri = (* deliver resolve request to http_getter *) - let doc = ClientHTTP.get (sprintf "%sresolve?uri=%s" (getter_url ()) uri) in + let doc = + Http_getter_wget.get (sprintf "%sresolve?uri=%s" (getter_url ()) uri) + in let res = ref Unknown in let start_element tag attrs = match tag with @@ -276,19 +279,21 @@ let resolve_remote uri = } in let xml_parser = XmlPushParser.create_parser callbacks in XmlPushParser.parse xml_parser (`String doc); + XmlPushParser.final xml_parser; match !res with | Unknown -> raise UnexpectedGetterOutput | Exception e -> raise e | Resolved url -> url let register_remote ~uri ~url = - ClientHTTP.send (sprintf "%sregister?uri=%s&url=%s" (getter_url ()) uri url) + Http_getter_wget.send + (sprintf "%sregister?uri=%s&url=%s" (getter_url ()) uri url) let unregister_remote uri = - ClientHTTP.send (sprintf "%sunregister?uri=%s" (getter_url ()) uri) + Http_getter_wget.send (sprintf "%sunregister?uri=%s" (getter_url ()) uri) let update_remote logger () = - let answer = ClientHTTP.get (getter_url () ^ "update") in + let answer = Http_getter_wget.get (getter_url () ^ "update") in logger (`T answer); logger `BR @@ -299,7 +304,7 @@ let getxml_remote ~format ~patch_dtd uri = (match format with `Normal -> "normal" | `Gzipped -> "gz") (match patch_dtd with true -> "yes" | false -> "no") in - ClientHTTP.get_and_save_to_tmp uri + Http_getter_wget.get_and_save_to_tmp uri (* API *) @@ -650,12 +655,14 @@ let sync_dump_file () = let init () = Http_getter_logger.set_log_level - (Helm_registry.get_opt_default Helm_registry.get_int 1 "getter.log_level"); + (Helm_registry.get_opt_default Helm_registry.int ~default:1 + "getter.log_level"); Http_getter_logger.set_log_file - (Helm_registry.get_opt Helm_registry.get_string "getter.log_file"); + (Helm_registry.get_opt Helm_registry.string "getter.log_file"); Http_getter_env.reload (); let is_prefetch_set = - Helm_registry.get_opt_default Helm_registry.get_bool false "getter.prefetch" + Helm_registry.get_opt_default Helm_registry.bool ~default:false + "getter.prefetch" in if is_prefetch_set then (* ignore (Thread.create sync_with_map ()) *)