001package org.kuali.common.util.condition; 002 003import java.util.Date; 004 005import com.google.common.base.Preconditions; 006 007public final class BeforeCondition implements Condition { 008 009 public BeforeCondition(Date date) { 010 this(date.getTime()); 011 } 012 013 public BeforeCondition(long millis) { 014 Preconditions.checkArgument(millis >= 0, "'millis' must be >= 0"); 015 this.millis = millis; 016 } 017 018 private final long millis; 019 020 @Override 021 public boolean isTrue() { 022 return System.currentTimeMillis() < millis; 023 } 024 025 public long getMillis() { 026 return millis; 027 } 028 029 public Date getDate() { 030 return new Date(millis); 031 } 032 033}