home *** CD-ROM | disk | FTP | other *** search
/ PC Online 1997 December / PCO1297.ISO / FilesBBS / FREI / JAVA3.ARJ / JAVA3.ZIP / CLASS / ClientSearchGenerator.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-11-06  |  4.3 KB  |  160 lines

  1. import java.io.File;
  2. import java.io.FileInputStream;
  3. import java.io.FileOutputStream;
  4. import java.io.FilenameFilter;
  5. import java.io.InputStream;
  6. import java.net.URL;
  7.  
  8. public class ClientSearchGenerator {
  9.    // $FF: renamed from: g SearchEngineGenerator
  10.    static SearchEngineGenerator field_0;
  11.    static boolean zipAvailable;
  12.  
  13.    static void usage() {
  14.       System.out.println("Gueltige Argumente:");
  15.       System.out.println("  CLEAR                     Suchindex loeschen");
  16.       System.out.println("  ADD    home file [url]    Datei indizieren");
  17.       System.out.println("  ADDW   home file          Mehrere Dateien indiziern (mit Wildcards)");
  18.       System.out.println("  ADDWS  home file          Mehrere Dateien indiziern (mit Wildcards ");
  19.       System.out.println("                            und Unterverzeichnissen)");
  20.       System.out.println("  SPIDER home file          Dokument und alle Verweise indizieren");
  21.       System.exit(1);
  22.    }
  23.  
  24.    static void load() {
  25.       System.out.println("Lade searchR.dat");
  26.  
  27.       try {
  28.          FileInputStream var0 = new FileInputStream("searchR.dat");
  29.          field_0.load(var0);
  30.          ((InputStream)var0).close();
  31.       } catch (Exception var1) {
  32.          System.err.println("Exception: " + ((Throwable)var1).getMessage());
  33.       }
  34.  
  35.       System.out.println(field_0.getStatus());
  36.    }
  37.  
  38.    static void save() {
  39.       try {
  40.          System.out.println("Speichere searchR.dat");
  41.          field_0.save(new FileOutputStream("searchR.dat"));
  42.       } catch (Exception var2) {
  43.          System.err.println("Exception: " + ((Throwable)var2).getMessage());
  44.       }
  45.  
  46.       if (zipAvailable) {
  47.          try {
  48.             System.out.println("Speichere searchZ.dat");
  49.             field_0.saveZIP(new FileOutputStream("searchZ.dat"));
  50.          } catch (Exception var1) {
  51.             System.err.println("Exception: " + ((Throwable)var1).getMessage());
  52.          }
  53.       } else {
  54.          System.err.println("WARNUNG: ZIP-Kompression nicht verfuegbar. searchZ.dat wurde nicht erzeugt.");
  55.       }
  56.  
  57.       System.out.println(field_0.getStatus());
  58.    }
  59.  
  60.    static void addDir(File var0, String var1, FilenameFilter var2, boolean var3) {
  61.       System.out.println("Durchsuche " + var0.toString());
  62.       String[] var4 = var0.list(var2);
  63.       if (var4 != null) {
  64.          for(int var5 = 0; var5 < var4.length; ++var5) {
  65.             System.out.println("Indiziere " + var1 + var4[var5]);
  66.  
  67.             try {
  68.                File var6 = new File(var0, var4[var5]);
  69.                FileInputStream var7 = new FileInputStream(var6);
  70.                DocumentParser var8 = new DocumentParser(field_0, var7);
  71.                var8.parse(var1 + var4[var5]);
  72.             } catch (Exception var9) {
  73.                System.err.println("Exception: " + ((Throwable)var9).getMessage());
  74.             }
  75.          }
  76.       }
  77.  
  78.       if (var3) {
  79.          var4 = var0.list();
  80.          if (var4 != null) {
  81.             for(int var11 = 0; var11 < var4.length; ++var11) {
  82.                File var12 = new File(var0, var4[var11]);
  83.                if (var12.isDirectory()) {
  84.                   addDir(var12, var1 + var4[var11] + File.separator, var2, var3);
  85.                }
  86.             }
  87.          }
  88.       }
  89.  
  90.    }
  91.  
  92.    public static void main(String[] var0) {
  93.       if (var0.length < 1) {
  94.          usage();
  95.       }
  96.  
  97.       field_0 = new SearchEngineGenerator();
  98.  
  99.       try {
  100.          Class.forName("java.util.zip.InflaterInputStream");
  101.          Class.forName("java.util.zip.DeflaterOutputStream");
  102.          zipAvailable = true;
  103.       } catch (Exception var6) {
  104.       }
  105.  
  106.       if (var0[0].equalsIgnoreCase("CLEAR")) {
  107.          save();
  108.       } else if (!var0[0].equalsIgnoreCase("ADD")) {
  109.          if (!var0[0].equalsIgnoreCase("ADDW") && !var0[0].equalsIgnoreCase("ADDWS")) {
  110.             if (var0[0].equalsIgnoreCase("SPIDER")) {
  111.                if (var0.length != 3) {
  112.                   usage();
  113.                }
  114.  
  115.                load();
  116.  
  117.                try {
  118.                   URL var8 = new URL(var0[1]);
  119.                   SearchEngineSpider var9 = new SearchEngineSpider(var8, var0[2]);
  120.                   var9.run(field_0);
  121.                } catch (Exception var5) {
  122.                   System.err.println("Exception: " + ((Throwable)var5).getMessage());
  123.                }
  124.  
  125.                save();
  126.             } else {
  127.                usage();
  128.             }
  129.          } else {
  130.             boolean var7 = var0[0].equalsIgnoreCase("ADDWS");
  131.             if (var0.length != 3) {
  132.                usage();
  133.             }
  134.  
  135.             load();
  136.             addDir(new File(var0[1]), new String(""), new WildcardFilter(var0[2]), var7);
  137.             save();
  138.          }
  139.       } else {
  140.          if (var0.length < 3 || var0.length > 4) {
  141.             usage();
  142.          }
  143.  
  144.          load();
  145.  
  146.          try {
  147.             URL var1 = new URL(var0[1]);
  148.             URL var2 = new URL(var1, var0[2]);
  149.             System.out.println("Indiziere " + var2.toString());
  150.             DocumentParser var3 = new DocumentParser(field_0, var2.openStream());
  151.             var3.parse(var0.length >= 4 ? var0[3] : var0[2]);
  152.          } catch (Exception var4) {
  153.             System.err.println("Exception: " + ((Throwable)var4).getMessage());
  154.          }
  155.  
  156.          save();
  157.       }
  158.    }
  159. }
  160.