You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Marcono1234 (Jira)" <ji...@apache.org> on 2021/03/29 15:01:00 UTC

[jira] [Created] (LANG-1653) API visibility issues: Internal types are exposed in public API

Marcono1234 created LANG-1653:
---------------------------------

             Summary: API visibility issues: Internal types are exposed in public API
                 Key: LANG-1653
                 URL: https://issues.apache.org/jira/browse/LANG-1653
             Project: Commons Lang
          Issue Type: Bug
    Affects Versions: 3.12.0
            Reporter: Marcono1234


There are a few cases where public classes expose internal {{private}} types. These internal types prevent usage of the methods or fields exposing them.

Affected:
- {{org.apache.commons.lang3.ThreadUtils}}: Exposes private type {{AlwaysTruePredicate}} through field [{{ALWAYS_TRUE_PREDICATE}}|https://github.com/apache/commons-lang/blob/d1e9e598c9bcbf91afa174fa9b6c2ef30bbc8157/src/main/java/org/apache/commons/lang3/ThreadUtils.java#L148]
The field should probably instead have the type {{ThreadPredicate}}.
- {{org.apache.commons.lang3.time.FastDatePrinter}}: The following protected methods expose private types:
-- [{{selectNumberRule}}|https://github.com/apache/commons-lang/blob/d1e9e598c9bcbf91afa174fa9b6c2ef30bbc8157/src/main/java/org/apache/commons/lang3/time/FastDatePrinter.java#L385]: Exposes private {{NumberRule}}
-- [{{parsePattern}}|https://github.com/apache/commons-lang/blob/d1e9e598c9bcbf91afa174fa9b6c2ef30bbc8157/src/main/java/org/apache/commons/lang3/time/FastDatePrinter.java#L185]: Exposes private {{Rule}}




--
This message was sent by Atlassian Jira
(v8.3.4#803005)