Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * This file is a modified version of
   * http://gee.cs.oswego.edu/cgi-bin/viewcvs.cgi/jsr166/src/main/java/util/concurrent/TimeUnit.java
   * which contained the following notice:
   *
   * Written by Doug Lea with assistance from members of JCP JSR-166
   * Expert Group and released to the public domain, as explained at
   * http://creativecommons.org/publicdomain/zero/1.0/
   */
 
 package java.util.concurrent;

GWT emulation of TimeUnit, created by removing unsupported operations from Doug Lea's public domain version.
 
 public enum TimeUnit {
   NANOSECONDS {
     public long toNanos(long d)   { return d; }
     public long toMicros(long d)  { return d/(/); }
     public long toMillis(long d)  { return d/(/); }
     public long toSeconds(long d) { return d/(/); }
     public long toMinutes(long d) { return d/(/); }
     public long toHours(long d)   { return d/(/); }
     public long toDays(long d)    { return d/(/); }
     public long convert(long dTimeUnit u) { return u.toNanos(d); }
     int excessNanos(long dlong m) { return (int)(d - (m*)); }
   },
   MICROSECONDS {
     public long toNanos(long d)   { return x(d//(/)); }
     public long toMicros(long d)  { return d; }
     public long toMillis(long d)  { return d/(/); }
     public long toSeconds(long d) { return d/(/); }
     public long toMinutes(long d) { return d/(/); }
     public long toHours(long d)   { return d/(/); }
     public long toDays(long d)    { return d/(/); }
     public long convert(long dTimeUnit u) { return u.toMicros(d); }
     int excessNanos(long dlong m) { return (int)((d*) - (m*)); }
   },
   MILLISECONDS {
     public long toNanos(long d)   { return x(d//(/)); }
     public long toMicros(long d)  { return x(d//(/)); }
     public long toMillis(long d)  { return d; }
     public long toSeconds(long d) { return d/(/); }
     public long toMinutes(long d) { return d/(/); }
     public long toHours(long d)   { return d/(/); }
     public long toDays(long d)    { return d/(/); }
     public long convert(long dTimeUnit u) { return u.toMillis(d); }
     int excessNanos(long dlong m) { return 0; }
   },
   SECONDS {
     public long toNanos(long d)   { return x(d//(/)); }
     public long toMicros(long d)  { return x(d//(/)); }
     public long toMillis(long d)  { return x(d//(/)); }
     public long toSeconds(long d) { return d; }
     public long toMinutes(long d) { return d/(/); }
     public long toHours(long d)   { return d/(/); }
     public long toDays(long d)    { return d/(/); }
     public long convert(long dTimeUnit u) { return u.toSeconds(d); }
     int excessNanos(long dlong m) { return 0; }
   },
   MINUTES {
     public long toNanos(long d)   { return x(d//(/)); }
     public long toMicros(long d)  { return x(d//(/)); }
     public long toMillis(long d)  { return x(d//(/)); }
     public long toSeconds(long d) { return x(d//(/)); }
     public long toMinutes(long d) { return d; }
     public long toHours(long d)   { return d/(/); }
     public long toDays(long d)    { return d/(/); }
     public long convert(long dTimeUnit u) { return u.toMinutes(d); }
     int excessNanos(long dlong m) { return 0; }
   },
   HOURS {
     public long toNanos(long d)   { return x(d//(/)); }
     public long toMicros(long d)  { return x(d//(/)); }
     public long toMillis(long d)  { return x(d//(/)); }
     public long toSeconds(long d) { return x(d//(/)); }
     public long toMinutes(long d) { return x(d//(/)); }
     public long toHours(long d)   { return d; }
     public long toDays(long d)    { return d/(/); }
     public long convert(long dTimeUnit u) { return u.toHours(d); }
     int excessNanos(long dlong m) { return 0; }
   },
   DAYS {
     public long toNanos(long d)   { return x(d//(/)); }
     public long toMicros(long d)  { return x(d//(/)); }
     public long toMillis(long d)  { return x(d//(/)); }
     public long toSeconds(long d) { return x(d//(/)); }
     public long toMinutes(long d) { return x(d//(/)); }
     public long toHours(long d)   { return x(d//(/)); }
     public long toDays(long d)    { return d; }
     public long convert(long dTimeUnit u) { return u.toDays(d); }
     int excessNanos(long dlong m) { return 0; }
   };
 
   // Handy constants for conversion methods
   static final long C0 = 1L;
   static final long C1 =  * 1000L;
   static final long C2 =  * 1000L;
  static final long C3 =  * 1000L;
  static final long C4 =  * 60L;
  static final long C5 =  * 60L;
  static final long C6 =  * 24L;
  static final long MAX = .;
  static long x(long dlong mlong over) {
    if (d >  overreturn .;
    if (d < -overreturn .;
    return d * m;
  }
  // exceptions below changed from AbstractMethodError for GWT
  public long convert(long sourceDurationTimeUnit sourceUnit) {
    throw new AssertionError();
  }
  public long toNanos(long duration) {
    throw new AssertionError();
  }
  public long toMicros(long duration) {
    throw new AssertionError();
  }
  public long toMillis(long duration) {
    throw new AssertionError();
  }
  public long toSeconds(long duration) {
    throw new AssertionError();
  }
  public long toMinutes(long duration) {
    throw new AssertionError();
  }
  public long toHours(long duration) {
    throw new AssertionError();
  }
  public long toDays(long duration) {
    throw new AssertionError();
  }
  abstract int excessNanos(long dlong m);
New to GrepCode? Check out our FAQ X