Hi,

the appended patch implements getTimeToLive & setTimeToLive methods for 
java.net.MulticastSocket. The implementation just calls the getTTL & setTTL 
methods. The implementation of setTimeToLive additionally checks if the given 
time to live is within bounds specified in Java Class Libraries Second 
Edition Volume 1 Supplement book. If it is not, it throws an 
IllegalArgumentException, like JDK does.

Additionally, I deprecated the old forms (getTTL, setTTL), since they are 
marked as deprecated as of Java 1.2.

have fun,

Dalibor Topic
        * libraries/javalib/java/net/MulticastSocket.java:
        (getTimeToLive) new method.
        (getTTL) deprecated.
        (setTimeToLive) new method.
        (setTTL) deprecated.
        
--- kaffe/libraries/javalib/java/net/MulticastSocket.java	Mon Feb  8 19:58:10 1999
+++ patched-kaffe/libraries/javalib/java/net/MulticastSocket.java	Mon Mar 18 14:36:38 2002
@@ -35,6 +35,13 @@
 	return (iface);
 }
 
+public int getTimeToLive() throws IOException {
+	return getTTL();
+}
+
+/**
+ * @deprecated.
+ */
 public byte getTTL() throws IOException {
 	return (impl.getTTL());
 }
@@ -58,6 +65,17 @@
 	iface = inf;
 }
 
+public void setTimeToLive(int ttl)  throws IOException {
+	if (ttl < 0 || ttl > 255) {
+		throw new IllegalArgumentException("ttl out of range");
+	}
+
+	setTTL((byte) ttl);
+}
+
+/**
+ * @deprecated.
+ */
 public void setTTL(byte ttl) throws IOException {
 	impl.setTTL(ttl);
 }

Reply via email to