From 64089cc9f030d8ef7972adb5d117e0b23f47d62b Mon Sep 17 00:00:00 2001 From: mark Date: Thu, 18 May 2006 17:29:21 +0000 Subject: Imported GNU Classpath 0.90 * scripts/makemake.tcl: LocaleData.java moved to gnu/java/locale. * sources.am: Regenerated. * gcj/javaprims.h: Regenerated. * Makefile.in: Regenerated. * gcj/Makefile.in: Regenerated. * include/Makefile.in: Regenerated. * testsuite/Makefile.in: Regenerated. * gnu/java/lang/VMInstrumentationImpl.java: New override. * gnu/java/net/local/LocalSocketImpl.java: Likewise. * gnu/classpath/jdwp/VMMethod.java: Likewise. * gnu/classpath/jdwp/VMVirtualMachine.java: Update to latest interface. * java/lang/Thread.java: Add UncaughtExceptionHandler. * java/lang/reflect/Method.java: Implements GenericDeclaration and isSynthetic(), * java/lang/reflect/Field.java: Likewise. * java/lang/reflect/Constructor.java * java/lang/Class.java: Implements Type, GenericDeclaration, getSimpleName() and getEnclosing*() methods. * java/lang/Class.h: Add new public methods. * java/lang/Math.java: Add signum(), ulp() and log10(). * java/lang/natMath.cc (log10): New function. * java/security/VMSecureRandom.java: New override. * java/util/logging/Logger.java: Updated to latest classpath version. * java/util/logging/LogManager.java: New override. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113887 138bc75d-0d04-0410-961f-82ee72b054a4 --- libjava/classpath/java/net/InetSocketAddress.java | 59 ++++++++++++++++++----- 1 file changed, 48 insertions(+), 11 deletions(-) (limited to 'libjava/classpath/java/net/InetSocketAddress.java') diff --git a/libjava/classpath/java/net/InetSocketAddress.java b/libjava/classpath/java/net/InetSocketAddress.java index edeaf27753c..91254575265 100644 --- a/libjava/classpath/java/net/InetSocketAddress.java +++ b/libjava/classpath/java/net/InetSocketAddress.java @@ -1,5 +1,5 @@ /* InetSocketAddress.java -- - Copyright (C) 2002 Free Software Foundation, Inc. + Copyright (C) 2002, 2006 Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -107,10 +107,26 @@ public class InetSocketAddress extends SocketAddress * @param hostname The hostname for the socket address * @param port The port for the socket address * - * @exception IllegalArgumentException If the port number is illegal + * @exception IllegalArgumentException If the port number is illegal or + * the hostname argument is null */ public InetSocketAddress(String hostname, int port) - throws IllegalArgumentException + { + this(hostname, port, true); + } + + /** + * Constructs an InetSocketAddress instance. + * + * @param hostname The hostname for the socket address + * @param port The port for the socket address + * @param resolve true if the address has to be resolved, + * false otherwise + * + * @exception IllegalArgumentException If the port number is illegal or + * the hostname argument is null + */ + private InetSocketAddress(String hostname, int port, boolean resolve) { if (hostname == null) throw new IllegalArgumentException("Null host name value"); @@ -120,15 +136,36 @@ public class InetSocketAddress extends SocketAddress this.port = port; this.hostname = hostname; + this.addr = null; - try - { - this.addr = InetAddress.getByName(hostname); - } - catch (Exception e) // UnknownHostException, SecurityException - { - this.addr = null; - } + if (resolve) + { + try + { + this.addr = InetAddress.getByName(hostname); + } + catch (Exception e) // UnknownHostException, SecurityException + { + // Do nothing here. this.addr is already set to null. + } + } + + } + + /** + * Creates an unresolved InetSocketAddress object. + * + * @param hostname The hostname for the socket address + * @param port The port for the socket address + * + * @exception IllegalArgumentException If the port number is illegal or + * the hostname argument is null + * + * @since 1.5 + */ + public static InetSocketAddress createUnresolved(String hostname, int port) + { + return new InetSocketAddress(hostname, port, false); } /** -- cgit v1.2.1