
import java.lang.reflect.Array;
import java.util.Collection;
import java.util.Map;

import org.apache.commons.lang3.StringUtils;


public class Ognl
{
  public static boolean isEmpty(Object o)
    throws IllegalArgumentException
  {
    if (o == null) {
      return true;
    }
    if ((o instanceof String)) {
      if (((String)o).length() == 0)
        return true;
    }
    else if ((o instanceof Collection)) {
      if (((Collection)o).isEmpty())
        return true;
    }
    else if (o.getClass().isArray()) {
      if (Array.getLength(o) == 0)
        return true;
    }
    else {
      if (!(o instanceof Map)) {
        return false;
      }

      if (((Map)o).isEmpty()) {
        return true;
      }
    }

    return false;
  }

  public static boolean isNotEmpty(Object o)
  {
    return !isEmpty(o);
  }

  public static boolean contains(String str, String subStr) {
    boolean b = false;
    if ((!StringUtils.isBlank(str)) && (!StringUtils.isBlank(subStr))) {
      b = str.indexOf(subStr) >= 0;
    }
    return b;
  }

  public static boolean isBlank(String s) {
    return StringUtils.isBlank(s);
  }

  public static boolean isNotBlank(String s) {
    return StringUtils.isNotBlank(s);
  }
}