Uploaded image for project: 'Commons Lang'
  1. Commons Lang
  2. LANG-687

Convert more of the StringUtils API to take CharSequence

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 3.0
    • lang.*
    • None

    Description

      Use CharSequence and not String in the StringUtils API for non-mutating operations.

      Anything which has to choose between the mutable and immutable nature of CharSequence subclasses (i.e. takes a String and returns a String), should not be changed. Anything that does not mutate the input (even in spirit) should use CharSequence.

      Additionally there should be a unit test that uses reflection to confirm this rule is in place.

      Listing remaining methods to move to CharSequence:

      public static boolean equalsIgnoreCase(String str1, String str2) {
      public static int ordinalIndexOf(String str, String searchStr, int ordinal) {
      public static int indexOfIgnoreCase(String str, String searchStr) {
      public static int indexOfIgnoreCase(String str, String searchStr, int startPos) {
      public static int lastOrdinalIndexOf(String str, String searchStr, int ordinal) {
      public static int lastIndexOfIgnoreCase(String str, String searchStr) {
      public static int lastIndexOfIgnoreCase(String str, String searchStr, int startPos) {
      public static boolean containsIgnoreCase(String str, String searchStr) {
      public static int countMatches(String str, String sub) {
      public static boolean startsWith(String str, String prefix) {
      public static boolean startsWithIgnoreCase(String str, String prefix) {
      public static boolean startsWithAny(String string, String... searchStrings) {
      public static boolean endsWith(String str, String suffix) {
      public static boolean endsWithIgnoreCase(String str, String suffix) {
      public static boolean endsWithAny(String string, String... searchStrings) {

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              bayard Henri Yandell
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: