home *** CD-ROM | disk | FTP | other *** search
- package java.net;
-
- import java.io.File;
- import java.io.IOException;
-
- public abstract class URLStreamHandler {
- protected abstract URLConnection openConnection(URL var1) throws IOException;
-
- protected void parseURL(URL var1, String var2, int var3, int var4) {
- String var5 = var1.getProtocol();
- String var6 = var1.getHost();
- int var7 = var1.getPort();
- String var8 = var1.getFile();
- String var9 = var1.getRef();
- if (var3 <= var4 - 2 && var2.charAt(var3) == '/' && var2.charAt(var3 + 1) == '/') {
- var3 += 2;
- int var10 = var2.indexOf(47, var3);
- if (var10 < 0) {
- var10 = var4;
- }
-
- int var11 = var2.indexOf(58, var3);
- var7 = -1;
- if (var11 < var10 && var11 >= 0) {
- try {
- var7 = Integer.parseInt(var2.substring(var11 + 1, var10));
- } catch (Exception var13) {
- }
-
- if (var11 > var3) {
- var6 = var2.substring(var3, var11);
- }
- } else {
- var6 = var2.substring(var3, var10);
- }
-
- var3 = var10;
- var8 = null;
- } else if (var6 == null) {
- var6 = "";
- }
-
- if (var3 < var4) {
- if (var8 != null) {
- int var18 = var8.indexOf(63);
- if (var18 > -1) {
- int var12 = var8.lastIndexOf(63, var18);
- ++var12;
- var8 = var8.substring(0, var12);
- }
- }
-
- if (var2.charAt(var3) == '/') {
- var8 = var2.substring(var3, var4);
- } else if (var8 != null && var8.length() > 0) {
- int var19 = Math.max(var8.lastIndexOf(47), var8.lastIndexOf(File.separatorChar));
- var8 = var8.substring(0, var19) + "/" + var2.substring(var3, var4);
- } else {
- var8 = "/" + var2.substring(var3, var4);
- }
- }
-
- if (var8 == null || var8.length() == 0) {
- var8 = "/";
- }
-
- int var16;
- while((var16 = var8.indexOf("/./")) >= 0) {
- var8 = var8.substring(0, var16) + var8.substring(var16 + 2);
- }
-
- while((var16 = var8.indexOf("/../")) >= 0) {
- if ((var4 = var8.lastIndexOf(47, var16 - 1)) >= 0) {
- var8 = var8.substring(0, var4) + var8.substring(var16 + 3);
- } else {
- var8 = var8.substring(var16 + 3);
- }
- }
-
- var1.set(var5, var6, var7, var8, var9);
- }
-
- protected String toExternalForm(URL var1) {
- String var2 = var1.getProtocol() + ":";
- if (var1.getHost() != null && var1.getHost().length() > 0) {
- var2 = var2 + "//" + var1.getHost();
- if (var1.getPort() != -1) {
- var2 = var2 + ":" + var1.getPort();
- }
- }
-
- var2 = var2 + var1.getFile();
- if (var1.getRef() != null) {
- var2 = var2 + "#" + var1.getRef();
- }
-
- return var2;
- }
-
- protected void setURL(URL var1, String var2, String var3, int var4, String var5, String var6) {
- var1.set(var2, var3, var4, var5, var6);
- }
- }
-