Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.commons.collections4;
import java.util.Collection;
import org.apache.commons.collections4.functors.AllPredicate;
import org.apache.commons.collections4.functors.AndPredicate;
import org.apache.commons.collections4.functors.AnyPredicate;
import org.apache.commons.collections4.functors.EqualPredicate;
import org.apache.commons.collections4.functors.ExceptionPredicate;
import org.apache.commons.collections4.functors.FalsePredicate;
import org.apache.commons.collections4.functors.IdentityPredicate;
import org.apache.commons.collections4.functors.InstanceofPredicate;
import org.apache.commons.collections4.functors.InvokerTransformer;
import org.apache.commons.collections4.functors.NonePredicate;
import org.apache.commons.collections4.functors.NotNullPredicate;
import org.apache.commons.collections4.functors.NotPredicate;
import org.apache.commons.collections4.functors.NullIsExceptionPredicate;
import org.apache.commons.collections4.functors.NullIsFalsePredicate;
import org.apache.commons.collections4.functors.NullIsTruePredicate;
import org.apache.commons.collections4.functors.NullPredicate;
import org.apache.commons.collections4.functors.OnePredicate;
import org.apache.commons.collections4.functors.OrPredicate;
import org.apache.commons.collections4.functors.TransformedPredicate;
import org.apache.commons.collections4.functors.TransformerPredicate;
import org.apache.commons.collections4.functors.TruePredicate;
import org.apache.commons.collections4.functors.UniquePredicate;
/**
* PredicateUtils provides reference implementations and utilities
* for the Predicate functor interface. The supplied predicates are:
*
*
Invoker - returns the result of a method call on the input object
*
InstanceOf - true if the object is an instanceof a class
*
Equal - true if the object equals() a specified object
*
Identity - true if the object == a specified object
*
Null - true if the object is null
*
NotNull - true if the object is not null
*
Unique - true if the object has not already been evaluated
*
And/All - true if all of the predicates are true
*
Or/Any - true if any of the predicates is true
*
Either/One - true if only one of the predicate is true
*
Neither/None - true if none of the predicates are true
*
Not - true if the predicate is false, and vice versa
*
Transformer - wraps a Transformer as a Predicate
*
True - always return true
*
False - always return false
*
Exception - always throws an exception
*
NullIsException/NullIsFalse/NullIsTrue - check for null input
*
Transformed - transforms the input before calling the predicate
*
* All the supplied predicates are Serializable.
*
* @since 3.0
*/
public class PredicateUtils {
/**
* This class is not normally instantiated.
*/
private PredicateUtils() {}
// Simple predicates
//-----------------------------------------------------------------------------
/**
* Gets a Predicate that always throws an exception.
* This could be useful during testing as a placeholder.
*
* @param the type that the predicate queries
* @return the predicate
* @see ExceptionPredicate
*/
public static Predicate exceptionPredicate() {
return ExceptionPredicate.exceptionPredicate();
}
/**
* Gets a Predicate that always returns true.
*
* @param the type that the predicate queries
* @return the predicate
* @see TruePredicate
*/
public static Predicate truePredicate() {
return TruePredicate.truePredicate();
}
/**
* Gets a Predicate that always returns false.
*
* @param the type that the predicate queries
* @return the predicate
* @see FalsePredicate
*/
public static Predicate falsePredicate() {
return FalsePredicate.falsePredicate();
}
/**
* Gets a Predicate that checks if the input object passed in is null.
*
* @param the type that the predicate queries
* @return the predicate
* @see NullPredicate
*/
public static Predicate nullPredicate() {
return NullPredicate.nullPredicate();
}
/**
* Gets a Predicate that checks if the input object passed in is not null.
*
* @param the type that the predicate queries
* @return the predicate
* @see NotNullPredicate
*/
public static Predicate notNullPredicate() {
return NotNullPredicate.notNullPredicate();
}
/**
* Creates a Predicate that checks if the input object is equal to the
* specified object using equals().
*
* @param the type that the predicate queries
* @param value the value to compare against
* @return the predicate
* @see EqualPredicate
*/
public static Predicate equalPredicate(final T value) {
return EqualPredicate.equalPredicate(value);
}
/**
* Creates a Predicate that checks if the input object is equal to the
* specified object by identity.
*
* @param the type that the predicate queries
* @param value the value to compare against
* @return the predicate
* @see IdentityPredicate
*/
public static Predicate identityPredicate(final T value) {
return IdentityPredicate.identityPredicate(value);
}
/**
* Creates a Predicate that checks if the object passed in is of
* a particular type, using instanceof. A null input
* object will return false.
*
* @param type the type to check for, may not be null
* @return the predicate
* @throws NullPointerException if the class is null
* @see InstanceofPredicate
*/
public static Predicate