You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@logging.apache.org by "Remko Popma (JIRA)" <ji...@apache.org> on 2018/01/27 06:58:00 UTC

[jira] [Created] (LOG4J2-2225) Move time-related implementation classes to `core.time.internal` from `util`

Remko Popma created LOG4J2-2225:
-----------------------------------

             Summary: Move time-related implementation classes to `core.time.internal` from `util`
                 Key: LOG4J2-2225
                 URL: https://issues.apache.org/jira/browse/LOG4J2-2225
             Project: Log4j 2
          Issue Type: Task
          Components: Core
    Affects Versions: 2.10.0
            Reporter: Remko Popma
            Assignee: Remko Popma
             Fix For: 2.11.0


As discussed on the mailing list in relation to LOG4J2-1883, in preparation for making log4j-core a Java 9 module, the Log4j community wants to start clarifying which classes are published and which classes are internal to Log4j2. 

The {{Clock}} and {{NanoClock}} interfaces in the {{util}} package are published extension points and will require a solution that doesn’t break existing implementations but still provides a migration path towards full modularization. It is likely that the util package will not be an exported package so there is an argument to move these interfaces into the new {{core.time}} package which _will_ be an exported package of the Java 9 log4j-core module.  

The Clock implementation classes and the {{ClockFactory}} class in the {{util}} package, although public, were intended for internal  Log4j usage and can be moved to {{core.time.internal}}. 

The {{NanoClock}} implementations can probably also be moved to {{core.time.internal}}. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)