X-Git-Url: http://source.jalview.org/gitweb/?p=jalviewjs.git;a=blobdiff_plain;f=site%2Fj2s%2Fjava%2Fnet%2FURL.js;fp=site%2Fj2s%2Fjava%2Fnet%2FURL.js;h=880208206b1421acf8332483393a04bdbbd1c572;hp=a8aa5e5889a44e74176de3d281724e3d5eca6402;hb=b9b7a352eee79b7764c3b09c9d19663075061d8c;hpb=7301a2415adab88038b291fc54caeeb3a5a47a44 diff --git a/site/j2s/java/net/URL.js b/site/j2s/java/net/URL.js index a8aa5e5..8802082 100644 --- a/site/j2s/java/net/URL.js +++ b/site/j2s/java/net/URL.js @@ -1,251 +1,251 @@ -Clazz.declarePackage ("java.net"); -Clazz.load (["java.util.Hashtable"], "java.net.URL", ["java.io.IOException", "java.lang.Character", "$.Error", "java.net.MalformedURLException"], function () { -c$ = Clazz.decorateAsClass (function () { -this.protocol = null; -this.host = null; -this.port = -1; -this.file = null; -this.query = null; -this.authority = null; -this.path = null; -this.userInfo = null; -this.ref = null; -this.handler = null; -this.$hashCode = -1; -Clazz.instantialize (this, arguments); -}, java.net, "URL", null, java.io.Serializable); -Clazz.makeConstructor (c$, -function (context, spec, handler) { -{ -switch (arguments.length) { -case 1: -spec = context;context = handler = null; -break; -case 2: -handler = null; -break; -case 3: -if (context == null || Clazz.instanceOf(context, java.net.URL)) -break; -default: -alert("java.net.URL constructor format not supported"); -break; -} -context && context.valueOf && context.valueOf() == null && (context = null); -}var original = spec; -var i; -var limit; -var c; -var start = 0; -var newProtocol = null; -var aRef = false; -var isRelative = false; -try { -limit = spec.length; -while ((limit > 0) && (spec.charAt (limit - 1) <= ' ')) { -limit--; -} -while ((start < limit) && (spec.charAt (start) <= ' ')) { -start++; -} -if (spec.regionMatches (true, start, "url:", 0, 4)) { -start += 4; -}if (start < spec.length && spec.charAt (start) == '#') { -aRef = true; -}for (i = start; !aRef && (i < limit) && ((c = spec.charCodeAt (i)) != 47); i++) { -if (c == 58) { -var s = spec.substring (start, i).toLowerCase (); -if (this.isValidProtocol (s)) { -newProtocol = s; -start = i + 1; -}break; -}} -this.protocol = newProtocol; -if ((context != null) && ((newProtocol == null) || newProtocol.equalsIgnoreCase (context.protocol))) { -if (handler == null) { -handler = context.handler; -}if (context.path != null && context.path.startsWith ("/")) newProtocol = null; -if (newProtocol == null) { -this.protocol = context.protocol; -this.authority = context.authority; -this.userInfo = context.userInfo; -this.host = context.host; -this.port = context.port; -this.file = context.file; -this.path = context.path; -isRelative = true; -}}if (this.protocol == null) { -throw new java.net.MalformedURLException ("no protocol: " + original); -}if (handler == null && (handler = java.net.URL.getURLStreamHandler (this.protocol)) == null) { -throw new java.net.MalformedURLException ("unknown protocol: " + this.protocol); -}this.handler = handler; -i = spec.indexOf ('#', start); -if (i >= 0) { -this.ref = spec.substring (i + 1, limit); -limit = i; -}if (isRelative && start == limit) { -this.query = context.query; -if (this.ref == null) { -this.ref = context.ref; -}}handler.parseURL (this, spec, start, limit); -} catch (e$$) { -if (Clazz.exceptionOf (e$$, java.net.MalformedURLException)) { -var e = e$$; -{ -throw e; -} -} else if (Clazz.exceptionOf (e$$, Exception)) { -var e = e$$; -{ -var exception = new java.net.MalformedURLException (e.getMessage ()); -exception.initCause (e); -throw exception; -} -} else { -throw e$$; -} -} -}, "java.net.URL,~S,java.net.URLStreamHandler"); -Clazz.defineMethod (c$, "isValidProtocol", - function (protocol) { -var len = protocol.length; -if (len < 1) return false; -var c = protocol.charAt (0); -if (!Character.isLetter (c)) return false; -for (var i = 1; i < len; i++) { -c = protocol.charAt (i); -if (!Character.isLetterOrDigit (c) && c != '.' && c != '+' && c != '-') { -return false; -}} -return true; -}, "~S"); -Clazz.defineMethod (c$, "set5", -function (protocol, host, port, file, ref) { -{ -this.protocol = protocol; -this.host = host; -this.authority = port == -1 ? host : host + ":" + port; -this.port = port; -this.file = file; -this.ref = ref; -this.$hashCode = -1; -var q = file.lastIndexOf ('?'); -if (q != -1) { -this.query = file.substring (q + 1); -this.path = file.substring (0, q); -} else this.path = file; -}}, "~S,~S,~N,~S,~S"); -Clazz.defineMethod (c$, "set", -function (protocol, host, port, authority, userInfo, path, query, ref) { -{ -this.protocol = protocol; -this.host = host; -this.port = port; -this.file = query == null ? path : path + "?" + query; -this.userInfo = userInfo; -this.path = path; -this.ref = ref; -this.$hashCode = -1; -this.query = query; -this.authority = authority; -}}, "~S,~S,~N,~S,~S,~S,~S,~S"); -Clazz.defineMethod (c$, "getQuery", -function () { -return this.query; -}); -Clazz.defineMethod (c$, "getPath", -function () { -return this.path; -}); -Clazz.defineMethod (c$, "getUserInfo", -function () { -return this.userInfo; -}); -Clazz.defineMethod (c$, "getAuthority", -function () { -return this.authority; -}); -Clazz.defineMethod (c$, "getPort", -function () { -return this.port; -}); -Clazz.defineMethod (c$, "getDefaultPort", -function () { -return this.handler.getDefaultPort (); -}); -Clazz.defineMethod (c$, "getProtocol", -function () { -return this.protocol; -}); -Clazz.defineMethod (c$, "getHost", -function () { -return this.host; -}); -Clazz.defineMethod (c$, "getFile", -function () { -return this.file; -}); -Clazz.defineMethod (c$, "getRef", -function () { -return this.ref; -}); -Clazz.overrideMethod (c$, "equals", -function (obj) { -if (!(Clazz.instanceOf (obj, java.net.URL))) return false; -var u2 = obj; -return this.handler.equals2 (this, u2); -}, "~O"); -Clazz.overrideMethod (c$, "hashCode", -function () { -if (this.$hashCode != -1) return this.$hashCode; -this.$hashCode = this.handler.hashCode (this); -return this.$hashCode; -}); -Clazz.defineMethod (c$, "sameFile", -function (other) { -return this.handler.sameFile (this, other); -}, "java.net.URL"); -Clazz.overrideMethod (c$, "toString", -function () { -return this.toExternalForm (); -}); -Clazz.defineMethod (c$, "toExternalForm", -function () { -return this.handler.toExternalForm (this); -}); -Clazz.defineMethod (c$, "openConnection", -function () { -return this.handler.openConnection (this); -}); -Clazz.defineMethod (c$, "openStream", -function () { -return this.openConnection ().getInputStream (); -}); -Clazz.defineMethod (c$, "getContent", -function () { -return this.openConnection ().getInputStream (); -}); -c$.setURLStreamHandlerFactory = Clazz.defineMethod (c$, "setURLStreamHandlerFactory", -function (fac) { -{ -if (java.net.URL.factory != null) { -throw new Error ("factory already defined"); -}var security = System.getSecurityManager (); -if (security != null) { -security.checkSetFactory (); -}java.net.URL.handlers.clear (); -java.net.URL.factory = fac; -}}, "java.net.URLStreamHandlerFactory"); -c$.getURLStreamHandler = Clazz.defineMethod (c$, "getURLStreamHandler", -function (protocol) { -var handler = java.net.URL.handlers.get (protocol); -if (handler == null) { -if (java.net.URL.factory != null) { -handler = java.net.URL.factory.createURLStreamHandler (protocol); -}}return handler; -}, "~S"); -Clazz.defineStatics (c$, -"factory", null); -c$.handlers = c$.prototype.handlers = new java.util.Hashtable (); -c$.streamHandlerLock = c$.prototype.streamHandlerLock = new Clazz._O (); -}); +Clazz.declarePackage ("java.net"); +Clazz.load (["java.util.Hashtable"], "java.net.URL", ["java.io.IOException", "java.lang.Character", "$.Error", "java.net.MalformedURLException"], function () { +c$ = Clazz.decorateAsClass (function () { +this.protocol = null; +this.host = null; +this.port = -1; +this.file = null; +this.query = null; +this.authority = null; +this.path = null; +this.userInfo = null; +this.ref = null; +this.handler = null; +this.$hashCode = -1; +Clazz.instantialize (this, arguments); +}, java.net, "URL", null, java.io.Serializable); +Clazz.makeConstructor (c$, +function (context, spec, handler) { +{ +switch (arguments.length) { +case 1: +spec = context;context = handler = null; +break; +case 2: +handler = null; +break; +case 3: +if (context == null || Clazz.instanceOf(context, java.net.URL)) +break; +default: +alert("java.net.URL constructor format not supported"); +break; +} +context && context.valueOf && context.valueOf() == null && (context = null); +}var original = spec; +var i; +var limit; +var c; +var start = 0; +var newProtocol = null; +var aRef = false; +var isRelative = false; +try { +limit = spec.length; +while ((limit > 0) && (spec.charAt (limit - 1) <= ' ')) { +limit--; +} +while ((start < limit) && (spec.charAt (start) <= ' ')) { +start++; +} +if (spec.regionMatches (true, start, "url:", 0, 4)) { +start += 4; +}if (start < spec.length && spec.charAt (start) == '#') { +aRef = true; +}for (i = start; !aRef && (i < limit) && ((c = spec.charCodeAt (i)) != 47); i++) { +if (c == 58) { +var s = spec.substring (start, i).toLowerCase (); +if (this.isValidProtocol (s)) { +newProtocol = s; +start = i + 1; +}break; +}} +this.protocol = newProtocol; +if ((context != null) && ((newProtocol == null) || newProtocol.equalsIgnoreCase (context.protocol))) { +if (handler == null) { +handler = context.handler; +}if (context.path != null && context.path.startsWith ("/")) newProtocol = null; +if (newProtocol == null) { +this.protocol = context.protocol; +this.authority = context.authority; +this.userInfo = context.userInfo; +this.host = context.host; +this.port = context.port; +this.file = context.file; +this.path = context.path; +isRelative = true; +}}if (this.protocol == null) { +throw new java.net.MalformedURLException ("no protocol: " + original); +}if (handler == null && (handler = java.net.URL.getURLStreamHandler (this.protocol)) == null) { +throw new java.net.MalformedURLException ("unknown protocol: " + this.protocol); +}this.handler = handler; +i = spec.indexOf ('#', start); +if (i >= 0) { +this.ref = spec.substring (i + 1, limit); +limit = i; +}if (isRelative && start == limit) { +this.query = context.query; +if (this.ref == null) { +this.ref = context.ref; +}}handler.parseURL (this, spec, start, limit); +} catch (e$$) { +if (Clazz.exceptionOf (e$$, java.net.MalformedURLException)) { +var e = e$$; +{ +throw e; +} +} else if (Clazz.exceptionOf (e$$, Exception)) { +var e = e$$; +{ +var exception = new java.net.MalformedURLException (e.getMessage ()); +exception.initCause (e); +throw exception; +} +} else { +throw e$$; +} +} +}, "java.net.URL,~S,java.net.URLStreamHandler"); +Clazz.defineMethod (c$, "isValidProtocol", + function (protocol) { +var len = protocol.length; +if (len < 1) return false; +var c = protocol.charAt (0); +if (!Character.isLetter (c)) return false; +for (var i = 1; i < len; i++) { +c = protocol.charAt (i); +if (!Character.isLetterOrDigit (c) && c != '.' && c != '+' && c != '-') { +return false; +}} +return true; +}, "~S"); +Clazz.defineMethod (c$, "set5", +function (protocol, host, port, file, ref) { +{ +this.protocol = protocol; +this.host = host; +this.authority = port == -1 ? host : host + ":" + port; +this.port = port; +this.file = file; +this.ref = ref; +this.$hashCode = -1; +var q = file.lastIndexOf ('?'); +if (q != -1) { +this.query = file.substring (q + 1); +this.path = file.substring (0, q); +} else this.path = file; +}}, "~S,~S,~N,~S,~S"); +Clazz.defineMethod (c$, "set", +function (protocol, host, port, authority, userInfo, path, query, ref) { +{ +this.protocol = protocol; +this.host = host; +this.port = port; +this.file = query == null ? path : path + "?" + query; +this.userInfo = userInfo; +this.path = path; +this.ref = ref; +this.$hashCode = -1; +this.query = query; +this.authority = authority; +}}, "~S,~S,~N,~S,~S,~S,~S,~S"); +Clazz.defineMethod (c$, "getQuery", +function () { +return this.query; +}); +Clazz.defineMethod (c$, "getPath", +function () { +return this.path; +}); +Clazz.defineMethod (c$, "getUserInfo", +function () { +return this.userInfo; +}); +Clazz.defineMethod (c$, "getAuthority", +function () { +return this.authority; +}); +Clazz.defineMethod (c$, "getPort", +function () { +return this.port; +}); +Clazz.defineMethod (c$, "getDefaultPort", +function () { +return this.handler.getDefaultPort (); +}); +Clazz.defineMethod (c$, "getProtocol", +function () { +return this.protocol; +}); +Clazz.defineMethod (c$, "getHost", +function () { +return this.host; +}); +Clazz.defineMethod (c$, "getFile", +function () { +return this.file; +}); +Clazz.defineMethod (c$, "getRef", +function () { +return this.ref; +}); +Clazz.overrideMethod (c$, "equals", +function (obj) { +if (!(Clazz.instanceOf (obj, java.net.URL))) return false; +var u2 = obj; +return this.handler.equals2 (this, u2); +}, "~O"); +Clazz.overrideMethod (c$, "hashCode", +function () { +if (this.$hashCode != -1) return this.$hashCode; +this.$hashCode = this.handler.hashCode (this); +return this.$hashCode; +}); +Clazz.defineMethod (c$, "sameFile", +function (other) { +return this.handler.sameFile (this, other); +}, "java.net.URL"); +Clazz.overrideMethod (c$, "toString", +function () { +return this.toExternalForm (); +}); +Clazz.defineMethod (c$, "toExternalForm", +function () { +return this.handler.toExternalForm (this); +}); +Clazz.defineMethod (c$, "openConnection", +function () { +return this.handler.openConnection (this); +}); +Clazz.defineMethod (c$, "openStream", +function () { +return this.openConnection ().getInputStream (); +}); +Clazz.defineMethod (c$, "getContent", +function () { +return this.openConnection ().getInputStream (); +}); +c$.setURLStreamHandlerFactory = Clazz.defineMethod (c$, "setURLStreamHandlerFactory", +function (fac) { +{ +if (java.net.URL.factory != null) { +throw new Error ("factory already defined"); +}var security = System.getSecurityManager (); +if (security != null) { +security.checkSetFactory (); +}java.net.URL.handlers.clear (); +java.net.URL.factory = fac; +}}, "java.net.URLStreamHandlerFactory"); +c$.getURLStreamHandler = Clazz.defineMethod (c$, "getURLStreamHandler", +function (protocol) { +var handler = java.net.URL.handlers.get (protocol); +if (handler == null) { +if (java.net.URL.factory != null) { +handler = java.net.URL.factory.createURLStreamHandler (protocol); +}}return handler; +}, "~S"); +Clazz.defineStatics (c$, +"factory", null); +c$.handlers = c$.prototype.handlers = new java.util.Hashtable (); +c$.streamHandlerLock = c$.prototype.streamHandlerLock = new Clazz._O (); +});