]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/http_getter/http_getter.pl.in
mk_dep_graph reimplemented using the forward-pointers metadata.
[helm.git] / helm / http_getter / http_getter.pl.in
index 9c71fce076a1e4cd6e69f95f2713e269c1fd5d3d..fd88194bf417b1860a675cd7c094cd5405cd1cae 100755 (executable)
@@ -43,23 +43,23 @@ if (defined ($HELM_LIB_DIR)) {
    $HELM_LIB_PATH = $DEFAULT_HELM_LIB_DIR."/configuration.pl";
 }
 
-# <ZACK>: TODO temporary, move this setting to configuration file
-# set the cache mode, may be "gzipped" or "normal"
-my $cachemode = $ENV{'HTTP_GETTER_CACHE_MODE'} || 'gzipped';
-if (($cachemode ne 'gzipped') and ($cachemode ne 'normal')) {
- die "Invalid HTTP_GETTER_CACHE_MODE environment variable, must be".
- "'normal' or 'gzipped'\n";
-}
-# </ZACK>
-
 # next require defines: $helm_dir, $html_link, $dtd_dir, $uris_dbm, $indexname
 require $HELM_LIB_PATH;
 
 # TEMP: TODO put these vars in configuration file configuration.xml
 # <move_to_conf_file>
-$helm_rdf_dir = "/usr/local/helm/rdf_library";
-$rdf_dbm = "/usr/local/helm/rdf_urls_of_uris";
-$rdf_indexname = "rdf_index.txt";
+my $cachemode = $ENV{'HTTP_GETTER_CACHE_MODE'} ||
+    'gzipped';
+if (($cachemode ne 'gzipped') and ($cachemode ne 'normal')) {
+ die "Invalid HTTP_GETTER_CACHE_MODE environment variable, must be".
+ "'normal' or 'gzipped'\n";
+}
+my $helm_rdf_dir = $ENV{'HTTP_GETTER_RDF_DIR'} ||
+    "/usr/local/helm/rdf_library";
+my $rdf_dbm = $ENV{'HTTP_GETTER_RDF_DBM'} ||
+    "/usr/local/helm/rdf_urls_of_uris";
+my $rdf_indexname = $ENV{'HTTP_GETTER_RDF_INDEXNAME'} ||
+    "rdf_index.txt";
 # </move_to_conf_file>
 
 # Let's override the configuration file
@@ -144,12 +144,20 @@ while (my $c = $d->accept) {
             }
 
             my $filename = $inputuri;
+            my $prefix;
             if (not isRdfUri($inputuri)) { # standad cic: or theory: uri
              $filename =~ s/^cic:(.*)/$1/;
              $filename =~ s/^theory:(.*)/$1/;
             } else { # rdf uri
+             # The "helm:rdf/<<...>>//cic:" prefix is kept, but quoted
+             # (so that a "helm:rdf/<<...>>//cic:" dir is created
+             $prefix = $filename;
              $filename =~ s/^(.*)\/\/cic:(.*)/$2/;
              $filename =~ s/^(.*)\/\/theory:(.*)/$2/;
+             $prefix =~ s/\Q$filename\E//;
+             $prefix =~ s/_/__/g;
+             $prefix =~ s/\//_/g;
+             $filename = $prefix.$filename;
             }
 
             my $url = resolve ($inputuri); # resolve uri in url
@@ -170,7 +178,7 @@ while (my $c = $d->accept) {
               if (not isRdfUri ($inputuri)) { # save in uri std cache dir
                $filename = $helm_dir.$filename.$extension;
               } else { # save in rdf metadata cache dir
-               $filename = $helm_rdf_dir.$filename.$extension;
+               $filename = $helm_rdf_dir."/".$filename.$extension;
               }
 
               print_request($inputuri,$url,$filename);
@@ -595,7 +603,7 @@ sub download {
  my ($gz, $buffer);
 
 # print "DOWNLOAD subs receives url: \"$url\"\n";
-$ print "DOWNLOAD subs receives filename: \"$filename\"\n";
+# print "DOWNLOAD subs receives filename: \"$filename\"\n";
 
  my $resourcetype;     # retrieve mode: "normal" (.xml) or "gzipped" (.xml.gz)
  if ($filename =~ /\.xml$/) {  # set retrieve mode
@@ -734,6 +742,7 @@ sub helm_wget {
 }
 
 sub update {
+# retie dbs
  untie %map;
  tie(%map, 'DB_File', $uris_dbm.".db", O_RDWR, 0664);
  untie %rdf_map;
@@ -819,3 +828,6 @@ sub update_dbs {
  tie(%rdf_map, 'DB_File', $rdf_dbm.".db", O_RDWR, 0664);
 } # update_dbs
 
+# vim modline: do not remove!
+# vim: set ft=perl:
+