home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 2000 January / maximum-cd-2000-01.iso / Dreamweaver2 / data1.cab / Program_Files / Help / search.jar / FileLoadThread.class (.txt) next >
Encoding:
Java Class File  |  1998-09-29  |  3.6 KB  |  116 lines

  1. import java.io.BufferedReader;
  2. import java.io.InputStream;
  3. import java.io.InputStreamReader;
  4. import java.net.URL;
  5. import java.net.URLConnection;
  6. import java.text.MessageFormat;
  7. import java.util.StringTokenizer;
  8. import java.util.Vector;
  9.  
  10. class FileLoadThread extends Thread {
  11.    boolean loaded = false;
  12.    long loadtime = -1L;
  13.    // $FF: renamed from: sa SearchApplet9ech
  14.    SearchApplet9ech field_0;
  15.    String encoding;
  16.    String resource_file;
  17.    String[] filedata;
  18.    String[] fileurls;
  19.  
  20.    FileLoadThread(SearchApplet9ech var1, String var2, String var3) {
  21.       this.field_0 = var1;
  22.       this.resource_file = var2;
  23.       this.encoding = var3;
  24.    }
  25.  
  26.    public void run() {
  27.       Vector var1 = new Vector(101);
  28.       Vector var2 = new Vector(101);
  29.       long var3 = System.currentTimeMillis();
  30.       int var5 = 0;
  31.       Object var6 = null;
  32.       InputStreamReader var7 = null;
  33.       Object var8 = null;
  34.  
  35.       try {
  36.          URL var9 = new URL(this.field_0.getCodeBase(), this.resource_file);
  37.          URLConnection var10 = var9.openConnection();
  38.          InputStream var21 = var10.getInputStream();
  39.          var7 = this.encoding == null ? new InputStreamReader(var21) : new InputStreamReader(var21, this.encoding);
  40.       } catch (Exception var19) {
  41.          System.out.println("000 " + var19);
  42.       }
  43.  
  44.       try {
  45.          BufferedReader var22 = new BufferedReader(var7);
  46.          StringBuffer var23 = new StringBuffer();
  47.  
  48.          int var11;
  49.          int var25;
  50.          for(var25 = 0; (var11 = var22.read()) > -1; ++var25) {
  51.             var23.append((char)var11);
  52.          }
  53.  
  54.          String var12 = var23.toString();
  55.          StringTokenizer var13 = new StringTokenizer(var12, "\r\n");
  56.  
  57.          int var14;
  58.          for(var14 = 0; var13.hasMoreTokens(); ++var14) {
  59.             String var15 = var13.nextToken();
  60.             if (var15.startsWith("<url>")) {
  61.                String var16 = var15.substring(var15.indexOf("<url>") + 5, var15.indexOf("</url>"));
  62.                var2.addElement(var16);
  63.                ++var5;
  64.                if (var5 % 10 == 0) {
  65.                   String[] var17 = new String[]{String.valueOf(var5)};
  66.                   String var18 = this.field_0.getMessage("search.search_initializing_documents");
  67.                   this.field_0.showStatus(MessageFormat.format(var18, var17));
  68.                }
  69.             } else if (var15.startsWith("<title>")) {
  70.                var1.addElement(var15);
  71.             }
  72.          }
  73.  
  74.          System.out.println("> " + var14 + " documents. (" + var25 + " bytes)");
  75.          var22.close();
  76.       } catch (Exception var20) {
  77.          System.out.println("001 " + var20);
  78.       }
  79.  
  80.       this.filedata = new String[var1.size()];
  81.       this.fileurls = new String[var2.size()];
  82.       var1.copyInto(this.filedata);
  83.       var2.copyInto(this.fileurls);
  84.       this.field_0.showStatus("");
  85.       this.loaded = true;
  86.       long var24 = System.currentTimeMillis();
  87.       this.loadtime = var24 - var3;
  88.       this.field_0.prompt();
  89.    }
  90.  
  91.    public String[] getFileData() {
  92.       return this.filedata;
  93.    }
  94.  
  95.    public URL[] getFileURLs() {
  96.       URL[] var1 = new URL[this.fileurls.length];
  97.  
  98.       for(int var2 = 0; var2 < var1.length; ++var2) {
  99.          try {
  100.             var1[var2] = new URL(this.field_0.getCodeBase(), this.fileurls[var2]);
  101.          } catch (Exception var3) {
  102.          }
  103.       }
  104.  
  105.       return var1;
  106.    }
  107.  
  108.    public boolean isLoaded() {
  109.       return this.loaded;
  110.    }
  111.  
  112.    public long getLoadTime() {
  113.       return this.loadtime;
  114.    }
  115. }
  116.