@@ -0,0 +1,1165 @@
+package hudson.util;%0A%0Aimport hudson.Util;%0A%0A/**%0A * Represents a clock difference. Immutable.%0A *%0A * @author Kohsuke Kawaguchi%0A */%0Apublic final class ClockDifference %7B%0A    /**%0A     * The difference in milliseconds.%0A     *%0A     * Positive value means the slave is behind the master,%0A     * negative value means the slave is ahead of the master.%0A     */%0A    public final Long diff;%0A%0A    public ClockDifference(long value) %7B%0A        this.diff = value;%0A    %7D%0A%0A    /**%0A     * Returns true if the difference is big enough to be considered dangerous.%0A     */%0A    public boolean isDangerous() %7B%0A        return Math.abs(diff)%3E5000;%0A    %7D%0A%0A    /**%0A     * Gets the clock difference in HTML string.%0A     */%0A    public String toString() %7B%0A        if(-1000%3Cdiff && diff %3C1000)%0A            return %22In sync%22;  // clock is in sync%0A%0A        long abs = Math.abs(diff);%0A%0A        String s = Util.getTimeSpanString(abs);%0A        if(diff%3C0)%0A            s += %22 ahead%22;%0A        else%0A            s += %22 behind%22;%0A%0A        return s;%0A    %7D%0A    %0A    public String toHtml() %7B%0A        String s = toString();%0A        if(isDangerous())   s = %22%3Cspan class=error%3E%22+s+%22%3C/span%3E%22;%0A        return s;%0A    %7D%0A%7D%0A

added an object to represent the clock difference.