[
https://issues.apache.org/jira/browse/LANG-1752?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Saif Asif updated LANG-1752:
----------------------------
Description:
Overtime, more and more APIs are being added to the StringUtils class that are
a variation of existing APIs based on casing e.g `endsWithIgnoreCase` is just
`endsWith` with an additional boolean ignoreCase set to true.
{code:java}
public static boolean endsWithIgnoreCase(final CharSequence str, final
CharSequence suffix) {
return endsWith(str, suffix, true);
}
private static boolean endsWith(final CharSequence str, final CharSequence
suffix, final boolean ignoreCase) {}{code}
This leads to StringUtils class increasing in size.
I would like to propose that we refactor StringUtils class and move all
ignoreCase APIs to their own class e.g something like
{code:java}
StringUtilsIgnoreCase{code}
or so.
Since the refactoring will be huge, we can target for the next major version
(4.0?) and introduce `@deprecated` on the methods to give users enough time to
track and update their existing code bases.
What does the community think ?
was:
Overtime, more and more APIs are being added to the StringUtils class that are
a variation of existing APIs based on casing e.g `endsWithIgnoreCase` is just
`endsWith` with an additional boolean ignoreCase set to true.
{code:java}
public static boolean endsWithIgnoreCase(final CharSequence str, final
CharSequence suffix) {
return endsWith(str, suffix, true);
}
private static boolean endsWith(final CharSequence str, final CharSequence
suffix, final boolean ignoreCase) {}{code}
This leads to StringUtils class increasing in size.
I would like to propose that we refactor StringUtils class and move all
ignoreCase APIs to their own class e.g something like `StringUtilsIgnoreCase`
or so.
Since the refactoring will be huge, we can target for the next major version
(4.0?) and introduce `@deprecated` on the methods to give users enough time to
track and update their existing code bases.
What does the community think ?
> Seperating ignoresCase APIs from StringUtils
> --------------------------------------------
>
> Key: LANG-1752
> URL: https://issues.apache.org/jira/browse/LANG-1752
> Project: Commons Lang
> Issue Type: Improvement
> Affects Versions: 4.0
> Reporter: Saif Asif
> Priority: Major
>
> Overtime, more and more APIs are being added to the StringUtils class that
> are a variation of existing APIs based on casing e.g `endsWithIgnoreCase` is
> just `endsWith` with an additional boolean ignoreCase set to true.
> {code:java}
> public static boolean endsWithIgnoreCase(final CharSequence str, final
> CharSequence suffix) {
> return endsWith(str, suffix, true);
> }
> private static boolean endsWith(final CharSequence str, final CharSequence
> suffix, final boolean ignoreCase) {}{code}
>
> This leads to StringUtils class increasing in size.
> I would like to propose that we refactor StringUtils class and move all
> ignoreCase APIs to their own class e.g something like
> {code:java}
> StringUtilsIgnoreCase{code}
> or so.
> Since the refactoring will be huge, we can target for the next major version
> (4.0?) and introduce `@deprecated` on the methods to give users enough time
> to track and update their existing code bases.
> What does the community think ?
--
This message was sent by Atlassian Jira
(v8.20.10#820010)