Seems this change made something not happy on the JDK1.4 that Gump runs
(namely, that below). Does the bootstrap-ant script need to be aware of some
conditional compilation?
---------------------------------------------
... Bootstrapping Ant Distribution
... Compiling Ant Classes
src/main/org/apache/tools/ant/taskdefs/condition/IsPingable.java:81: cannot
resolve symbol
symbol : method isReachable (int)
location: class java.net.InetAddress
return address.isReachable(timeout*1000);
^
Note: Some input files use or override a deprecated API.
Note: Recompile with -deprecation for details.
1 error
... Failed compiling Ant classes !
---------------------------------------------
regards
Adam
----- Original Message -----
From: <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Thursday, October 07, 2004 4:54 PM
Subject: cvs commit: ant build.xml
> stevel 2004/10/07 15:54:32
>
> Modified: . build.xml
> Added: src/main/org/apache/tools/ant/taskdefs/condition
> IsPingable.java
> Log:
> First of the Java1.5 extensions. Closest j2se has for detecting offline
state, though I note J2ME and JavaWebStart have offline tests.
> Needs tests.
>
> Revision Changes Path
> 1.1
ant/src/main/org/apache/tools/ant/taskdefs/condition/IsPingable.java
>
> Index: IsPingable.java
> ===================================================================
> /*
> * Copyright 2004 The Apache Software Foundation
> *
> * Licensed under the Apache License, Version 2.0 (the "License");
> * you may not use this file except in compliance with the License.
> * You may obtain a copy of the License at
> *
> * http://www.apache.org/licenses/LICENSE-2.0
> *
> * Unless required by applicable law or agreed to in writing, software
> * distributed under the License is distributed on an "AS IS" BASIS,
> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied.
> * See the License for the specific language governing permissions and
> * limitations under the License.
> *
> */
>
> package org.apache.tools.ant.taskdefs.condition;
>
> import org.apache.tools.ant.ProjectComponent;
> import org.apache.tools.ant.BuildException;
> import org.apache.tools.ant.Project;
>
> import java.net.InetAddress;
> import java.net.UnknownHostException;
> import java.io.IOException;
>
> /**
> * Test for a host being reachable using ICMP "ping" packets.
> * Ping packets are very reliable for assessing reachability in a LAN or
WAN,
> * but they do not get through any well-configured firewall.
> *
> * This condition turns unknown host exceptions into false conditions.
This is
> * because on a laptop, DNS is one of the first services when the
network goes; you
> * are implicitly offline.
> * Requires Java1.5+ to work
> * @since Ant1.7
> */
> public class IsPingable extends ProjectComponent implements Condition {
>
> private String host;
> public static final int DEFAULT_TIMEOUT = 30;
> private int timeout=DEFAULT_TIMEOUT;
> public static final String ERROR_NO_HOSTNAME = "No hostname
defined";
> public static final String ERROR_BAD_TIMEOUT = "Invalid timeout
value";
> public static final String ERROR_UNKNOWN_HOST = "Unknown host:";
> public static final String ERROR_ON_NETWORK = "network error to ";
>
> /**
> * the host to ping
> * @param host
> */
> public void setHost(String host) {
> this.host = host;
> }
>
> /**
> * timeout for the reachability test -in seconds
> * @param timeout
> */
> public void setTimeout(int timeout) {
> this.timeout = timeout;
> }
>
> /**
> * Is this condition true?
> *
> * @return true if the condition is true
> * @throws org.apache.tools.ant.BuildException
> * if an error occurs
> */
> public boolean eval() throws BuildException {
> if(host==null && host.length()==0) {
> throw new BuildException(ERROR_NO_HOSTNAME);
> }
> if(timeout<0) {
> throw new BuildException(ERROR_BAD_TIMEOUT);
> }
> try {
> InetAddress address=InetAddress.getByName(host);
> return address.isReachable(timeout*1000);
> } catch (UnknownHostException e) {
> log(ERROR_UNKNOWN_HOST+host,Project.MSG_VERBOSE);
> return false;
> } catch (IOException e) {
> log(ERROR_ON_NETWORK + host +": "+e.toString(),
> Project.MSG_VERBOSE);
> return false;
> }
> }
> }
>
>
>
> 1.431 +7 -0 ant/build.xml
>
> Index: build.xml
> ===================================================================
> RCS file: /home/cvs/ant/build.xml,v
> retrieving revision 1.430
> retrieving revision 1.431
> diff -u -r1.430 -r1.431
> --- build.xml 3 Oct 2004 14:06:52 -0000 1.430
> +++ build.xml 7 Oct 2004 22:54:32 -0000 1.431
> @@ -152,6 +152,12 @@
> </or>
> </selector>
>
> + <selector id="needs.jdk1.5+">
> + <or>
> + <filename name="${ant.package}/taskdefs/condition/IsPingable*"/>
> + </or>
> + </selector>
> +
> <!-- classes that should be present in Sun based JVMs, but not in
> Kaffe for example -->
> <selector id="needs.sun.tools">
> @@ -637,6 +643,7 @@
> <or>
> <selector refid="needs.jdk1.3+" unless="jdk1.3+"/>
> <selector refid="needs.jdk1.4+" unless="jdk1.4+"/>
> + <selector refid="needs.jdk1.5+" unless="jdk1.5+"/>
> <selector refid="needs.sun.tools"
unless="sun.tools.present"/>
> <selector refid="needs.sun.uue" unless="sunuue.present"/>
> <selector refid="needs.sun.b64" unless="base64.present"/>
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]