Uploaded image for project: 'Log4j 2'
  1. Log4j 2
  2. LOG4J2-2225

Move time-related implementation classes to `core.time.internal` from `util`

VotersWatch issueWatchersLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Task
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.10.0
    • 3.0.0
    • Core
    • None

    Description

      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.

      Attachments

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            rpopma Remko Popma
            rpopma Remko Popma
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment