home *** CD-ROM | disk | FTP | other *** search
/ CD Actual 14 / CDACTUAL.iso / ie4 / IE4 / JAVI386.CAB / classr.exe / java / net / URLStreamHandler.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-01-31  |  2.3 KB  |  91 lines

  1. package java.net;
  2.  
  3. import java.io.IOException;
  4.  
  5. public abstract class URLStreamHandler {
  6.    protected abstract URLConnection openConnection(URL var1) throws IOException;
  7.  
  8.    protected void parseURL(URL var1, String var2, int var3, int var4) {
  9.       String var5 = var1.getProtocol();
  10.       String var6 = var1.getHost();
  11.       int var7 = var1.getPort();
  12.       String var8 = var1.getFile();
  13.       String var9 = var1.getRef();
  14.       if (var3 <= var4 - 2 && var2.charAt(var3) == '/' && var2.charAt(var3 + 1) == '/') {
  15.          var3 += 2;
  16.          int var10 = var2.indexOf(47, var3);
  17.          if (var10 < 0) {
  18.             var10 = var4;
  19.          }
  20.  
  21.          int var11 = var2.indexOf(58, var3);
  22.          var7 = -1;
  23.          if (var11 < var10 && var11 >= 0) {
  24.             try {
  25.                var7 = Integer.parseInt(var2.substring(var11 + 1, var10));
  26.             } catch (Exception var12) {
  27.             }
  28.  
  29.             if (var11 > var3) {
  30.                var6 = var2.substring(var3, var11);
  31.             }
  32.          } else {
  33.             var6 = var2.substring(var3, var10);
  34.          }
  35.  
  36.          var3 = var10;
  37.          var8 = null;
  38.       } else if (var6 == null) {
  39.          var6 = "";
  40.       }
  41.  
  42.       if (var3 < var4) {
  43.          if (var2.charAt(var3) == '/') {
  44.             var8 = var2.substring(var3, var4);
  45.          } else {
  46.             var8 = (var8 != null ? var8.substring(0, var8.lastIndexOf(47)) : "") + "/" + var2.substring(var3, var4);
  47.          }
  48.       }
  49.  
  50.       if (var8 == null || var8.length() == 0) {
  51.          var8 = "/";
  52.       }
  53.  
  54.       int var15;
  55.       while((var15 = var8.indexOf("/./")) >= 0) {
  56.          var8 = var8.substring(0, var15) + var8.substring(var15 + 2);
  57.       }
  58.  
  59.       while((var15 = var8.indexOf("/../")) >= 0) {
  60.          if ((var4 = var8.lastIndexOf(47, var15 - 1)) >= 0) {
  61.             var8 = var8.substring(0, var4) + var8.substring(var15 + 3);
  62.          } else {
  63.             var8 = var8.substring(var15 + 3);
  64.          }
  65.       }
  66.  
  67.       var1.set(var5, var6, var7, var8, var9);
  68.    }
  69.  
  70.    protected String toExternalForm(URL var1) {
  71.       String var2 = var1.getProtocol() + ":";
  72.       if (var1.getHost() != null && var1.getHost().length() > 0) {
  73.          var2 = var2 + "//" + var1.getHost();
  74.          if (var1.getPort() != -1) {
  75.             var2 = var2 + ":" + var1.getPort();
  76.          }
  77.       }
  78.  
  79.       var2 = var2 + var1.getFile();
  80.       if (var1.getRef() != null) {
  81.          var2 = var2 + "#" + var1.getRef();
  82.       }
  83.  
  84.       return var2;
  85.    }
  86.  
  87.    protected void setURL(URL var1, String var2, String var3, int var4, String var5, String var6) {
  88.       var1.set(var2, var3, var4, var5, var6);
  89.    }
  90. }
  91.