code: public static int indexOf(final String value, final String needle, int offset, boolean caseSensitive) {
          validate(value, NULL_STRING_PREDICATE, NULL_STRING_MSG_SUPPLIER);
          if (caseSensitive) {
              return value.indexOf(needle, offset);
          }
          return value.toLowerCase().indexOf(needle.toLowerCase(), offset);
      }
docs: The indexOf() method returns the index within the calling String of the first occurrence of the specified value, starting the search at fromIndex.
  Returns -1 if the value is not found.
  
  @param value         The input String
  @param needle        The search String
  @param offset        The offset to start searching from.
  @param caseSensitive boolean to indicate whether search should be case sensitive
  @return Returns position of first occurrence of needle.