public final class EvaluatorHelper extends Object
| Modifier and Type | Method and Description |
|---|---|
static boolean |
allEvaluatorsAreAvailable(JulianDate date,
IAvailability... evaluators)
Determines whether all evaluators in an array are available at a given time.
|
static boolean |
allEvaluatorsAreAvailable(JulianDate date,
IAvailability evaluator1)
Determines whether all evaluators given are available at a given time.
|
static boolean |
allEvaluatorsAreAvailable(JulianDate date,
IAvailability evaluator1,
IAvailability evaluator2)
Determines whether all evaluators given are available at a given time.
|
static boolean |
allEvaluatorsAreAvailable(JulianDate date,
IAvailability evaluator1,
IAvailability evaluator2,
IAvailability evaluator3)
Determines whether all evaluators given are available at a given time.
|
static <T extends IAvailability> |
allEvaluatorsAreAvailable(JulianDate date,
Iterable<T> evaluators)
Determines whether all evaluators in a collection are available at a given time.
|
static <T extends IThreadAware> |
allEvaluatorsAreThreadSafe(Iterable<T> evaluators)
Determines if every evaluator in a collection is thread safe.
|
static boolean |
allEvaluatorsAreThreadSafe(IThreadAware... evaluators)
Determines if every evaluator in an array is thread safe.
|
static boolean |
allEvaluatorsAreThreadSafe(IThreadAware evaluator1)
Determines if every evaluator given is thread safe.
|
static boolean |
allEvaluatorsAreThreadSafe(IThreadAware evaluator1,
IThreadAware evaluator2)
Determines if every evaluator given is thread safe.
|
static boolean |
allEvaluatorsAreThreadSafe(IThreadAware evaluator1,
IThreadAware evaluator2,
IThreadAware evaluator3)
Determines if every evaluator given is thread safe.
|
static <T extends IThreadAware> |
allEvaluatorsAreThreadSafe(TimeIntervalCollection1<T> collection)
|
static boolean |
anyEvaluatorIsTimeVarying(IIsTimeVarying... evaluators)
Determines if any of the evaluators in an array are time varying.
|
static boolean |
anyEvaluatorIsTimeVarying(IIsTimeVarying evaluator1)
Determines if any of the evaluators given are time varying.
|
static boolean |
anyEvaluatorIsTimeVarying(IIsTimeVarying evaluator1,
IIsTimeVarying evaluator2)
Determines if any of the evaluators given are time varying.
|
static boolean |
anyEvaluatorIsTimeVarying(IIsTimeVarying evaluator1,
IIsTimeVarying evaluator2,
IIsTimeVarying evaluator3)
Determines if any of the evaluators given are time varying.
|
static <T extends IIsTimeVarying> |
anyEvaluatorIsTimeVarying(Iterable<T> evaluators)
Determines if any of the evaluators in a collection are time varying.
|
static <T extends IIsTimeVarying> |
anyEvaluatorIsTimeVarying(TimeIntervalCollection1<T> collection)
|
static <T extends IDisposable> |
dispose(Iterable<T> evaluators)
A helper method to use to dispose of a collection of evaluators.
|
static TimeIntervalCollection |
getAvailabilityIntervals(TimeIntervalCollection consideredIntervals,
IAvailability... evaluators)
Computes availability intervals as the intersection of the availability of each evaluator in an array.
|
static TimeIntervalCollection |
getAvailabilityIntervals(TimeIntervalCollection consideredIntervals,
IAvailability evaluator1)
Computes availability intervals as the intersection of the availability of multiple evaluators.
|
static TimeIntervalCollection |
getAvailabilityIntervals(TimeIntervalCollection consideredIntervals,
IAvailability evaluator1,
IAvailability evaluator2)
Computes availability intervals as the intersection of the availability of multiple evaluators.
|
static TimeIntervalCollection |
getAvailabilityIntervals(TimeIntervalCollection consideredIntervals,
IAvailability evaluator1,
IAvailability evaluator2,
IAvailability evaluator3)
Computes availability intervals as the intersection of the availability of multiple evaluators.
|
static <T extends IAvailability> |
getAvailabilityIntervals(TimeIntervalCollection consideredIntervals,
Iterable<T> evaluators)
Computes availability intervals as the intersection of the availability of each evaluator in a collection.
|
static <T> void |
updateCollectionReferences(List<T> collection,
CopyContext context)
Updates the references in the collection using the specified
CopyContext. |
public static <T extends IDisposable> void dispose(@Nonnull Iterable<T> evaluators)
T - The type of evaluator in the collection.evaluators - A collection of evaluators.@Nonnull public static TimeIntervalCollection getAvailabilityIntervals(@Nonnull TimeIntervalCollection consideredIntervals, @Nonnull IAvailability... evaluators)
null are ignored.consideredIntervals - The intervals over which availability information is needed. Returned availability
intervals will be constrained to these intervals.evaluators - The array of evaluators.ArgumentNullException - Thrown when evaluators is null.@Nonnull public static TimeIntervalCollection getAvailabilityIntervals(@Nonnull TimeIntervalCollection consideredIntervals, @Nullable IAvailability evaluator1)
null are ignored.consideredIntervals - The intervals over which availability information is needed. Returned availability
intervals will be constrained to these intervals.evaluator1 - The first evaluator.@Nonnull public static TimeIntervalCollection getAvailabilityIntervals(@Nonnull TimeIntervalCollection consideredIntervals, @Nullable IAvailability evaluator1, @Nullable IAvailability evaluator2)
null are ignored.consideredIntervals - The intervals over which availability information is needed. Returned availability
intervals will be constrained to these intervals.evaluator1 - The first evaluator.evaluator2 - The second evaluator.@Nonnull public static TimeIntervalCollection getAvailabilityIntervals(@Nonnull TimeIntervalCollection consideredIntervals, @Nullable IAvailability evaluator1, @Nullable IAvailability evaluator2, @Nullable IAvailability evaluator3)
null are ignored.consideredIntervals - The intervals over which availability information is needed. Returned availability
intervals will be constrained to these intervals.evaluator1 - The first evaluator.evaluator2 - The second evaluator.evaluator3 - The third evaluator.@Nonnull public static <T extends IAvailability> TimeIntervalCollection getAvailabilityIntervals(@Nonnull TimeIntervalCollection consideredIntervals, @Nonnull Iterable<T> evaluators)
null are ignored.T - The type of evaluator.consideredIntervals - The intervals over which availability information is needed. Returned availability
intervals will be constrained to these intervals.evaluators - The collection of evaluators.ArgumentNullException - Thrown when evaluators is null.public static boolean allEvaluatorsAreThreadSafe(@Nonnull IThreadAware... evaluators)
null are ignored.evaluators - The array of evaluators.true if every non-null evaluator in the array is thread safe; otherwise false.ArgumentNullException - Thrown when evaluators is null.public static boolean allEvaluatorsAreThreadSafe(@Nullable IThreadAware evaluator1)
null are ignored.evaluator1 - The first evaluator.true if every non-null evaluator given is thread safe; otherwise false.public static boolean allEvaluatorsAreThreadSafe(@Nullable IThreadAware evaluator1, @Nullable IThreadAware evaluator2)
null are ignored.evaluator1 - The first evaluator.evaluator2 - The second evaluator.true if every non-null evaluator given is thread safe; otherwise false.public static boolean allEvaluatorsAreThreadSafe(@Nullable IThreadAware evaluator1, @Nullable IThreadAware evaluator2, @Nullable IThreadAware evaluator3)
null are ignored.evaluator1 - The first evaluator.evaluator2 - The second evaluator.evaluator3 - The third evaluator.true if every non-null evaluator given is thread safe; otherwise false.public static <T extends IThreadAware> boolean allEvaluatorsAreThreadSafe(@Nonnull Iterable<T> evaluators)
null are ignored.T - The type of evaluator.evaluators - The collection of evaluators.true if every evaluator in the collection is thread safe; otherwise false.ArgumentNullException - Thrown when evaluators is null.public static <T extends IThreadAware> boolean allEvaluatorsAreThreadSafe(@Nonnull TimeIntervalCollection1<T> collection)
Data (get)
in a TimeIntervalCollection1 is thread safe.
Any evaluators in the collection that are null are ignored.T - The type of evaluator.collection - The time interval collection.true if every evaluator in the collection is thread safe; otherwise false.public static boolean anyEvaluatorIsTimeVarying(@Nonnull IIsTimeVarying... evaluators)
null are ignored.evaluators - The array of evaluators.true if any non-null evaluator in the array is time varying; otherwise false.ArgumentNullException - Thrown when evaluators is null.public static boolean anyEvaluatorIsTimeVarying(@Nullable IIsTimeVarying evaluator1)
null are ignored.evaluator1 - The first evaluator.true if any non-null evaluator given is time varying; otherwise false.public static boolean anyEvaluatorIsTimeVarying(@Nullable IIsTimeVarying evaluator1, @Nullable IIsTimeVarying evaluator2)
null are ignored.evaluator1 - The first evaluator.evaluator2 - The second evaluator.true if any non-null evaluator given is time varying; otherwise false.public static boolean anyEvaluatorIsTimeVarying(@Nullable IIsTimeVarying evaluator1, @Nullable IIsTimeVarying evaluator2, @Nullable IIsTimeVarying evaluator3)
null are ignored.evaluator1 - The first evaluator.evaluator2 - The second evaluator.evaluator3 - The third evaluator.true if any non-null evaluator given is time varying; otherwise false.public static <T extends IIsTimeVarying> boolean anyEvaluatorIsTimeVarying(@Nonnull Iterable<T> evaluators)
null are ignored.T - The type of evaluator.evaluators - The collection of evaluators.true if any non-null evaluator in the collection is time varying; otherwise false.ArgumentNullException - Thrown when evaluators is null.public static <T extends IIsTimeVarying> boolean anyEvaluatorIsTimeVarying(@Nonnull TimeIntervalCollection1<T> collection)
Data (get)
in a TimeIntervalCollection1 is time-varying.
Any evaluators in the collection that are null are ignored.T - The type of evaluator.collection - The time interval collection.true if any evaluator in the collection is time varying,
or if the time interval collection is non-infinite; otherwise false.public static boolean allEvaluatorsAreAvailable(@Nonnull JulianDate date, @Nonnull IAvailability... evaluators)
date - The date at which to determine availability.evaluators - The array of evaluators.true if all evaluators in the array are available for the given date; otherwise false.ArgumentNullException - Thrown when evaluators is null.public static boolean allEvaluatorsAreAvailable(@Nonnull JulianDate date, @Nullable IAvailability evaluator1)
null are ignored.date - The date at which to determine availability.evaluator1 - The first evaluator.true if all non-null evaluators given are available for the given date; otherwise false.public static boolean allEvaluatorsAreAvailable(@Nonnull JulianDate date, @Nullable IAvailability evaluator1, @Nullable IAvailability evaluator2)
null are ignored.date - The date at which to determine availability.evaluator1 - The first evaluator.evaluator2 - The second evaluator.true if all non-null evaluators given are available for the given date; otherwise false.public static boolean allEvaluatorsAreAvailable(@Nonnull JulianDate date, @Nullable IAvailability evaluator1, @Nullable IAvailability evaluator2, @Nullable IAvailability evaluator3)
null are ignored.date - The date at which to determine availability.evaluator1 - The first evaluator.evaluator2 - The second evaluator.evaluator3 - The third evaluator.true if all non-null evaluators given are available for the given date; otherwise false.public static <T extends IAvailability> boolean allEvaluatorsAreAvailable(@Nonnull JulianDate date, @Nonnull Iterable<T> evaluators)
T - The type of evaluator.date - The date at which to determine availability.evaluators - The collection of evaluators.true if all evaluators in the collection are available for the given date; otherwise false.ArgumentNullException - Thrown when evaluators is null.public static <T> void updateCollectionReferences(@Nullable List<T> collection, @Nonnull CopyContext context)
CopyContext.
CopyContext#updateReference(T) is called for each element in the collection and the
result is assigned back to the same location in the collection.T - The type of element in the collection.collection - The collection.context - The context to use to update the references.