]> oss.titaniummirror.com Git - msp430-gcc.git/blobdiff - libjava/java/rmi/server/UID.java
Imported gcc-4.4.3
[msp430-gcc.git] / libjava / java / rmi / server / UID.java
diff --git a/libjava/java/rmi/server/UID.java b/libjava/java/rmi/server/UID.java
deleted file mode 100644 (file)
index a88cb8b..0000000
+++ /dev/null
@@ -1,130 +0,0 @@
-/*
-  Copyright (c) 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING.  If not, write to the
-Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library.  Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module.  An independent module is a module which is not derived from
-or based on this library.  If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so.  If you do not wish to do so, delete this
-exception statement from your version. */
-
-package java.rmi.server;
-
-import java.io.Serializable;
-import java.io.DataOutput;
-import java.io.DataInput;
-import java.io.IOException;
-import java.util.Random;
-import java.lang.Thread;
-import java.lang.InterruptedException;
-
-public final class UID
-       implements Serializable {
-
-public static final long serialVersionUID = 1086053664494604050L;
-
-private static final Object lock = UID.class;
-private static long baseTime = System.currentTimeMillis();
-private static short nextCount = Short.MIN_VALUE;
-// This is sun's algorithm - don't ask me why ...
-private static final int uniqueNr = (new Object()).hashCode();
-
-private int unique;
-private long time;
-private short count;
-
-/**
- * This is sun's algorithm - don't ask me why ...
- */
-public UID() {
-       synchronized (lock) {
-               if (count == Short.MAX_VALUE) {
-                       long newtime;
-                       for (;;) {
-                               newtime = System.currentTimeMillis();
-                               if (newtime - baseTime > 1000) {
-                                       break;
-                               }
-                               try {
-                                       Thread.sleep(1000);
-                               }
-                               catch (InterruptedException _) {
-                               }
-                       }
-                       baseTime = newtime;
-                       nextCount = Short.MIN_VALUE;
-               }
-               count = nextCount++;
-               unique = uniqueNr;
-               time = baseTime;
-       }
-}
-
-public UID(short num) {
-       unique = (int)num;
-       time = 0;
-       count = 0;
-}
-
-public int hashCode() {
-       return (unique);
-}
-
-public boolean equals(Object obj) {
-       if (obj instanceof UID) {
-               UID uid = (UID)obj;
-               if (this.unique == uid.unique &&
-                   this.time == uid.time &&
-                   this.count == uid.count) {
-                       return (true);
-               }
-       }
-       return (false);
-}
-
-public String toString() {
-       return ("[UID: " + unique + "," + time + "," + count + "]");
-}
-
-public void write(DataOutput out) throws IOException {
-       out.writeInt(unique);
-       out.writeLong(time);
-       out.writeShort(count);
-}
-
-public static UID read(DataInput in) throws IOException {
-       UID id = new UID();
-       id.unique = in.readInt();
-       id.time = in.readLong();
-       id.count = in.readShort();
-       return (id);
-}
-
-}