< prev index next >

src/java.base/share/classes/java/net/URI.java

Print this page

3701                 if (at(p + 1, n, ':'))
3702                     break;              // "::"
3703                 p++;
3704                 q = scan(p, n, L_HEX, H_HEX);
3705                 if (q <= p)
3706                     failExpecting("digits for an IPv6 address", p);
3707                 if (at(q, n, '.')) {    // Beginning of IPv4 address
3708                     p--;
3709                     break;
3710                 }
3711                 if (q > p + 4)
3712                     fail("IPv6 hexadecimal digit sequence too long", p);
3713                 ipv6byteCount += 2;
3714                 p = q;
3715             }
3716 
3717             return p;
3718         }
3719 
3720     }

3721     static {





3722         SharedSecrets.setJavaNetUriAccess(
3723             new JavaNetUriAccess() {
3724                 public URI create(String scheme, String path) {
3725                     return new URI(scheme, path);
3726                 }
3727             }
3728         );
3729     }
3730 }

3701                 if (at(p + 1, n, ':'))
3702                     break;              // "::"
3703                 p++;
3704                 q = scan(p, n, L_HEX, H_HEX);
3705                 if (q <= p)
3706                     failExpecting("digits for an IPv6 address", p);
3707                 if (at(q, n, '.')) {    // Beginning of IPv4 address
3708                     p--;
3709                     break;
3710                 }
3711                 if (q > p + 4)
3712                     fail("IPv6 hexadecimal digit sequence too long", p);
3713                 ipv6byteCount += 2;
3714                 p = q;
3715             }
3716 
3717             return p;
3718         }
3719 
3720     }
3721 
3722     static {
3723         runtimeSetup();
3724     }
3725 
3726     // Called from JVM when loading an AOT cache
3727     private static void runtimeSetup() {
3728         SharedSecrets.setJavaNetUriAccess(
3729             new JavaNetUriAccess() {
3730                 public URI create(String scheme, String path) {
3731                     return new URI(scheme, path);
3732                 }
3733             }
3734         );
3735     }
3736 }
< prev index next >