/* * (c) Copyright Reserved EVRYTHNG Limited 2016. All rights reserved. * Use of this material is subject to license. * Copying and unauthorised use of this material strictly prohibited. */ package com.evrythng.commons.validation.preconditions; public final class GreaterThanOrEqualTo<TARGET extends Comparable<TARGET>> extends AbstractPrecondition<TARGET> { private static final String NAME = "GREATER_THAN_OR_EQUAL_TO"; private final TARGET minimum; public static <T extends Comparable<T>> GreaterThanOrEqualTo<T> greaterThanOrEqualTo(final T minimum) { return new GreaterThanOrEqualTo<>(minimum); } private GreaterThanOrEqualTo(final TARGET minimum) { super(NAME); this.minimum = minimum; } @Override public final boolean test(final TARGET target) { return target.compareTo(minimum) >= 0; } }