@Override
  public boolean evaluate(Predicate predicate, Resource resource) {
    if (predicate instanceof EqualsPredicate) {
      EqualsPredicate equalsPredicate = (EqualsPredicate) predicate;
      String propertyId = equalsPredicate.getPropertyId();
      if (propertyId.equals(USER_USERNAME_PROPERTY_ID)) {
        return equalsPredicate.evaluateIgnoreCase(resource);
      }
    }
    return predicate.evaluate(resource);
  }
ResourcePredicateEvaluator implementation. If property type is User/user_name,
we do a case insensitive comparison so that we can return the retrieved
username when it differs only in case with respect to the requested username.

@param predicate the predicate
@param resource  the resource
@return
ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UserResourceProvider.java