home *** CD-ROM | disk | FTP | other *** search
/ Internet Magazine 2002 June / INTERNET92.ISO / pc / software / windows / building / visual_dhtml / visualdhtmlwin9x_nt.exe / AIPars.___ (.txt) < prev    next >
Encoding:
Java Class File  |  2001-10-19  |  3.5 KB  |  218 lines

  1. import java.io.DataInputStream;
  2. import java.io.File;
  3. import java.io.FileInputStream;
  4. import java.io.FileNotFoundException;
  5. import java.io.IOException;
  6. import java.util.StringTokenizer;
  7. import java.util.Vector;
  8.  
  9. class AIPars {
  10.    private int[] als;
  11.    private int num_applets;
  12.    private Vector applet_info;
  13.    private Vector applet_desc;
  14.    private Vector applet_cats;
  15.    // $FF: renamed from: in java.io.DataInputStream
  16.    private DataInputStream field_0;
  17.    private boolean initialized = false;
  18.    private File parmfile = null;
  19.    public int curSelection;
  20.  
  21.    public AIPars(File var1) {
  22.       this.parmfile = var1;
  23.       FileInputStream var2 = null;
  24.       this.applet_desc = new Vector();
  25.       this.applet_cats = new Vector();
  26.       if (this.parmfile == null) {
  27.          System.out.println("Error: System File not found");
  28.       } else {
  29.          try {
  30.             var2 = new FileInputStream(this.parmfile);
  31.          } catch (FileNotFoundException var6) {
  32.          }
  33.  
  34.          this.field_0 = new DataInputStream(var2);
  35.          this.applet_info = new Vector();
  36.          Vector var3 = this.initializeAttributesVector();
  37.          this.als = new int[this.applet_info.size()];
  38.  
  39.          for(int var4 = 0; var4 < var3.size(); ++var4) {
  40.             this.als[var4] = (Integer)var3.elementAt(var4) + 1;
  41.          }
  42.  
  43.          this.num_applets = var3.size();
  44.  
  45.          try {
  46.             var2.close();
  47.          } catch (IOException var5) {
  48.          }
  49.  
  50.          this.initialized = true;
  51.       }
  52.    }
  53.  
  54.    private void addAppletInfo(String var1) {
  55.       int var2 = 0;
  56.       StringTokenizer var3 = new StringTokenizer(var1, ";");
  57.  
  58.       String[] var4;
  59.       for(var4 = new String[var3.countTokens()]; var3.hasMoreTokens(); ++var2) {
  60.          var4[var2] = var3.nextToken();
  61.       }
  62.  
  63.       this.applet_info.addElement(var4);
  64.    }
  65.  
  66.    public String[][] getAppletListAndDescs() {
  67.       if (this.num_applets <= 0) {
  68.          return null;
  69.       } else {
  70.          String[][] var2 = new String[2][this.num_applets];
  71.  
  72.          for(int var1 = 0; var1 < this.num_applets; ++var1) {
  73.             var2[0][var1] = ((String[])this.applet_info.elementAt(var1))[1];
  74.             var2[1][var1] = (String)this.applet_desc.elementAt(var1);
  75.          }
  76.  
  77.          return var2;
  78.       }
  79.    }
  80.  
  81.    private void addAppletDesc(String var1) {
  82.       int var3;
  83.       while((var3 = var1.indexOf("&cr;")) != -1) {
  84.          String var2 = var1.substring(0, var3) + "\n";
  85.          var1 = var1.substring(var3 + 4, var1.length());
  86.          var1 = var2 + var1;
  87.       }
  88.  
  89.       this.applet_desc.addElement(var1);
  90.    }
  91.  
  92.    public void printAppletList() {
  93.       for(int var1 = 0; var1 < this.applet_info.size(); ++var1) {
  94.          String[] var3 = (String[])this.applet_info.elementAt(var1);
  95.          System.out.print("<");
  96.  
  97.          for(int var2 = 0; var2 < var3.length; ++var2) {
  98.             System.out.print(var3[var2] + " ");
  99.          }
  100.  
  101.          System.out.println(">");
  102.       }
  103.  
  104.    }
  105.  
  106.    private Vector initializeAttributesVector() {
  107.       Object var1 = null;
  108.       int var2 = 0;
  109.       int var3 = 0;
  110.       Vector var4 = new Vector();
  111.       if (this.field_0 == null) {
  112.          return null;
  113.       } else {
  114.          while(true) {
  115.             try {
  116.                while((var6 = this.field_0.readLine()) != null && var6.indexOf("<" + var2 + ">") == -1) {
  117.                   ++var3;
  118.                }
  119.  
  120.                if (var3 != 0) {
  121.                   var4.addElement(new Integer(var3 - 1));
  122.                }
  123.  
  124.                String var7;
  125.                if ((var7 = this.field_0.readLine()) == null) {
  126.                   return var4;
  127.                }
  128.  
  129.                this.addAppletInfo(var7);
  130.                this.addAppletDesc(this.field_0.readLine());
  131.                this.addAppletCats(this.field_0.readLine());
  132.                ++var2;
  133.                var3 = 0;
  134.             } catch (IOException var5) {
  135.                System.out.println("Configuration File Read Error");
  136.                return null;
  137.             }
  138.          }
  139.       }
  140.    }
  141.  
  142.    public String[][] getParamInfo(int var1) {
  143.       String var3 = (new Integer(var1)).toString();
  144.       FileInputStream var4 = null;
  145.       String[][] var2 = new String[7][this.als[var1]];
  146.  
  147.       try {
  148.          var4 = new FileInputStream(this.parmfile);
  149.       } catch (FileNotFoundException var9) {
  150.          System.out.println("Configuration File Error");
  151.       }
  152.  
  153.       this.field_0 = new DataInputStream(var4);
  154.  
  155.       try {
  156.          String var6;
  157.          while((var6 = this.field_0.readLine()) != null && var6.indexOf("<" + var3 + ">") == -1) {
  158.          }
  159.  
  160.          this.field_0.readLine();
  161.          this.field_0.readLine();
  162.          this.field_0.readLine();
  163.  
  164.          for(int var7 = 0; var7 < this.als[var1]; ++var7) {
  165.             int var8 = 0;
  166.  
  167.             for(StringTokenizer var5 = new StringTokenizer(this.field_0.readLine().trim(), ";"); var5.hasMoreTokens(); ++var8) {
  168.                var2[var8][var7] = var5.nextToken();
  169.             }
  170.          }
  171.       } catch (IOException var10) {
  172.          System.out.println("Configuration File Error");
  173.       }
  174.  
  175.       return var2;
  176.    }
  177.  
  178.    private void addAppletCats(String var1) {
  179.       String var2 = "";
  180.       Vector var3 = new Vector();
  181.       StringTokenizer var4 = new StringTokenizer(var1, ";");
  182.  
  183.       while(var4.hasMoreTokens()) {
  184.          var2 = var4.nextToken();
  185.          StringTokenizer var5 = new StringTokenizer(var2, "|");
  186.          Vector var6 = new Vector();
  187.  
  188.          while(var5.hasMoreTokens()) {
  189.             var6.addElement(var5.nextToken());
  190.          }
  191.  
  192.          String[] var7 = new String[var6.size()];
  193.          var6.copyInto(var7);
  194.          var3.addElement(var7);
  195.       }
  196.  
  197.       this.applet_cats.addElement(var3);
  198.    }
  199.  
  200.    public String[] getAppletInfo(int var1) {
  201.       return (String[])this.applet_info.elementAt(var1);
  202.    }
  203.  
  204.    public Vector getAppletCategories(int var1) {
  205.       return (Vector)this.applet_cats.elementAt(var1);
  206.    }
  207.  
  208.    public int getSelectionByName(String var1) {
  209.       for(int var2 = 0; var2 < this.num_applets; ++var2) {
  210.          if (var1.equalsIgnoreCase(((String[])this.applet_info.elementAt(var2))[2])) {
  211.             return var2;
  212.          }
  213.       }
  214.  
  215.       return -1;
  216.    }
  217. }
  218.