You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by ma...@apache.org on 2021/06/06 22:48:51 UTC

[logging-log4j2] branch mean-bean-machine updated (45306c2 -> c83c9a1)

This is an automated email from the ASF dual-hosted git repository.

mattsicker pushed a change to branch mean-bean-machine
in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git.


    from 45306c2  Merge remote-tracking branch 'origin/master' into mean-bean-machine
     add a4a2418  Javadoc fixes
     add e916a15  [LOG4J2-2812] [JDBC] Throw a AppenderLoggingException instead of an NPE in the JDBC database manager.
     add 802fa4d  [LOG4J2-2812] [JDBC] Throw a AppenderLoggingException instead of an NPE in the JDBC database manager.
     add e2b952e  Add helpers.
     add b211efd  Remove jenkins ibm toolchain config
     add 83ac32a  Clean up Jenkins pipelines
     add dd313e8  Fix typo
     add 9c37b2f  Specify maven and jdk
     add 5f7f20e  Fail maven build at end
     add b9253bd  Add site target
     add e78d347  Add junit and spotbugs issue recorders
     add 8a86bd4  Split up issue recording
     add 36629a9  Update build badge
     add aef360e  Enable more code reporting
     add e3b77b4  Archive jars
     add b4fda7a  Enable fingerprints and faster pipelines
     add a8ee579  Increate timeout and compress build logs
     add dbff011  Simplify reporting
     add 287352e  Add more info on test failure
     add 979dc0d  Combine issue recorders into steps
     add 0e8fcc9  Add more build-related notifications
     add 8d34bc2  Use default toolchains config and deploy
     add a3f855f  Remove unnecessary jenkins maven toolchains files
     add 30dcf70  Only scan for todo items in java files
     add 115bd02  Use explicit toolchain file
     add d49d2e5  Fix toolchain locations
     add 6ddf470  Remove double notification
     add c69fd70  Remove unnecessary reply-to
     add 7db3f96  Revert "Remove unnecessary jenkins maven toolchains files"
     add 9a85972  Switch back to explicit toolchains
     add 39d019b  Move recording to post steps
     add a678b41  Add colons to icon
     add 97d1203  Use any agent for post recording
     add 064e614  Use icons that actually exist
     add a594287  Move issue recording to more sensible locations
     add cfca8f5  Get date in correct timezone
     add fe8d9f4  Disable deploying other samples
     add 1882c3c  Match build badge style with others
     add d9ba059  Rearrange pipeline and improve emails
     add 389b459  Add missing }
     add 3fa6b84  Add build badge for 2.x branch
     add e2087e6  Wrap in stage
     add 35d13e0  Give pseudo-stage a name
     add 8ab11ce  LOG4J2-1360 - Provide a Log4j implementation of System.Logger
     add 973687a  LOG4J2-1360 - Add site section
     add f70426d  LOG4J2-1360 - Fix the documentation links
     add 404eb08  LOG4J2-1360 - update changes.xml
     add a23d9a2  LOG4J2-1360 - Add Platform Logger to bom pom
     add d55fa66  Fix errors in poms
     add 63e5c46  Fix Mr. Jenkins' email signature
     add 9960279  Use C.UTF-8 locale
     add fbe2318  Fix Jenkins Windows build warning
     add a207365  Specify source encoding
     add 9d6ec84  LOG4J2-2815 - Allow Spring Boot applications to use composite configuratons.
     add f82cc90  LOG4J2-2815 - Allow Spring Boot applications to use composite configuratons.
     add 044119b  Fix erroneous usage of default locale
     add ead5761  Merge branch 'locale-fix' of https://github.com/trejkaz/logging-log4j2 into trejkaz-locale-fix
     add ef64ac4  LOG4J2-2817 -  Allow the file size action to parse the value without being sensitive to the current locale.
     add 021ef38  Merge branch 'trejkaz-locale-fix'
     add 98fb6b7  Remve unnecessary prereqs
     add b48b08d  LOG4J2-2818 - Allow Spring Lookup to return default and active profiles
     add ef52626  LOG4J2-2520 - Allow servlet context path to be retrive with /
     add cf85b7c  Colorize maven output in Jenkins
     add fb91a3d  [LOG4J2-2819] Add support for specifying an SSL configuration for SmtpAppender
     add fb8744f  Fix verifyHostName SSL option
     add e25baf3  Fix inheritence
     add 9834772  Remove -Djenkins property for windows CI build
     add d787956  LOG4J2-2793 - Unable to parse the log LEVEL when it ends with SPACE.
     add 2baf716  Merge branch 'master' of https://github.com/prasad-acit/logging-log4j2 into prasad-acit-master
     add ff07d4a  LOG4J2-2793 - Allow trailing and leading spaces in log level
     add a8fdc5b  Merge branch 'prasad-acit-master'
     add 5058663  LOG4J2-2814 - Fix Javadoc in ScriptPatternSelector
     add 8229ae4  LOG4J2-2813 - serializeToBytes was checking wrong variable for null
     add 808bfeb  LOG4J2-2810 - Add information about using a URL in log4j.configurationFile
     add 3efde38  Clean up and document Jenkinsfile
     add d7ea9e6  LOG4J2-2766,LOG4J2-2457 - Initialize PatternProcessor before trigging policy and allow file extension to be modified during reconfiguration
     add 4fea4ff  LOG4J2-2588 - Add option to restore printing timeMillis in the JsonLayout.
     add 7f74500  LOG4J2-2588 - Mark timeMillis as read only
     add 964dd4b  Support location info in GelfLayout
     add 1ea1353  follow the codestyle
     add 2700b88  LOG4J2-2824 - Implement requiresLocation in GelfLayout to reflect whether location information is used in the message Pattern.
     add f5a10dd  Add security page
     add e7a1d9d  Add license header
     add 648486f  LOG4J2-2824 - Fix NullPointerException in ThreadContextDataInjector
     add 9fe9fda  [LOG4J2-2844] Null pointer exception when no network interfaces are available.
     add 0d0d30c  Fix possible resource leaks in MongoDB tests.
     add 0daf5d2  Tests that the level is converted.
     add fd636be  Remove deprecated name.
     add 404b742  Don't hide ivarName.
     add d3f932a  Remove MongoDb3 deprecated code since we already register our LevelCodec.
     add c2b68b6  Javadoc.
     add 02b96f1  Refactor constants.
     add 0878b41  Can't use log4j-slf4j-impl in the tests because it causes a recursive call to Log4j since the MongoDB version 3 (as opposed to 2) uses SLF4J for its own logging. Use test scope for test-jar jars.
     add 0649932  Don't dump to the console during tests unless you really have to.
     add cf8aea0  [LOG4J2-2848] Create module log4j-mongodb4 to use new major version 4 MongoDB driver.
     add a529d8d  #335 Initial import of JsonTemplateLayout from LogstashLayout.
     add 0dccbdb  #335 Replace inline resolver DSL with JSON structure.
     add 1d47321  #335 Skip unresolvable entries.
     add 6debe00  #335 Fix reading of Windows paths in Uris.
     add f781fc5  #335 Remove redundant resolvability check.
     add 512bb4d  #335 Fix adoc typo.
     add 8591745  #335 Cosmetic changes.
     add bdc12dc  LOG4J2-2828 Preserve file permissions after rollover in RollingRandomAccessFileAppender. (#364)
     add 5a5f628  #335 Update ECS layout compatibility after feedback from Felix Barny.
     add e5ab9f8  #335 Update manual after feedback from Maurice Zeijen.
     add 5de107a  LOG4J2-2877 - Determine the container id to obtain container and image information
     add 4f841bc  LOG4J2-2877 - Determine the container id to obtain container and image information
     add c846b21  #335 Add fallbackKey to MessageResolver.
     add 631c660  #335 Fix broken ITs due to recent ECS layout changes.
     add 18750c1  #335 Allow non-String values in MapResolver.
     add f14654a  LOG4J2-2867 - Obtain ContextDataProviders asynchronously
     add f123ff5  LOG4J2-2867 - Obtain ContextDataProviders asynchronously
     add 26ee69e  #368 Enable GitHub Dependabot v2.
     add 39a17d9  Bump Jackson 2 version to 2.11.1.
     add c397c8d  LOG4J2-2749 #362 Manually copy the JacksonLayout test from release-2.x.
     add 2a53d68  LOG4J2-2344 #359 Fix exception message in PropertiesConfigurationBuilder#createFilter().
     add aa16cc4  #365 Remove extra curly opening bracket in docs.
     add 0c3b913  Reflect recent PR merges to changes.xml.
     add 762d163  LOG4J2-2764 Implement CI pipeline via GitHub Actions. (#379)
     add 79ba81d  Add annotations to EventTemplateAdditionalField builder
     add 6aa8713  Add ability to format message using PatternLayout
     add d39f1eb  Include thread context data
     add a50abb9  Update documentation based on changes to JsonTemplateLayout
     add 09b953c  #383 Improvements on "extending Log4J" docs. (Jan Materne)
     add a900da1  Update cloud.md: fixes and links
     add 1c2c57e  #335 Add PatternResolver to the manual.
     add 7b5aaa8  #335 Add nullEventDelimiterEnabled flag.
     add d3198f7  LOG4J2-2895: Async logging avoids blocking on Log4jThreads
     add ef28204  LOG4J2-2837: Disruptor and JUL no longer recursively start the AsyncLoggerDisruptor
     add d40bb6d  LOG4J2-2867: RingBufferLogEventTranslator uses a static ContextDataInjector
     add 8e152df  LOG4J2-2858: More flexible configuration of WaitStrategy of Disruptor (#361)
     add c76c0ae  changelog for LOG4J2-2858
     add 7c905c7  Replace {}} with {}
     add ec290e9  Merge pull request #385 from Thihup/fix-log4j1-msg
     add e09ddc3  Disable/migrate missing Jenkins plugins
     add 0f649a5  Fix comment syntax errors
     add a964628  Use text email template for notifications
     add 6d1c50d  Fix warning
     add 5cd3f80  Update parent pom
     add 261a3a9  Update build badges
     add 5fa4f93  Add logos for consistency
     add b98b510  Use a logo that exists
     add 60a73f6  LOG4J2-2898: Avoid initializing volatile fields with default values (#367)
     add e50d94c  LOG4J2-2898 changelog
     add 7b3f50c  Re-enable warnings-ng
     add 891ef05  Ensure latest builds are only ones running
     add 5ed4788  Move pipeline to logging-pipelines
     add fe57a50  LOG4J2-2880 - Add StackWalker benchmark. Revert back to using StackWalker.walk based on performance results
     add b963d7c  LOG4J2-2880 - Add StackWalker benchmark. Revert back to using StackWalker.walk based on performance results
     add ebbc7b7  Specify GitHub settings and .asf.yaml
     add 30c088e  Use simpler YAML syntax
     add 8e96002  Fix typo and add link
     add 7868fe3  Update build instructions and Dockerfile
     add 508fc30  LOG4J2-2882 - Add support for JUL filters
     add 76e78ca  Merge branch 'LOG4J2-2882' of https://github.com/ebourg/logging-log4j2 into ebourg-LOG4J2-2882
     add bf80fa4  Merge branch 'ebourg-LOG4J2-2882'
     add bdf3bbe  LOG4J2-2882 - update changes.xml
     add 23e8572  LOG4J2-2899: Fix log4j-1.2-api LogEventWrapper thread data accessors
     add 7189453  LOG4J2-2832: Updated strategy name to existing strategy `DirectFileRolloverStrategy`
     add 706f326  Merge branch 'LOG4J2-2832' of https://github.com/asbachb/logging-log4j2 into asbachb-LOG4J2-2832
     add 5e62ba5  Merge branch 'asbachb-LOG4J2-2832'
     add 8e69754  LOG4J2-2832 - update changes.xml
     add 7645980  LOG4J2-2859 - Fixed typos where mergeFactory should be mergeStrategy.
     add 9358051  [LOG4J2-2400] Initial implementation of RedisAppender. (#1)
     add cc409e2  Merge branch 'master' of https://github.com/kmeurer/logging-log4j2
     add c652d3a  Send strings rather than byte[] and depend on configuration objects.
     add 627365b  Refactor pool configuration to use BuilderFactory rather than Factory method.
     add 1a3656f  Add basic support for queueing logs.
     add bd1ca1c  Add tests to verify log queue operations.
     add a5f5253  Add support for retrying sends on failures with a max retry count.
     add 4b52653  Add tests for retries.
     add 1c51e71  Remove retries.
     add 794e9a7  Remove unnecessary String.valueOf().
     add 4f2c216  Rely on comma-separated key values rather than Array of Strings.
     add 964b562  Update docs and fix tests.
     add cd8f8d1  Improve docs and fix licenses.
     add 6fe8dc2  Clarify defaults and add YML configuration example.
     add 4acd0be  Minor cleanup work for static defaults and redis-specific naming.
     add 5a3c183  Send logs in bulk properly.
     add 898d7f5  Clean up unused imports.
     add 007c45b  Simplify offer fallback.
     add 5f09b4b  Further streamline flush semantics.
     add 8dd7145  Merge branch 'master' of https://github.com/nataliemeurer/logging-log4j2 into nataliemeurer-master
     add f810e8b  LOG4J2-2400 - Add Redis Appender
     add 5aef19e  Merge branch 'nataliemeurer-master'
     add 42525cf  Enable test annotations in github actions
     add 4fdf031  Fix some pom warnings
     add c4a942d  Remove duplicate plugin declaration
     add cdb416b  Fix more pom warnings
     add 37b7627  Rearrange workflow command
     add 61932e1  Split up test reports by platform
     add f0dc22b  Add rerun failing tests for CI
     add ea86649  LOG4J2-2875 - Rollover was failing to create directories when using a DirectFileRolloverStrategy
     add 3cdd1f3  LOG4J2-2883 - When When using DirectFileRolloverStrategy the file pattern was not being recalculated on size based rollover after a time based rollover had occurred.
     add f63a3ce  Test was failing on the last day of the month
     add 5f67313  LOG4J2-2901 - Missing configuration files should be ignored when creating a composite configuration
     add c0487ad  LOG4J2-2883 - Add unit test
     add 842c21e  LOG4J2-2894 - Fix spelling error in log line
     add dee42e8  Update CI URL
     add 2d5b761  Use both surefire and failsafe reports
     add 37027e8  [LOG4J2-2653] Add initial JUnit 5 support
     add 0886535  Unit test might create less than 3 files on first and last directory.
     add 1375a66  LOG4J2-2822 - Javadoc link in ThreadContext description was incorrect
     add 2b0839d  Simplify JUnit dependencies
     add 24b9f19  Upgrade org.apache.logging.log4j.message tests
     add 3aeaef1  [LOG4J2-2653] Migrate log4j-api to JUnit 5
     add c5b7b36  [LOG4J2-2653] Migrate log4j-api-java9 to JUnit 5
     add 60fab1e  Clean up warnings in log4j-api
     add f6578ea  LOG4J2-2908 - Move Spring Lookup and Spring properties to a new Spring Boot module
     add d0fe63a  Add MacOS to GitHub Actions.
     add 94051b9  Update Spring versions
     add 445fcb5  Remove Travis config
     add fcb5b5e  Update sample toolchains configs to match expected
     add 01eda1f  Use appropriate Jira component in changes report
     add 5471d9a  LOG4J2-2906 - Fix UnsupportedOperationException
     add cd30a5c  LOG4J2-2906 - document changes
     add fd02df6  LOG4J2-2892 - Add support for newline delimited messages in GelfLayout
     add 295940c  Better tests for newline and null delimiters in GelfLayoutTest
     add dcad4a8  Merge branch 'LOG4J2-2892' of https://github.com/jakluk/logging-log4j2 into jakluk-LOG4J2-2892
     add e2ec23e  LOG4J2-2892 - Allow GelfLayout to produce newline delimited events
     add 7e97246  Merge branch 'jakluk-LOG4J2-2892'
     add de29b31  added two articles recently published (#402)
     add 22c1f39  LOG4J2-2847 Extend Log4j-config.xsd (#360)
     add 21df99b  #335 Fix code typo in EnhancedGelf.json.
     add 86f3653  #335 Small fixes in the manual.
     add 21746ab  Mark TODO test as @Ignore
     add 8ed2aca  Use static inner class
     add 00598f2  [LOG4J2-2653] Migrate part of log4j-core to JUnit 5
     add e97f94c  Update logging-parent to 3
     add 5062912  Bump plexus-compiler-javac-errorprone from 2.8.5 to 2.8.7
     add 356263d  Merge pull request #403 from apache/dependabot/maven/org.codehaus.plexus-plexus-compiler-javac-errorprone-2.8.7
     add 6c490d6  Bump maven-resources-plugin from 3.0.2 to 3.2.0
     add 6e3668f  Merge pull request #398 from apache/dependabot/maven/org.apache.maven.plugins-maven-resources-plugin-3.2.0
     add c5c3234  Bump maven-checkstyle-plugin from 3.0.0 to 3.1.1
     add 03fbccb  Merge pull request #377 from apache/dependabot/maven/org.apache.maven.plugins-maven-checkstyle-plugin-3.1.1
     add b8c13af  Update log4j-bom parent pom to 3
     add 5550f68  Revert errorprone plexus upgrade
     add 4d14fe7  Update build badges
     add ffa6d94  [LOG4J2-2653] Migrate test to JUnit 5
     add f4461e0  Create SECURITY.md
     add a45b16d  mockito 3.5.5
     add b6344de  Merge pull request #400 from sullis/mockito-3.5.0
     add 20d6902  run CI build for pull requests
     add 6802f82  Merge pull request #401 from sullis/ci-gha-pull-request
     add 334448c  [LOG4J2-2653] Migrate pattern tests to JUnit 5
     add 05288f4  #335 Add Velocity support to JsonTemplateLayout manual.
     add 96956a2  #335 Rename JsonTemplateLayout artifact and package.
     add 58d9b49  Try improving RollingAppenderRestartTest to alleviate test report failures.
     add fcedbb2  Try improving RollingDirectSizeTimeNewDirectoryTest to alleviate test report failures.
     add 916b13f  Bump jackson2Version from 2.11.1 to 2.11.2
     add 3751f85  Bump commons-compress from 1.18 to 1.20
     add 1071514  Bump jctools-core from 1.2.1 to 3.1.0
     add 2c7d137  Bump maven-pmd-plugin from 3.10.0 to 3.13.0
     add 4b9e3c2  Bump org.apache.felix.framework from 5.6.10 to 6.0.3
     add 058024f  Bump jetty-util from 8.2.0.v20160908 to 9.4.31.v20200723
     add cdc6185  Update changes.xml.
     add 2e48bef  [LOG4J2-2653] Migrate lookup and net tests to JUnit 5
     add 23347b7  [LOG4J2-2653] Migrate layout tests to JUnit 5
     add 08b35a2  [LOG4J2-2653] Migrate filter and impl tests to JUnit 5
     add bccf597  Simplify concurrent test and improve Windows resiliency
     add e32cdde  [LOG4J2-2653] Migrate more tests to JUnit 5
     add 5da8b9c  Bump assertj-core from 3.14.0 to 3.17.1
     add 508ec22  Bump jeromq from 0.4.3 to 0.5.2
     add fdc596c  Remove extraneous copy of the source tree
     add 771dc35  Introduce annotation for JUnit 5 LCF tests
     add 4054886  Migrate some parameterized tests to JUnit 5
     add 018f72a  Fix Windows file removal errors
     add 1fb8aae  Support shutdown timeout in JUnit 5 extension
     add d017766  Migrate more tests to JUnit 5
     add cc996ca  LOG4J2-2919 Call ReliabilityStrategy's beforeStopAppenders() method before stopping AsyncAppenders to avoid errors caused by logging with AsyncAppender while system is reconfiguring Submitted by: gengyuanzhe <ge...@gmail.com>
     add 0e2ad68  Add tests for LOG4J2-1121 and LOG4J2-2919
     add c5fad55  Merge pull request #416 from gengyuanzhe/master
     add 424754e  Add changelog entry for LOG4J2-2919
     add 916c684  Revert "Introduce annotation for JUnit 5 LCF tests"
     add a1d7bea  Fix typos in config file
     add 8e28716  Revert "Bump org.apache.felix.framework from 5.6.10 to 6.0.3"
     add 6c3e3d8  Revert changes addition
     add 7c630ac  Migrate more config tests to JUnit 5
     add bcdc5e2  Migrate MemoryMappedFileAppender tests to JUnit 5
     add ce9d49f  Migrate more appender tests to JUnit 5
     add 1ca973b  Migrate rewrite tests to JUnit 5
     add 7be7b0f  Introduce StatusLoggerLevel test annotation
     add 521d4a3  Support clean up annotations on methods
     add ec76b14  Migrate rolling action tests to JUnit 5
     add 19ed193  Migrate some rolling tests to JUnit 5
     add eb9a794  Use ResourceLock for locale-related tests
     add ebe2071  [LOG4J2-2921] Enable parallel tests in log4j-api
     add 0a509bf  Update JUnit to 5.7.0
     add de4e43e  Enable forkCount of 1C in log4j-api tests
     add ac9643c  Specify resource lock for status logger extension
     add 9462a2f  (doc) Fix typos in manual
     add d6ae3ec  Merge pull request #420 from Marcono1234/marcono1234/site-typo-fixes
     add 16838a7  Migrate more tests to JUnit 5
     add efd4e65  Simplify spotbugs config
     add bf16de8  Revert "Migrate more tests to JUnit 5"
     add e382adb  Update spotbugs from 3.0.x to 4.0.x
     add 6bdc516  Disable spotbugs in log4j-perf
     add 8e697e3  Add changelog entry for LOG4J2-2889
     add e7af0e3  [LOG4J2-2889] HtmlLayout support datePattern and timezone
     add 8587d5b  [LOG4J2-2889] add doc for datePattern and timezone of HtmlLayout
     add d8a0d71  Fix DatePatternConverterTest bug, PDT is not a available timezone id.
     add 3421385  remove deprecated factory method of HtmlLayout
     add a0f4152  [LOG4J2-2889] Perfect the doc of HtmlLayout
     add 913e87d  Merge pull request #419 from gengyuanzhe/LOG4J2-2889
     add 7aef4f0  LOG4J2-2939: Fix NPE in MDCContextMap (#430)
     add d368e29  LOG4J2-2939 changelog
     add 8e4eb7a  LOG4J2-2911 - Log4j2EventListener in spring.cloud.config.client listens for wrong event.
     add 1ef19da  LOG4J2-2954 Retain strong reference to shutdown callbacks
     add a889a95  Only generate doap file in parent project. Revert Checkstyle plugin version change so site will build
     add a8d6e69  Try improving RollingDirectTimeNewDirectoryTest to alleviate test report failures.
     add f5d8780  Upload test reports in GitHub Actions.
     add 8682e35  Workarounds for Windows-specific "file being used by another process" failures.
     add 80f62c4  LOG4J2-620 ReconfigurationDeadlockTest rewrite to prevent spurious failures.
     add 5c938e1  Delete unused BasicLayout.
     add 17e074c  Catch all type of exceptions in AppenderControl.
     add 5127846  LOG4J2-2936 Add message parameter resolver to JSON template layout.
     add 0892fc6  Bump junit from 4.13 to 4.13.1
     add 5b0a153  LOG4J2-2936 Make JSON template layout message parameter resolver garbage-free.
     add 38df09d  Close RAFMs in RandomAccessFileManagerTest to avoid test failures on Windows.
     add c94d5d0  OG4J2-2850
     add b6eac5f  LOG4J2-2850 : LocalizedMessageFactory creates new message with baseName as messagePattern
     add 766ab74  LOG4j2-2850
     add a42def9  LOG4J2-2850 Fix indentation in LocalizedMessageFactoryTest.
     add 749ef13  Improve JTL TemplateResolver docs.
     add d71e0cf  Remove constants in JsonTemplateLayoutDefaults to allow updates at runtime.
     add 97db574  LOG4J2-2916 Avoid redundant Kafka producer instantiation causing thread leaks.
     add 2ab61df  LOG4J2-2961 Fix reading of JsonTemplateLayout event additional fields from config.
     add 7f5c24c  Try suppressing revapi errors regarding JSON Template Layout.
     add 581d543  Align JTL module with the one in release-2.x.
     add cd4aa20  Escape XML characters in JTL POM.
     add cf01a51  Replace enum singletons with final classes, as requested by Gary Gregory.
     add ee1328a  LOG4J2-2962 Enrich "map" resolver by unifying its backend with "mdc" resolver.
     add adf3758  Migrate JTL tests to JUnit 5.
     add 6db78fb  LOG4J2-2966 Replace String.valueOf() usages with ParameterizedMessage.deepToString().
     add d728835  LOG4J2-2967 Fix JTL parameter resolution for messages with too few parameters. (#443)
     add ab8753f  LOG4J2-2966 Revert the usage of ParameterizedMessage.deepToString().
     add 719de57  Update AbstractLoggerTest uncommenting java8 tests
     add 2dd4ebf  Log4j would fail to initialize in Java 8 with log4j-spring-boot
     add 86353b0  Update Spring dependencies to 5.3.2, Spring Boot to 2.3.6, and Spring Cloud to Hoxton.SR9
     add c72fe4f  revapi.plugin.version 0.10.5 -> 0.12.2.
     add 9ce8a89  revapi-java 0.18.2 -> 0.22.1.
     add d9e01a9  Add --no-transfer-progress Maven flag to GitHub Actions build.
     add c24f482  LOG4J2-2985 Add eventTemplateRootObjectKey parameter to JsonTemplateLayout. (#454)
     add be8d827  Collapse multiple identical catch clauses into one.
     add 58e823c  Fix formatting in log4j-spring-cloud-config-sample-application README (#461)
     add 6bf68b7  LOG4J2-2972 Refactor AsyncAppender and AppenderControl for handling of Throwables. (#452)
     add f96cf24  LOG4J2-2998 Fix truncation of excessive strings ending with a high surrogate in JsonWriter. (#457)
     add 2846aae  LOG4J2-2993 Support stack trace truncation in JsonTemplateLayout. (#458)
     add 2ad1498  LOG4J2-2999 Replace JsonTemplateLayout resolver configurations table in docs with sections.
     add 7ed3816  LOG4J2-2999 Add new entries to feature comparison matrix.
     add 9ca9230  Use Objects.hashCode() when there is only one item to hash.
     add 57b6298  LOG4J2-2972 Fix AsyncAppender builder annotation.
     add 9a28db3  LOG4J2-2973 Rename EventTemplateAdditionalField#type (conflicting with properties file parser) to #format. (#462)
     add 99269ba  LOG4J2-2973 Minor tweaks to previous work.
     add 59780eb  LOG4J2-2973 Add tests for JSON-formatted configuration.
     add 78c6699  [LOG4J2-3014] Log4j1ConfigurationConverter on Windows produces "&#xd;" at end of every line.
     add fb16ef3  LOG4J2-2977 Replace outdated PatternLayout.createLayout() calls in docs with createDefaultLayout(). (#453)
     add 988a1bd  LOG4J2-2977 Update changelog.
     add adfd2b7  Merge branch 'master' of https://gitbox.apache.org/repos/asf/logging-log4j2.git
     add 45c8674  LOG4J2-1606 LOG4J2-2624 Add flag to disable automatic log4j shutdown in log4j-web. (#463)
     add f9073f6  Upgrade log4j2-ecs-layout to 0.5.2.
     add febfa10  Fix compiler warnings in JsonTemplateLayout.
     add 402acee  Continue on error in GitHub Actions workflow build step.
     add b8f8b5a  Speed-up JsonWriterTest by using random increments.
     add 1dea59c  Document how to disable message pattern lookups (#450)
     add b7cae74  (doc) Fix Logger documentation formatting error (#424)
     add 3482450  LOG4J2-3006 - Directly create a thread instead of using the common ForkJoin pool when initializing ThreadContextDataInjector
     add 79b1568  test files must only be created in the target directory. Copied FileRenameActionTest from release-2.x
     add 11b8c17  LOG4J2-2990 - Reduce garbage by using putAll when copying the ThreadContext for SLF4J
     add 7d4aab6  Fixing typos in docs. (#465)
     add ff50835  Cut down test time by moving recycler-specific test schemes from Surefire executions to JUnit parameters.
     add 963db9f  Test RecyclerFactory read from XML config.
     add 7c73b15  Improve readability.
     add 943ded3  Sort methods.
     add 7847b82  [LOG4J2-3026] WatchManager does not stop its ConfigurationScheduler thereby leaking a thread.
     add 545816e  Revert "[LOG4J2-3026] WatchManager does not stop its ConfigurationScheduler thereby leaking a thread."
     add 8abfd92  Validate input in ctor.
     add 7c30c09  LOG4J2-2983 - Add unit test to validate reported scenario
     add 6454ff6  LOG4J2-2893 - Allow reconfiguration when Log4j 1 configuration files are updated.
     add b137f44  LOG4J2-2981 - OnStartupTriggeringPolicy would fail to cause the file to roll over with DirectWriteTriggeringPolicy unless minSize was set to 0
     add 74a8389  LOG4J2-3028: Always clear the OutputStreamManager buffer on flush
     add e300180  Shutdown log4j before deleting files
     add 52f07f2  LOG4J2-2923 - Add Rollover Listener to aid in unit test validation.
     add ce84841  I hate windows
     add e917bac  LOG4J2-2948 Replace HashSet with IdentityHashMap in ParameterFormatter to detect cycles. (#471)
     add 7dcdf0d  Fix unit test on Windows - I hope
     add e4cdfd2  LOG4J2-2947 - Mention default methods do nothing. Add log method with no parameters.
     add f52c6c6  Add LOG4J2-2947 to changes.xml
     add 57ab8e0  Clean up changes.xml.
     add da0f81f  LOG4J2-3033 - Add changes.xml entry
     add b345fbc  Log4j 2.14.1 was released
     add 5dcdd5d  LOG4J2-3041 - Allow GelfLayout to use PatternSelectors
     add 5ee62d9  LOG4J2-3044 - Add RepeatPatternConverter
     add 870b3e4  Note Java 6 & 7 are no longer supported
     add 84a9772  LOG4J2-3048 - Add improved MapMessge support to GelfLayout.
     add 62804d5  LOG4J2-3049 - Allow MapMessage and ThreadContext attributes to be prefixed
     add 0eecfd0  LOG4J2-3050 - Allow AdditionalFields to be ignored if their value is null or a zero-length String.
     add 6703c50  Make adding a prefix garbage free
     add 20f9a97  LOG4J2-3054: BasicContextSelector takes the default context into account
     add 79c187a  LOG4J2-2940: Context selectors are aware of ClassLoader dependency
     add d819f0a  LOG4J2-2940: Reduce StackWalker interactions accessing an slf4j logger instance
     add 702787e  LOG4J2-2940: Implement BasicAsyncLoggerContextSelector
     add 6027bae  BasicAsyncLoggerContextSelector documentation
     add 720e78d  Move to Java 11
     add d02f446  LOG4J2-3054: BasicContextSelector takes the default context into account
     add 459d7ad  LOG4J2-2940: Context selectors are aware of ClassLoader dependency
     add 07b0fad  LOG4J2-2940: Reduce StackWalker interactions accessing an slf4j logger instance
     add f42f81c  LOG4J2-2940: Implement BasicAsyncLoggerContextSelector
     add 2e0e3bc  BasicAsyncLoggerContextSelector documentation
     add e5cb987  Update github actions
     add e1b0d83  Upgrade Maven Bundle Plugin version
     add 8ffe5b7  Use a property to control the precision of the SystemClock
     add 60ae1e1  Add back annotations
     add 210dce1  Increase step timeout values
     add 9811f0a  Merge pull request #480 from apache/master-java11
     add 0c46b35  Remove extraneous module
     add ac559f2  Remove toolchains and properly override the compiler configuration
     add eccf352  More info on a failure. Increase max
     add 55480fc  Set timeout for Linux for consistency. Fix test bug
     add 8b02317  LOG4J2-3004 Add plugin support to JsonTemplateLayout. (#476)
     add c5d6b9f  Use the versoin from release-2.x
     add 543eb3a  Add spotbugs version
     add 46bb97a  Force a clean on every build
     add 63b8f29  Pass system property to process
     add b1e6b1f  Specify plugin package path
     add 3313e6f  Add clean step to log4j-plugins. Add wait to RollingAppenderRestartTest
     add a208714  Fix issue found by spotbugs
     add 6d3f268  LOG4J2-3056 Refactor MD5 usage for sharing sensitive information (#484)
     add 83e2806  LOG4J2-3064 - Add Arbiters and SpringProfile
     add 529f7aa  Ensure EncodingPatternConverter#handlesThrowable is implemented (#473)
     add 79d668a  LOG4J2-3070 Update changelog.
     add 0efe465  LOG4J2-2965: Fix JUL/AsyncLoggerContext deadlock
     add ee3201d  LOG4J2-3087 Fix race in JsonTemplateLayout where a timestamp could end up unquoted (#489)
     add ddd911a  LOG4J2-3051 Add CaseConverterResolver to JsonTemplateLayout (#490)
     add 0b050c1  More JPMS work
     add 84d731c  Add byte buddy dependency
     add 17fe6d3  Log4j-core is now a JPMS module
     add 2acc780  Add articles
     new b381d8d  Merge branch 'master' into mean-bean-machine
     add 226924f  [LOG4J2-3093] Fix up some test errors in newer JDK
     add ebf770a  LOG4J2-3075 Fix formatting of nanoseconds in JsonTemplateLayout. (#495)
     add cf293ae  Allow JsonLayout output JSON `null` for ContextMap (#496)
     add eb134e3  LOG4J2-3088 LOG4J2-3089 Fix windows build master (#491)
     add ed1b5e6  LOG4J2-3089 Fix sporadic JsonTemplateLayoutNullEventDelimiterTest failures on Windows.
     add 9b7b036  LOG4J2-3093 Fix line-number related failures in PatternSelectorTest.
     new 221b364  Merge branch 'master' into mean-bean-machine
     new 78e1f10  Replace java.beans use with BeanUtils
     add 1392351  [LOG4J2-3095] Category.setLevel should accept null value.
     add c49d7ae  Fix JEP 396 accessibility errors in tests
     new 788da26  Merge branch 'master' into mean-bean-machine
     add 98de189  Java 8 cleanups
     add 2cf9c22  Replace assert calls with simpler but equivalent calls. (#498)
     add 1a80f15  Add missing "final" modifiers. (#499)
     add e395e13  Use Math.max() or Math.min() instead of doing it manually (#500)
     add 3401968  Minor improvements. (#497)
     add 864cae0  Remove unused imports (#501)
     add 23eca6e  General code clean-up (#502)
     add 49e0222  LOG4J2-3092 Fix JsonWriter memory leaks due to retained excessive buffer growth.
     add fc4f663  LOG4J2-3103: Make listeners in LoggerContext a CopyOnWriteArrayList (#508)
     add 0295909  LOG4J2-3103 changelog
     add 97c89b9  Fix incorrect LogManager accessor used by LOG4J2-2940
     add e24e2e8  LOG4J2-3102: AsyncAppender background thread is a daemon
     new 317969f  Merge branch 'master' into mean-bean-machine
     new c83c9a1  Move DI SPI to log4j-core

The 6 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .asf.yaml                                          |   17 +
 .github/dependabot.yml                             |   24 +
 .github/workflows/main.yml                         |   75 +
 .github/workflows/maven-toolchains.xml             |   37 +
 .gitignore                                         |    1 +
 .mvn/wrapper/maven-wrapper.jar                     |  Bin 49519 -> 50710 bytes
 .mvn/wrapper/maven-wrapper.properties              |    3 +-
 .travis-toolchains.xml                             |   42 -
 .travis.yml                                        |   34 -
 BUILDING.md                                        |   12 +-
 Dockerfile                                         |   22 +-
 Jenkinsfile                                        |   94 -
 README.md                                          |   10 +-
 SECURITY.md                                        |   13 +
 log4j-1.2-api/pom.xml                              |   24 +-
 .../src/main/java/org/apache/log4j/Category.java   |    8 +-
 .../org/apache/log4j/bridge/LogEventAdapter.java   |    2 +-
 .../org/apache/log4j/bridge/LogEventWrapper.java   |   22 +-
 .../log4j/config/Log4j1ConfigurationConverter.java |   26 +-
 .../log4j/config/PropertiesConfiguration.java      |   21 +-
 .../java/org/apache/log4j/spi/ErrorHandler.java    |    2 +-
 .../log4j/xml/UnrecognizedElementHandler.java      |    2 +-
 .../org/apache/log4j/xml/XmlConfiguration.java     |   24 +-
 .../src/main/java/org/apache/log4j/Appender.java   |  143 -
 .../java/org/apache/log4j/AppenderSkeleton.java    |  177 -
 .../java/org/apache/log4j/BasicConfigurator.java   |   45 -
 .../src/main/java/org/apache/log4j/Category.java   |  571 ---
 .../java/org/apache/log4j/ConsoleAppender.java     |   52 -
 .../src/src/main/java/org/apache/log4j/Layout.java |   89 -
 .../src/src/main/java/org/apache/log4j/Level.java  |  252 --
 .../src/main/java/org/apache/log4j/LogManager.java |  251 --
 .../src/src/main/java/org/apache/log4j/Logger.java |   66 -
 .../src/src/main/java/org/apache/log4j/MDC.java    |   77 -
 .../src/src/main/java/org/apache/log4j/NDC.java    |  207 --
 .../main/java/org/apache/log4j/PatternLayout.java  |   40 -
 .../src/main/java/org/apache/log4j/Priority.java   |  239 --
 .../org/apache/log4j/PropertyConfigurator.java     |  126 -
 .../java/org/apache/log4j/RenderedMessage.java     |   60 -
 .../main/java/org/apache/log4j/SimpleLayout.java   |   46 -
 .../main/java/org/apache/log4j/WriterAppender.java |  378 --
 .../org/apache/log4j/bridge/AppenderAdapter.java   |   86 -
 .../org/apache/log4j/bridge/AppenderWrapper.java   |  101 -
 .../apache/log4j/bridge/ErrorHandlerAdapter.java   |   59 -
 .../org/apache/log4j/bridge/FilterAdapter.java     |   56 -
 .../org/apache/log4j/bridge/FilterWrapper.java     |   47 -
 .../org/apache/log4j/bridge/LayoutAdapter.java     |   73 -
 .../org/apache/log4j/bridge/LayoutWrapper.java     |   48 -
 .../org/apache/log4j/bridge/LogEventAdapter.java   |  217 --
 .../org/apache/log4j/builders/BooleanHolder.java   |   33 -
 .../org/apache/log4j/builders/BuilderManager.java  |   94 -
 .../java/org/apache/log4j/builders/Holder.java     |   39 -
 .../log4j/builders/appender/AppenderBuilder.java   |   33 -
 .../builders/appender/ConsoleAppenderBuilder.java  |  111 -
 .../appender/DailyRollingFileAppenderBuilder.java  |  146 -
 .../builders/appender/FileAppenderBuilder.java     |  135 -
 .../builders/appender/NullAppenderBuilder.java     |   43 -
 .../appender/RollingFileAppenderBuilder.java       |  170 -
 .../builders/filter/DenyAllFilterBuilder.java      |   46 -
 .../log4j/builders/filter/FilterBuilder.java       |   30 -
 .../builders/filter/LevelMatchFilterBuilder.java   |   74 -
 .../builders/filter/LevelRangeFilterBuilder.java   |   81 -
 .../builders/filter/StringMatchFilterBuilder.java  |   75 -
 .../log4j/builders/layout/HtmlLayoutBuilder.java   |   60 -
 .../log4j/builders/layout/LayoutBuilder.java       |   30 -
 .../builders/layout/PatternLayoutBuilder.java      |   77 -
 .../log4j/builders/layout/SimpleLayoutBuilder.java |   46 -
 .../log4j/builders/layout/TTCCLayoutBuilder.java   |  103 -
 .../log4j/builders/layout/XmlLayoutBuilder.java    |   59 -
 .../apache/log4j/config/InputStreamWrapper.java    |   92 -
 .../apache/log4j/config/Log4j1Configuration.java   |   57 -
 .../log4j/config/Log4j1ConfigurationConverter.java |  220 --
 .../log4j/config/Log4j1ConfigurationFactory.java   |   58 -
 .../log4j/config/Log4j1ConfigurationParser.java    |  446 ---
 .../org/apache/log4j/config/PropertySetter.java    |  287 --
 .../log4j/config/PropertySetterException.java      |   65 -
 .../java/org/apache/log4j/config/package-info.java |   20 -
 .../org/apache/log4j/helpers/NullEnumeration.java  |   47 -
 .../org/apache/log4j/helpers/OptionConverter.java  |  345 --
 .../java/org/apache/log4j/helpers/QuietWriter.java |   69 -
 .../org/apache/log4j/helpers/package-info.java     |   20 -
 .../org/apache/log4j/layout/Log4j1XmlLayout.java   |  159 -
 .../org/apache/log4j/legacy/core/CategoryUtil.java |   65 -
 .../org/apache/log4j/legacy/core/ContextUtil.java  |   34 -
 .../java/org/apache/log4j/or/ObjectRenderer.java   |   27 -
 .../java/org/apache/log4j/or/RendererSupport.java  |   26 -
 .../org/apache/log4j/or/ThreadGroupRenderer.java   |   57 -
 .../org/apache/log4j/or/jms/MessageRenderer.java   |   87 -
 .../main/java/org/apache/log4j/package-info.java   |   20 -
 .../log4j/pattern/Log4j1MdcPatternConverter.java   |   88 -
 .../log4j/pattern/Log4j1NdcPatternConverter.java   |   63 -
 .../org/apache/log4j/spi/AppenderAttachable.java   |   70 -
 .../java/org/apache/log4j/spi/Configurator.java    |   55 -
 .../main/java/org/apache/log4j/spi/ErrorCode.java  |   33 -
 .../java/org/apache/log4j/spi/ErrorHandler.java    |   98 -
 .../src/main/java/org/apache/log4j/spi/Filter.java |  100 -
 .../apache/log4j/spi/HierarchyEventListener.java   |   33 -
 .../java/org/apache/log4j/spi/LocationInfo.java    |   75 -
 .../java/org/apache/log4j/spi/LoggerFactory.java   |   33 -
 .../org/apache/log4j/spi/LoggerRepository.java     |  109 -
 .../java/org/apache/log4j/spi/LoggingEvent.java    |  131 -
 .../java/org/apache/log4j/spi/OptionHandler.java   |   26 -
 .../org/apache/log4j/spi/RepositorySelector.java   |   43 -
 .../org/apache/log4j/spi/ThrowableInformation.java |   69 -
 .../java/org/apache/log4j/spi/package-info.java    |   20 -
 .../java/org/apache/log4j/xml/DOMConfigurator.java |   80 -
 .../org/apache/log4j/xml/Log4jEntityResolver.java  |   51 -
 .../log4j/xml/UnrecognizedElementHandler.java      |   42 -
 .../apache/log4j/xml/XmlConfigurationFactory.java  |  926 -----
 .../java/org/apache/log4j/xml/package-info.java    |   20 -
 .../main/resources/org/apache/log4j/xml/log4j.dtd  |  237 --
 log4j-1.2-api/src/src/site/markdown/index.md       |   48 -
 log4j-1.2-api/src/src/site/site.xml                |   52 -
 .../apache/log4j/BasicConfigurationFactory.java    |   70 -
 .../org/apache/log4j/CallerInformationTest.java    |   65 -
 .../test/java/org/apache/log4j/CategoryTest.java   |  209 --
 .../src/test/java/org/apache/log4j/LevelTest.java  |  284 --
 .../test/java/org/apache/log4j/ListAppender.java   |   83 -
 .../test/java/org/apache/log4j/LogWithMDCTest.java |   57 -
 .../java/org/apache/log4j/LogWithRouteTest.java    |   58 -
 .../src/test/java/org/apache/log4j/LoggerTest.java |  525 ---
 .../test/java/org/apache/log4j/LoggingTest.java    |   43 -
 .../test/java/org/apache/log4j/MDCTestCase.java    |   49 -
 .../src/test/java/org/apache/log4j/NDCTest.java    |   36 -
 .../test/java/org/apache/log4j/PriorityTest.java   |  226 --
 .../test/java/org/apache/log4j/VelocityTest.java   |   61 -
 .../AbstractLog4j1ConfigurationConverterTest.java  |   68 -
 .../org/apache/log4j/config/AutoConfigTest.java    |   66 -
 .../Log4j1ConfigurationConverterHadoopTest.java    |   39 -
 .../Log4j1ConfigurationConverterSparkTest.java     |   39 -
 .../config/Log4j1ConfigurationFactoryTest.java     |  249 --
 .../log4j/config/XmlConfigurationFactoryTest.java  |   82 -
 .../apache/log4j/layout/Log4j1XmlLayoutTest.java   |   88 -
 .../pattern/Log4j1MdcPatternConverterTest.java     |   78 -
 .../pattern/Log4j1NdcPatternConverterTest.java     |   74 -
 .../apache/log4j/util/SerializationTestHelper.java |  148 -
 .../src/src/test/resources/L7D_en_US.properties    |   17 -
 .../src/src/test/resources/L7D_fr.properties       |   17 -
 .../src/src/test/resources/L7D_fr_CH.properties    |   16 -
 .../src/main/resources/log4j.properties            |   19 -
 .../hadoop-common/src/main/conf/log4j.properties   |  323 --
 .../src/test/resources/log4j.properties            |   18 -
 .../hadoop-kms/src/test/resources/log4j.properties |   31 -
 .../src/main/resources/log4j.properties            |   31 -
 .../hadoop-nfs/src/test/resources/log4j.properties |   18 -
 .../src/test/resources/log4j.properties            |   49 -
 .../bkjournal/src/test/resources/log4j.properties  |   55 -
 .../src/test/resources/log4j.properties            |   49 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   19 -
 .../hadoop-aws/src/test/resources/log4j.properties |   23 -
 .../src/test/resources/log4j.properties            |   25 -
 .../src/test/resources/log4j.properties            |   42 -
 .../src/main/sample-conf/log4j.properties          |   19 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   37 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   63 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   19 -
 .../log4j-DailyRollingFileAppender.properties      |   26 -
 .../config-1.2/log4j-NullAppender.properties       |    9 -
 ...log4j-RollingFileAppender-with-props.properties |   27 -
 .../log4j-RollingFileAppender.properties           |   22 -
 .../log4j-console-EnhancedPatternLayout.properties |   18 -
 .../config-1.2/log4j-console-HtmlLayout.properties |   19 -
 .../log4j-console-PatternLayout.properties         |   18 -
 .../log4j-console-SimpleLayout.properties          |   17 -
 .../config-1.2/log4j-console-TTCCLayout.properties |   19 -
 .../config-1.2/log4j-console-XmlLayout.properties  |   19 -
 .../config-1.2/log4j-file-SimpleLayout.properties  |   17 -
 .../log4j-system-properties-1.properties           |   14 -
 .../log4j-system-properties-2.properties           |   15 -
 .../resources/config-1.2/spark/R/log4j.properties  |   28 -
 .../src/test/resources/log4j.properties            |   27 -
 .../src/test/resources/log4j.properties            |   24 -
 .../spark/core/src/test/resources/log4j.properties |   36 -
 .../flume-sink/src/test/resources/log4j.properties |   28 -
 .../flume/src/test/resources/log4j.properties      |   28 -
 .../src/test/resources/log4j.properties            |   27 -
 .../kafka-0-10/src/test/resources/log4j.properties |   28 -
 .../kafka-0-8/src/test/resources/log4j.properties  |   28 -
 .../src/main/resources/log4j.properties            |   37 -
 .../src/test/resources/log4j.properties            |   27 -
 .../graphx/src/test/resources/log4j.properties     |   27 -
 .../launcher/src/test/resources/log4j.properties   |   33 -
 .../mllib/src/test/resources/log4j.properties      |   28 -
 .../spark/repl/src/test/resources/log4j.properties |   27 -
 .../catalyst/src/test/resources/log4j.properties   |   27 -
 .../sql/core/src/test/resources/log4j.properties   |   57 -
 .../sql/hive/src/test/resources/log4j.properties   |   61 -
 .../streaming/src/test/resources/log4j.properties  |   28 -
 .../spark/yarn/src/test/resources/log4j.properties |   31 -
 log4j-1.2-api/src/src/test/resources/hello.vm      |    6 -
 .../src/src/test/resources/log-RouteWithMDC.xml    |   47 -
 log4j-1.2-api/src/src/test/resources/log4j.xml     |   36 -
 .../src/src/test/resources/log4j1-file.xml         |   57 -
 .../src/src/test/resources/log4j1-list.xml         |   36 -
 .../src/src/test/resources/log4j2-config.xml       |   39 -
 .../src/src/test/resources/logWithMDC.xml          |   40 -
 .../test/resources/witness/serialization/info.bin  |  Bin 60 -> 0 bytes
 .../org/apache/log4j/CallerInformationTest.java    |    4 +-
 .../test/java/org/apache/log4j/CategoryTest.java   |   13 +-
 .../test/java/org/apache/log4j/LogWithMDCTest.java |    4 +-
 .../java/org/apache/log4j/LogWithRouteTest.java    |    4 +-
 .../src/test/java/org/apache/log4j/LoggerTest.java |    2 +-
 .../test/java/org/apache/log4j/LoggingTest.java    |    2 +-
 .../apache/log4j/bridge/LogEventWrapperTest.java   |   50 +
 .../AbstractLog4j1ConfigurationConverterTest.java  |   21 +-
 .../config/Log4j1ConfigurationFactoryTest.java     |    2 +-
 .../config/PropertiesReconfigurationTest.java      |   95 +
 .../apache/log4j/config/SyslogAppenderTest.java    |    4 +-
 .../log4j/config/XmlReconfigurationTest.java       |   96 +
 .../apache/log4j/layout/Log4j1XmlLayoutTest.java   |    2 +-
 .../pattern/Log4j1NdcPatternConverterTest.java     |    2 +-
 .../apache/log4j/util/SerializationTestHelper.java |    2 +
 log4j-api-java9/pom.xml                            |  153 -
 log4j-api-java9/src/assembly/java9.xml             |   44 -
 log4j-api-java9/src/main/java/module-info.java     |   28 -
 .../main/java/org/apache/logging/log4j/Dummy.java  |   24 -
 .../logging/log4j/log4j/util/PropertySource.java   |   24 -
 .../org/apache/logging/log4j/message/Dummy.java    |   24 -
 .../logging/log4j/message/ThreadDumpMessage.java   |   27 -
 .../org/apache/logging/log4j/simple/Dummy.java     |   24 -
 .../org/apache/logging/log4j/spi/Provider.java     |   24 -
 .../org/apache/logging/log4j/status/Dummy.java     |   24 -
 .../util/PrivateSecurityManagerStackTraceUtil.java |   34 -
 .../apache/logging/log4j/util/ProcessIdUtil.java   |   30 -
 .../apache/logging/log4j/util/StackLocator.java    |  110 -
 .../util/internal/DefaultObjectInputFilter.java    |  100 -
 .../logging/log4j/util/ProcessIdUtilTest.java      |   29 -
 .../logging/log4j/util/StackLocatorTest.java       |  152 -
 log4j-api/pom.xml                                  |  273 +-
 log4j-api/src/main/java/module-info.java           |   31 +
 .../main/java/org/apache/logging/log4j/Level.java  |    6 +-
 .../java/org/apache/logging/log4j/LogBuilder.java  |  121 +-
 .../java/org/apache/logging/log4j/LogManager.java  |   13 +-
 .../main/java/org/apache/logging/log4j/Logger.java |   14 +-
 .../org/apache/logging/log4j/ThreadContext.java    |    7 +-
 .../logging/log4j/internal/DefaultLogBuilder.java  |   63 +-
 .../log4j/internal/DefaultObjectInputFilter.java   |  100 +
 .../logging/log4j/internal/LogManagerStatus.java   |   33 +
 .../log4j/message/AbstractMessageFactory.java      |    3 +-
 .../log4j/message/BasicThreadInformation.java      |    6 +-
 .../logging/log4j/message/FormattedMessage.java    |    6 +-
 .../log4j/message/FormattedMessageFactory.java     |    3 +-
 .../logging/log4j/message/LocalizedMessage.java    |    2 +
 .../log4j/message/LocalizedMessageFactory.java     |    5 +-
 .../apache/logging/log4j/message/MapMessage.java   |   34 +-
 .../logging/log4j/message/MessageFactory.java      |   34 +-
 .../logging/log4j/message/MessageFactory2.java     |    1 +
 .../log4j/message/MessageFormatMessageFactory.java |    3 +-
 .../logging/log4j/message/ParameterConsumer.java   |    2 +-
 .../logging/log4j/message/ParameterFormatter.java  |  158 +-
 .../log4j/message/ParameterizedMessage.java        |    6 +-
 .../log4j/message/ParameterizedMessageFactory.java |    3 +-
 .../ParameterizedNoReferenceMessageFactory.java    |    1 +
 .../logging/log4j/message/ReusableMessage.java     |    2 +-
 .../log4j/message/ReusableObjectMessage.java       |    4 +-
 .../message/ReusableParameterizedMessage.java      |   26 +-
 .../log4j/message/ReusableSimpleMessage.java       |    2 +-
 .../log4j/message/SimpleMessageFactory.java        |    3 +-
 .../log4j/message/StringFormattedMessage.java      |    3 +-
 .../message/StringFormatterMessageFactory.java     |    1 +
 .../message/StructuredDataCollectionMessage.java   |   28 +-
 .../logging/log4j/message/StructuredDataId.java    |   15 +-
 .../log4j/message/StructuredDataMessage.java       |   14 +-
 .../logging/log4j/message/ThreadDumpMessage.java   |    5 +-
 .../apache/logging/log4j/simple/SimpleLogger.java  |    4 +-
 .../log4j/simple/SimpleLoggerContextFactory.java   |    5 +
 .../apache/logging/log4j/spi/AbstractLogger.java   |   30 +-
 .../logging/log4j/spi/AbstractLoggerAdapter.java   |    3 +-
 .../CopyOnWriteSortedArrayThreadContextMap.java    |   12 +-
 .../logging/log4j/spi/DefaultThreadContextMap.java |   16 +-
 .../log4j/spi/DefaultThreadContextStack.java       |    2 +-
 .../GarbageFreeSortedArrayThreadContextMap.java    |   10 +-
 .../apache/logging/log4j/spi/LoggerContext.java    |   35 +-
 .../logging/log4j/spi/LoggerContextFactory.java    |   20 +-
 .../apache/logging/log4j/spi/LoggerRegistry.java   |    7 +-
 .../log4j/spi/MutableThreadContextStack.java       |   15 +-
 .../logging/log4j/spi/ObjectThreadContextMap.java  |    3 +
 .../org/apache/logging/log4j/spi/Provider.java     |    4 +-
 .../apache/logging/log4j/spi/ThreadContextMap.java |    2 +-
 .../apache/logging/log4j/status/StatusData.java    |    2 +-
 .../org/apache/logging/log4j/util/Constants.java   |    4 +-
 .../log4j/util/FilteredObjectInputStream.java      |    5 +-
 .../log4j/util/IndexedReadOnlyStringMap.java       |    1 +
 .../org/apache/logging/log4j/util/LambdaUtil.java  |    1 +
 .../org/apache/logging/log4j/util/LoaderUtil.java  |   54 +-
 .../apache/logging/log4j/util/MessageSupplier.java |    2 +-
 .../org/apache/logging/log4j/util/NameUtil.java    |   43 +-
 .../logging/log4j/util/PerformanceSensitive.java   |    5 +-
 .../apache/logging/log4j/util/ProcessIdUtil.java   |   30 +
 .../apache/logging/log4j/util/PropertiesUtil.java  |   40 +-
 .../log4j/util/PropertyFilePropertySource.java     |    2 +-
 .../apache/logging/log4j/util/PropertySource.java  |   10 +-
 .../apache/logging/log4j/util/ProviderUtil.java    |    5 +-
 .../logging/log4j/util/ReadOnlyStringMap.java      |    1 +
 .../apache/logging/log4j/util/ReflectionUtil.java  |    2 +-
 .../logging/log4j/util/SortedArrayStringMap.java   |   35 +-
 .../apache/logging/log4j/util/StackLocator.java    |  220 +-
 .../logging/log4j/util/StackLocatorUtil.java       |   25 +-
 .../apache/logging/log4j/util/StringBuilders.java  |    6 +-
 .../org/apache/logging/log4j/util/Strings.java     |   64 +-
 .../log4j/util/SystemPropertiesPropertySource.java |    2 +-
 .../java/org/apache/logging/log4j/util/Timer.java  |   12 +-
 .../src/main/resources/META-INF/MANIFEST.MF        |    0
 log4j-api/src/test/java-test/module-info.java      |   32 +
 .../log4j/test/AbstractSerializationTest.java      |   50 +
 .../logging/log4j/test/SerializableMatchers.java   |   58 +
 .../org/apache/logging/log4j/test/TestLogger.java  |  202 ++
 .../logging/log4j/test/TestLoggerContext.java      |   69 +
 .../log4j/test/TestLoggerContextFactory.java       |   51 +
 .../logging/log4j/test/ThreadContextHolder.java    |   80 +
 .../logging/log4j/test/ThreadContextTest.java      |  194 ++
 .../log4j/test/ThreadContextUtilityClass.java      |  115 +
 .../test/junit/AbstractExternalFileCleaner.java    |  185 +
 .../log4j/test/junit/AbstractFileCleaner.java      |   90 +
 .../logging/log4j/test/junit/ClassMatchers.java    |   37 +
 .../logging/log4j/test/junit/CleanFiles.java       |   68 +
 .../logging/log4j/test/junit/CleanFolders.java     |  110 +
 .../log4j/test/junit/CleanUpDirectories.java       |   46 +
 .../logging/log4j/test/junit/CleanUpFiles.java     |   46 +
 .../logging/log4j/test/junit/DirectoryCleaner.java |   70 +
 .../logging/log4j/test/junit/FileCleaner.java      |   52 +
 .../junit/LogManagerLoggerContextFactoryRule.java  |   52 +
 .../test/junit/LoggerContextFactoryExtension.java  |   54 +
 .../apache/logging/log4j/test/junit/Mutable.java   |   35 +
 .../log4j/test/junit/SecurityManagerTestRule.java  |   94 +
 .../logging/log4j/test/junit/SerialUtil.java       |   65 +
 .../log4j/test/junit/StatusLoggerLevel.java        |   44 +
 .../test/junit/StatusLoggerLevelExtension.java     |   50 +
 .../logging/log4j/test/junit/StatusLoggerRule.java |   51 +
 .../log4j/test/junit/ThreadContextExtension.java   |   57 +
 .../log4j/test/junit/ThreadContextMapRule.java     |   40 +
 .../log4j/test/junit/ThreadContextRule.java        |   81 +
 .../log4j/test/junit/ThreadContextStackRule.java   |   39 +
 .../test/junit/URLStreamHandlerFactoryRule.java    |   97 +
 .../log4j/test/junit/UsingAnyThreadContext.java    |   45 +
 .../log4j/test/junit/UsingThreadContextMap.java    |   45 +
 .../log4j/test/junit/UsingThreadContextStack.java  |   45 +
 log4j-api/src/test/java/module-info.java           |   35 +
 .../apache/logging/log4j/AbstractLoggerTest.java   |  184 +-
 .../logging/log4j/AbstractSerializationTest.java   |   50 -
 .../logging/log4j/CloseableThreadContextTest.java  |  127 +-
 .../org/apache/logging/log4j/EventLoggerTest.java  |   24 +-
 .../org/apache/logging/log4j/LambdaLoggerTest.java |   18 +-
 .../java/org/apache/logging/log4j/LevelTest.java   |   21 +-
 .../org/apache/logging/log4j/LogManagerTest.java   |   68 +-
 .../apache/logging/log4j/LoggerSupplierTest.java   |  423 +--
 .../java/org/apache/logging/log4j/LoggerTest.java  | 1260 +++----
 .../java/org/apache/logging/log4j/MarkerTest.java  |   37 +-
 .../logging/log4j/NoopThreadContextTest.java       |   17 +-
 .../apache/logging/log4j/SerializableMatchers.java |   58 -
 .../java/org/apache/logging/log4j/TestLogger.java  |  199 --
 .../apache/logging/log4j/TestLoggerContext.java    |   68 -
 .../logging/log4j/TestLoggerContextFactory.java    |   46 -
 .../org/apache/logging/log4j/TestProvider.java     |    1 +
 .../apache/logging/log4j/ThreadContextHolder.java  |   79 -
 .../log4j/ThreadContextInheritanceTest.java        |   54 +-
 .../apache/logging/log4j/ThreadContextTest.java    |  193 --
 .../logging/log4j/ThreadContextUtilityClass.java   |  116 -
 .../org/apache/logging/log4j/TraceLoggingTest.java |   28 +-
 .../log4j/junit/AbstractExternalFileCleaner.java   |  185 -
 .../apache/logging/log4j/junit/ClassMatchers.java  |   37 -
 .../org/apache/logging/log4j/junit/CleanFiles.java |   68 -
 .../apache/logging/log4j/junit/CleanFolders.java   |  106 -
 .../junit/LogManagerLoggerContextFactoryRule.java  |   49 -
 .../org/apache/logging/log4j/junit/Mutable.java    |   35 -
 .../log4j/junit/SecurityManagerTestRule.java       |   94 -
 .../org/apache/logging/log4j/junit/SerialUtil.java |   65 -
 .../logging/log4j/junit/StatusLoggerRule.java      |   49 -
 .../logging/log4j/junit/ThreadContextMapRule.java  |   37 -
 .../logging/log4j/junit/ThreadContextRule.java     |   78 -
 .../log4j/junit/ThreadContextStackRule.java        |   37 -
 .../log4j/junit/URLStreamHandlerFactoryRule.java   |   97 -
 .../log4j/message/FormattedMessageTest.java        |   28 +-
 .../log4j/message/LocalizedMessageFactoryTest.java |   15 +-
 .../log4j/message/LocalizedMessageTest.java        |   21 +-
 .../logging/log4j/message/MapMessageTest.java      |   16 +-
 .../MessageFormatMessageSerializationTest.java     |    6 +-
 .../log4j/message/MessageFormatMessageTest.java    |   24 +-
 .../log4j/message/MessageFormatsPerfTest.java      |   12 +-
 .../log4j/message/ObjectArrayMessageTest.java      |   82 +-
 .../logging/log4j/message/ObjectMessageTest.java   |   17 +-
 .../log4j/message/ParameterFormatterTest.java      |   31 +-
 .../log4j/message/ParameterizedMessageTest.java    |   10 +-
 .../log4j/message/ReusableMessageFactoryTest.java  |    8 +-
 .../log4j/message/ReusableObjectMessageTest.java   |    4 +-
 .../message/ReusableParameterizedMessageTest.java  |   10 +-
 .../log4j/message/ReusableSimpleMessageTest.java   |    4 +-
 .../logging/log4j/message/SimpleMessageTest.java   |    4 +-
 .../log4j/message/StringFormattedMessageTest.java  |   32 +-
 .../log4j/message/StructuredDataMessageTest.java   |    9 +-
 .../log4j/message/ThreadDumpMessageTest.java       |   33 +-
 .../logging/log4j/simple/SimpleLoggerTest.java     |   17 +-
 .../log4j/spi/DefaultThreadContextMapTest.java     |   18 +-
 .../log4j/spi/DefaultThreadContextStackTest.java   |   27 +-
 .../logging/log4j/spi/LoggerAdapterTest.java       |   19 +-
 .../log4j/spi/MutableThreadContextStackTest.java   |   56 +-
 .../status/StatusLoggerSerializationTest.java      |    2 +-
 .../org/apache/logging/log4j/util/AssertTest.java  |   26 +-
 .../org/apache/logging/log4j/util/CharsTest.java   |   36 +-
 .../apache/logging/log4j/util/ConstantsTest.java   |    4 +-
 .../logging/log4j/util/DeserializerHelper.java     |    1 +
 ...EnvironmentPropertySourceSecurityManagerIT.java |    6 +-
 .../log4j/util/EnvironmentPropertySourceTest.java  |   24 +-
 .../apache/logging/log4j/util/LambdaUtilTest.java  |   72 +-
 .../util/LegacyPropertiesCompatibilityTest.java    |   26 +-
 .../apache/logging/log4j/util/LoaderUtilTest.java  |   15 +-
 .../log4j/util/Log4jCharsetsPropertiesTest.java    |   15 +-
 .../log4j/util/PropertiesPropertySourceTest.java   |   21 +-
 .../logging/log4j/util/PropertiesUtilTest.java     |   28 +-
 ...ropertyFilePropertySourceSecurityManagerIT.java |   14 +-
 .../log4j/util/PropertySourceCamelCaseTest.java    |   24 +-
 .../log4j/util/PropertySourceTokenizerTest.java    |   24 +-
 .../logging/log4j/util/ProviderUtilTest.java       |   16 +-
 .../log4j/util/SortedArrayStringMapTest.java       |  300 +-
 .../logging/log4j/util/StackLocatorUtilTest.java   |   14 +-
 .../logging/log4j/util/StringBuildersTest.java     |   16 +-
 .../org/apache/logging/log4j/util/StringsTest.java |   64 +-
 ...mPropertiesPropertySourceSecurityManagerIT.java |   11 +-
 .../util/SystemPropertiesPropertySourceTest.java   |   44 +-
 .../org/apache/logging/log4j/util/Unbox1Test.java  |   53 +-
 .../logging/log4j/util/Unbox2ConfigurableTest.java |   33 +-
 .../resources/Log4j-charsets.properties            |    0
 log4j-appserver/pom.xml                            |   20 +-
 log4j-bom/pom.xml                                  |   41 +-
 log4j-cassandra/pom.xml                            |   38 +-
 .../log4j/cassandra/CassandraAppenderIT.java       |    4 +-
 log4j-core-its/pom.xml                             |   29 +-
 .../logging/log4j/FilterPerformanceComparison.java |    2 +-
 .../logging/log4j/PerformanceComparison.java       |    4 +-
 .../org/apache/logging/log4j/PerformanceRun.java   |    4 +-
 .../apache/logging/log4j/core/SimplePerfTest.java  |   93 +-
 .../logging/log4j/core/ThreadedPerfTest.java       |    2 +-
 .../apache/logging/log4j/core/ThreadedTest.java    |    4 +-
 .../log4j/core/appender/HttpAppenderTest.java      |    4 +-
 .../appender/JsonCompleteFileAppenderTest.java     |   10 +-
 .../SecureSocketAppenderSocketOptionsTest.java     |    6 +-
 .../appender/SocketAppenderBufferSizeTest.java     |    4 +-
 .../appender/SocketAppenderSocketOptionsTest.java  |    4 +-
 .../log4j/core/appender/SocketAppenderTest.java    |    2 +-
 .../core/appender/XmlCompactFileAppenderTest.java  |    4 +-
 .../XmlCompactFileAppenderValidationTest.java      |    2 +-
 .../XmlCompactFileAsyncAppenderValidationTest.java |    4 +-
 .../core/appender/XmlCompleteFileAppenderTest.java |    8 +-
 .../log4j/core/appender/XmlFileAppenderTest.java   |    4 +-
 .../appender/XmlRandomAccessFileAppenderTest.java  |    4 +-
 log4j-core-java9/pom.xml                           |  150 -
 log4j-core-java9/src/assembly/java9.xml            |   51 -
 .../org/apache/logging/log4j/core/util/Clock.java  |   32 -
 .../apache/logging/log4j/core/util/Instant.java    |   75 -
 .../logging/log4j/core/util/MutableInstant.java    |  155 -
 .../logging/log4j/core/util/PreciseClock.java      |   36 -
 .../logging/log4j/core/util/SystemClock.java       |   44 -
 .../org/apache/logging/log4j/core/util/Dummy.java  |   24 -
 log4j-core/README.md                               |   37 +
 log4j-core/pom.xml                                 |  331 +-
 log4j-core/src/main/assembly/test-resources.xml    |   33 +
 .../org/apache/logging/log4j/core/LifeCycle2.java  |    2 -
 .../org/apache/logging/log4j/core/LogEvent.java    |    1 -
 .../apache/logging/log4j/core/LoggerContext.java   |   25 +-
 .../log4j/core/appender/AbstractManager.java       |    7 +-
 .../logging/log4j/core/appender/AsyncAppender.java |  140 +-
 .../appender/AsyncAppenderEventDispatcher.java     |  175 +
 .../log4j/core/appender/FailoverAppender.java      |    3 +-
 .../logging/log4j/core/appender/FileManager.java   |    7 +-
 .../core/appender/HttpURLConnectionManager.java    |    3 +-
 .../core/appender/MemoryMappedFileManager.java     |   12 +-
 .../log4j/core/appender/OutputStreamManager.java   |   12 +-
 .../log4j/core/appender/RollingFileAppender.java   |    2 +-
 .../rolling/CompositeTriggeringPolicy.java         |    1 -
 .../appender/rolling/CronTriggeringPolicy.java     |    1 -
 .../appender/rolling/DefaultRolloverStrategy.java  |    2 +-
 .../log4j/core/appender/rolling/FileExtension.java |    2 +-
 .../log4j/core/appender/rolling/FileSize.java      |    2 +-
 .../rolling/OnStartupTriggeringPolicy.java         |    3 +-
 .../core/appender/rolling/PatternProcessor.java    |   11 +-
 .../core/appender/rolling/RollingFileManager.java  |   80 +-
 .../rolling/RollingRandomAccessFileManager.java    |   12 +-
 .../core/appender/rolling/RolloverListener.java    |   37 +
 .../rolling/action/AbstractPathAction.java         |    2 +-
 .../core/appender/rolling/action/DeleteAction.java |    6 +-
 .../core/appender/routing/RoutingAppender.java     |    2 +-
 .../core/async/AsyncLoggerConfigDisruptor.java     |   10 +-
 .../log4j/core/async/AsyncLoggerDisruptor.java     |   13 +-
 .../async/BasicAsyncLoggerContextSelector.java     |   83 +
 .../core/async/DefaultAsyncQueueFullPolicy.java    |    9 +-
 .../logging/log4j/core/async/DisruptorUtil.java    |   64 +-
 .../log4j/core/async/RingBufferLogEvent.java       |    1 -
 .../core/async/RingBufferLogEventTranslator.java   |    4 +-
 .../log4j/core/config/AbstractConfiguration.java   |  121 +-
 .../logging/log4j/core/config/AppenderControl.java |    8 +-
 .../log4j/core/config/ConfigurationFactory.java    |   74 +-
 .../log4j/core/config/ConfigurationScheduler.java  |   28 +-
 .../log4j/core/config/ConfigurationSource.java     |   62 +-
 .../logging/log4j/core/config/Configurator.java    |   22 +
 .../core/config/LockingReliabilityStrategy.java    |    2 +-
 .../log4j/core/config/arbiters/Arbiter.java        |   27 +
 .../log4j/core/config/arbiters/ClassArbiter.java   |   75 +
 .../log4j/core/config/arbiters/DefaultArbiter.java |   53 +
 .../log4j/core/config/arbiters/ScriptArbiter.java  |  121 +
 .../log4j/core/config/arbiters/SelectArbiter.java  |   64 +
 .../config/arbiters/SystemPropertyArbiter.java     |   93 +
 .../builder/impl/DefaultConfigurationBuilder.java  |   66 +-
 .../core/config/di/AmbiguousBeanException.java     |   28 +
 .../log4j/core/config/di/DefinitionException.java  |   24 +
 .../core/config/di/IllegalProductException.java    |   24 +
 .../core/config/di/InitializationException.java    |   24 +
 .../log4j/core/config/di/InjectionException.java   |   28 +
 .../log4j/core/config/di/ResolutionException.java  |   24 +
 .../core/config/di/UnsatisfiedBeanException.java   |   32 +
 .../log4j/core/config/di/ValidationException.java  |   27 +
 .../log4j/core/config/di/api/bean/Bean.java        |   50 +
 .../log4j/core/config/di/api/bean/BeanManager.java |  113 +
 .../config/di/api/bean/InitializationContext.java  |   54 +
 .../core/config/di/api/bean/InjectionTarget.java   |   34 +
 .../config/di/api/bean/InjectionTargetFactory.java |   22 +
 .../log4j/core/config/di/api/bean/Injector.java    |   43 +
 .../log4j/core/config/di/api/bean/Producer.java    |   37 +
 .../core/config/di/api/bean/ProducerFactory.java   |   23 +
 .../core/config/di/api/bean/ProviderFactory.java   |   24 +
 .../core/config/di/api/bean/ScopeContext.java      |   63 +
 .../core/config/di/api/model/ElementManager.java   |  152 +
 .../core/config/di/api/model/InjectionPoint.java   |   56 +
 .../core/config/di/api/model/MetaAnnotation.java   |   27 +
 .../config/di/api/model/MetaAnnotationElement.java |   24 +
 .../log4j/core/config/di/api/model/MetaClass.java  |   42 +
 .../core/config/di/api/model/MetaConstructor.java  |   22 +
 .../core/config/di/api/model/MetaElement.java      |   56 +
 .../core/config/di/api/model/MetaExecutable.java   |   24 +
 .../log4j/core/config/di/api/model/MetaField.java  |   24 +
 .../log4j/core/config/di/api/model/MetaMember.java |   24 +
 .../log4j/core/config/di/api/model/MetaMethod.java |   22 +
 .../core/config/di/api/model/MetaParameter.java    |   21 +
 .../log4j/core/config/di/api/model/Qualifiers.java |   87 +
 .../log4j/core/config/di/api/model/Variable.java   |   46 +
 .../core/config/di/impl/bean/AbstractBean.java     |   74 +
 .../core/config/di/impl/bean/AbstractProducer.java |   74 +
 .../di/impl/bean/AbstractProducerFactory.java      |   43 +
 .../config/di/impl/bean/DefaultBeanManager.java    |  424 +++
 .../di/impl/bean/DefaultInitializationContext.java |  134 +
 .../di/impl/bean/DefaultInjectionTarget.java       |  125 +
 .../impl/bean/DefaultInjectionTargetFactory.java   |  111 +
 .../core/config/di/impl/bean/DefaultInjector.java  |   84 +
 .../config/di/impl/bean/DefaultScopeContext.java   |   72 +
 .../config/di/impl/bean/DependentScopeContext.java |   58 +
 .../core/config/di/impl/bean/FieldProducer.java    |   59 +
 .../config/di/impl/bean/FieldProducerFactory.java  |   45 +
 .../config/di/impl/bean/InjectionTargetBean.java   |   86 +
 .../core/config/di/impl/bean/MethodProducer.java   |   62 +
 .../config/di/impl/bean/MethodProducerFactory.java |   47 +
 .../core/config/di/impl/bean/OptionalBean.java     |   85 +
 .../core/config/di/impl/bean/ProducerBean.java     |   94 +
 .../core/config/di/impl/bean/ProvidedBean.java     |   36 +
 .../core/config/di/impl/bean/ProviderBean.java     |   37 +
 .../log4j/core/config/di/impl/bean/SystemBean.java |   68 +
 .../di/impl/model/AbstractMetaExecutable.java      |   44 +
 .../config/di/impl/model/AbstractMetaMember.java   |   74 +
 .../di/impl/model/DefaultElementManager.java       |  197 ++
 .../di/impl/model/DefaultInjectionPoint.java       |   98 +
 .../di/impl/model/DefaultMetaAnnotation.java       |  112 +
 .../impl/model/DefaultMetaAnnotationElement.java   |   76 +
 .../config/di/impl/model/DefaultMetaClass.java     |  143 +
 .../di/impl/model/DefaultMetaConstructor.java      |   50 +
 .../config/di/impl/model/DefaultMetaField.java     |   57 +
 .../config/di/impl/model/DefaultMetaMethod.java    |   51 +
 .../config/di/impl/model/DefaultMetaParameter.java |   64 +
 .../core/config/di/impl/model/DefaultVariable.java |   79 +
 .../plugins/visitors/PluginAttributeVisitor.java   |    3 +-
 .../visitors/PluginBuilderAttributeVisitor.java    |    5 +-
 .../properties/PropertiesConfigurationBuilder.java |    2 +-
 .../core/config/status/StatusConfiguration.java    |    2 +-
 .../log4j/core/filter/AbstractFilterable.java      |    1 -
 .../logging/log4j/core/filter/CompositeFilter.java |    1 -
 .../logging/log4j/core/filter/MapFilter.java       |    1 -
 .../logging/log4j/core/filter/ScriptFilter.java    |    2 +-
 .../logging/log4j/core/filter/TimeFilter.java      |    2 +-
 .../log4j/core/impl/ExtendedStackTraceElement.java |   34 +
 .../log4j/core/impl/Log4jContextFactory.java       |   63 +-
 .../logging/log4j/core/impl/Log4jLogEvent.java     |    5 +-
 .../logging/log4j/core/impl/MutableLogEvent.java   |    1 -
 .../log4j/core/impl/ThreadContextDataInjector.java |   52 +-
 .../org/apache/logging/log4j/core/jmx/Server.java  |    3 +-
 .../log4j/core/layout/AbstractStringLayout.java    |    2 +-
 .../logging/log4j/core/layout/GelfLayout.java      |  230 +-
 .../logging/log4j/core/layout/HtmlLayout.java      |   64 +-
 .../log4j/core/layout/ScriptPatternSelector.java   |    4 +-
 .../log4j/core/layout/internal/ListChecker.java    |    6 +-
 .../logging/log4j/core/lookup/Interpolator.java    |    4 +-
 .../log4j/core/net/Rfc1349TrafficClass.java        |    2 +-
 .../log4j/core/net/ssl/SslConfiguration.java       |    3 +-
 .../core/pattern/AbstractStyleNameConverter.java   |   13 +-
 .../log4j/core/pattern/DatePatternConverter.java   |    6 +-
 .../core/pattern/EncodingPatternConverter.java     |    7 +
 .../logging/log4j/core/pattern/PatternParser.java  |    2 +-
 .../log4j/core/pattern/RepeatPatternConverter.java |  103 +
 .../logging/log4j/core/plugins/package-info.java   |   20 +
 .../log4j/core/selector/BasicContextSelector.java  |   13 +-
 .../core/selector/ClassLoaderContextSelector.java  |   28 +-
 .../log4j/core/selector/ContextSelector.java       |   49 +
 .../log4j/core/selector/CoreContextSelectors.java  |    8 +-
 .../log4j/core/selector/JndiContextSelector.java   |    5 +
 .../logging/log4j/core/time/MutableInstant.java    |   77 +-
 .../log4j/core/time/internal/CachedClock.java      |    3 +-
 .../log4j/core/time/internal/SystemClock.java      |   23 +-
 .../core/time/internal/format/FixedDateFormat.java |   10 +-
 .../apache/logging/log4j/core/tools/Generate.java  |    9 +-
 .../log4j/core/tools/picocli/CommandLine.java      |   25 +-
 .../apache/logging/log4j/core/util/ArrayUtils.java |   11 +
 .../logging/log4j/core/util/CronExpression.java    |    5 +-
 .../core/util/DefaultShutdownCallbackRegistry.java |   52 +-
 .../org/apache/logging/log4j/core/util/Loader.java |    4 +-
 .../apache/logging/log4j/core/util/NetUtils.java   |   38 +-
 .../log4j/core/util/ShutdownCallbackRegistry.java  |    4 +
 .../apache/logging/log4j/core/util/Throwables.java |   22 +-
 .../apache/logging/log4j/core/util/UuidUtil.java   |    7 +-
 .../logging/log4j/core/util/WatchManager.java      |  351 +-
 .../logging/log4j/core/util/WatcherFactory.java    |    2 +-
 log4j-core/src/main/java9/module-info.java         |   91 +
 log4j-core/src/main/resources/Log4j-config.xsd     | 1469 +++++++-
 .../src/main/resources/META-INF/MANIFEST.MF        |    0
 .../log4j/core/test/AvailablePortFinder.java       |  155 +
 .../test/AvailablePortSystemPropertyTestRule.java  |   81 +
 .../log4j/core/test/BasicConfigurationFactory.java |   62 +
 .../log4j/core/test/CoreLoggerContexts.java        |   52 +
 .../logging/log4j/core/test/ExtendedLevels.java    |   30 +
 .../apache/logging/log4j/core/test/GetLogger.java  |   37 +
 .../logging/log4j/core/test/RuleChainFactory.java  |   45 +
 .../logging/log4j/core/test/TestMarkers.java       |   34 +
 .../core/test/appender/AlwaysFailAppender.java     |   49 +
 .../log4j/core/test/appender/BlockingAppender.java |   65 +
 .../core/test/appender/EncodingListAppender.java   |   85 +
 .../log4j/core/test/appender/FailOnceAppender.java |  128 +
 .../log4j/core/test/appender/InMemoryAppender.java |   60 +
 .../log4j/core/test/appender/ListAppender.java     |  296 ++
 .../log4j/core/test/categories/Appenders.java      |   33 +
 .../log4j/core/test/categories/AsyncLoggers.java   |   23 +
 .../log4j/core/test/categories/Configurations.java |   25 +
 .../log4j/core/test/categories/GarbageFree.java    |   24 +
 .../log4j/core/test/categories/Layouts.java        |   28 +
 .../core/test/categories/PerformanceTests.java     |   24 +
 .../log4j/core/test/categories/Scripts.java        |   24 +
 .../log4j/core/test/categories/package-info.java   |   22 +
 .../log4j/core/test/hamcrest/Descriptors.java      |   44 +
 .../log4j/core/test/hamcrest/FileMatchers.java     |  163 +
 .../log4j/core/test/hamcrest/MapMatchers.java      |   62 +
 .../log4j/core/test/junit/AppenderResolver.java    |   54 +
 .../log4j/core/test/junit/BeanJUnit4Runner.java    |  133 +
 .../core/test/junit/ConfigurationResolver.java     |   38 +
 .../logging/log4j/core/test/junit/JndiRule.java    |   59 +
 .../core/test/junit/LoggerContextResolver.java     |  156 +
 .../log4j/core/test/junit/LoggerContextRule.java   |  319 ++
 .../log4j/core/test/junit/LoggerContextSource.java |   79 +
 .../logging/log4j/core/test/junit/Named.java       |   41 +
 .../core/test/junit/ReconfigurationPolicy.java     |   35 +
 .../test/junit/TypeBasedParameterResolver.java     |   80 +
 .../logging/log4j/core/test/junit/WithBeans.java   |   36 +
 .../log4j/core/test/junit/package-info.java        |   22 +
 .../log4j/core/test/layout/Log4j2_1482_Test.java   |   92 +
 .../log4j/core/test/layout/LogEventFixtures.java   |  109 +
 .../log4j/core/test/net/mock/MockSyslogServer.java |   49 +
 .../test/net/mock/MockSyslogServerFactory.java     |   39 +
 .../core/test/net/mock/MockTcpSyslogServer.java    |   94 +
 .../core/test/net/mock/MockTlsSyslogServer.java    |  154 +
 .../core/test/net/mock/MockUdpSyslogServer.java    |   70 +
 .../ssl/LegacyBsdTlsSyslogInputStreamReader.java   |   61 +
 .../log4j/core/test/net/ssl/TestConstants.java     |   40 +
 .../test/net/ssl/TlsSyslogInputStreamReader.java   |   91 +
 .../net/ssl/TlsSyslogInputStreamReaderBase.java    |   35 +
 .../core/test/net/ssl/TlsSyslogMessageFormat.java  |   23 +
 .../test/parser/AbstractLogEventParserTest.java    |   59 +
 .../log4j/core/test/util/FixedTimeClock.java       |   36 +
 .../logging/log4j/core/test/util/Profiler.java     |   94 +
 log4j-core/src/test/java-test9/module-info.java    |   25 +
 .../log4j/FormatterLoggerManualExample.java        |   54 -
 .../org/apache/logging/log4j/LogRolloverTest.java  |   43 -
 .../apache/logging/log4j/LogbackSubstitution.java  |   51 -
 .../java/org/apache/logging/log4j/TestMarkers.java |   31 -
 .../logging/log4j/ThreadContextTestAccess.java     |   34 -
 .../apache/logging/log4j/categories/Appenders.java |   33 -
 .../logging/log4j/categories/AsyncLoggers.java     |   23 -
 .../logging/log4j/categories/Configurations.java   |   25 -
 .../apache/logging/log4j/categories/Layouts.java   |   28 -
 .../logging/log4j/categories/PerformanceTests.java |   24 -
 .../logging/log4j/categories/package-info.java     |   22 -
 .../log4j/core/AppenderRefLevelJsonTest.java       |   44 +-
 .../logging/log4j/core/AppenderRefLevelTest.java   |   51 +-
 .../log4j/core/BasicConfigurationFactory.java      |   61 -
 .../logging/log4j/core/BasicLoggingTest.java       |    7 +-
 .../logging/log4j/core/CollectionLoggingTest.java  |   45 +-
 .../logging/log4j/core/CoreLoggerContexts.java     |   51 -
 .../log4j/core/CustomLevelsOverrideTest.java       |   37 +-
 .../logging/log4j/core/CustomLevelsTest.java       |   36 +-
 .../log4j/core/CustomLevelsWithFiltersTest.java    |   31 +-
 .../apache/logging/log4j/core/DeadlockTest.java    |   20 +-
 .../log4j/core/EventParameterMemoryLeakTest.java   |   18 +-
 .../logging/log4j/core/ExtendedLevelTest.java      |   47 +-
 .../log4j/core/FormatterLoggerManualExample.java   |   55 +
 .../log4j/core/GcFreeAsynchronousLoggingTest.java  |   46 -
 .../logging/log4j/core/GcFreeLoggingTestUtil.java  |  198 --
 .../log4j/core/GcFreeMixedSyncAyncLoggingTest.java |   41 -
 .../log4j/core/GcFreeSynchronousLoggingTest.java   |   40 -
 .../apache/logging/log4j/core/HostNameTest.java    |   45 +-
 .../apache/logging/log4j/core/LateConfigTest.java  |   32 +-
 .../org/apache/logging/log4j/core/LevelTest.java   |   62 +-
 .../apache/logging/log4j/core/Log4j1222Test.java   |    6 +-
 .../logging/log4j/core/LogEventFactoryTest.java    |   41 +-
 .../apache/logging/log4j/core/LogEventTest.java    |   27 +-
 .../apache/logging/log4j/core/LogRolloverTest.java |   44 +
 .../logging/log4j/core/LogbackSubstitution.java    |   50 +
 .../apache/logging/log4j/core/LoggerDateTest.java  |   26 +-
 .../log4j/core/LoggerSerializationTest.java        |    2 +-
 .../org/apache/logging/log4j/core/LoggerTest.java  |  128 +-
 .../logging/log4j/core/LoggerUpdateTest.java       |   56 +-
 .../org/apache/logging/log4j/core/LookupTest.java  |   31 +-
 .../logging/log4j/core/PatternSelectorTest.java    |   62 +-
 .../log4j/core/PropertiesFileConfigTest.java       |   38 +-
 ...ReusableParameterizedMessageMemoryLeakTest.java |    7 +-
 .../logging/log4j/core/ShutdownDisabledTest.java   |   22 +-
 .../core/ShutdownTimeoutConfigurationTest.java     |   20 +-
 .../logging/log4j/core/StrictXmlConfigTest.java    |   58 +-
 .../log4j/core/ThreadContextTestAccess.java        |   47 +
 .../logging/log4j/core/TimestampMessageTest.java   |   40 +-
 .../org/apache/logging/log4j/core/XmlEvents.java   |   20 +-
 .../core/appender/AsyncAppenderNoLocationTest.java |   85 -
 .../appender/AsyncAppenderQueueFullPolicyTest.java |   46 +-
 .../appender/AsyncAppenderShutdownTimeoutTest.java |   42 -
 .../log4j/core/appender/AsyncAppenderTest.java     |  176 +-
 .../core/appender/ConfigurationTestUtils.java      |   74 +-
 .../core/appender/ConsoleAppenderBuilderTest.java  |   13 +-
 .../appender/ConsoleAppenderJAnsiMessageMain.java  |    5 +-
 .../ConsoleAppenderJAnsiXExceptionMain.java        |    2 +-
 .../log4j/core/appender/ConsoleAppenderTest.java   |   40 +-
 .../log4j/core/appender/FailoverAppenderTest.java  |   66 +-
 .../core/appender/FileAppenderBuilderTest.java     |    7 +-
 .../core/appender/FileAppenderPermissionsTest.java |  136 +-
 .../FileAppenderPermissionsXmlConfigTest.java      |   66 -
 .../log4j/core/appender/FileAppenderTest.java      |  159 +-
 .../log4j/core/appender/InMemoryAppenderTest.java  |   17 +-
 .../MemoryMappedFileAppenderLocationTest.java      |   95 -
 .../MemoryMappedFileAppenderRemapTest.java         |   95 -
 .../MemoryMappedFileAppenderSimpleTest.java        |   86 -
 .../appender/MemoryMappedFileAppenderTest.java     |  119 +
 .../core/appender/MemoryMappedFileManagerTest.java |   28 +-
 .../core/appender/OutputStreamAppenderTest.java    |  246 +-
 .../core/appender/OutputStreamManagerTest.java     |   44 +-
 .../appender/RandomAccessFileAppenderTest.java     |    4 +-
 .../core/appender/RandomAccessFileManagerTest.java |  115 +-
 .../core/appender/ReconfigureAppenderTest.java     |    8 +-
 ...ollingRandomAccessFileAppenderRolloverTest.java |    2 +-
 .../core/appender/ScriptAppenderSelectorTest.java  |   99 +-
 .../core/appender/SocketAppenderBuilderTest.java   |    9 +-
 .../log4j/core/appender/SyslogAppenderTest.java    |    2 +-
 .../core/appender/SyslogAppenderTestBase.java      |    2 +-
 .../log4j/core/appender/TlsSyslogAppenderTest.java |    6 +-
 .../log4j/core/appender/TlsSyslogFrameTest.java    |   16 +-
 .../log4j/core/appender/WriterAppenderTest.java    |   25 +-
 .../appender/nosql/NoSqlDatabaseManagerTest.java   |    2 +-
 .../rewrite/LoggerNameLevelRewritePolicyTest.java  |   13 +-
 .../appender/rewrite/MapRewritePolicyTest.java     |   58 +-
 .../core/appender/rewrite/RewriteAppenderTest.java |   82 +-
 .../appender/rolling/CronTriggeringPolicyTest.java |   11 +-
 .../core/appender/rolling/EligibleFilesTest.java   |   10 +-
 .../log4j/core/appender/rolling/FileSizeTest.java  |   11 +-
 .../rolling/OnStartupTriggeringPolicyTest.java     |   64 +-
 .../appender/rolling/PatternProcessorTest.java     |   45 +-
 .../RandomRollingAppenderOnStartupTest.java        |    7 +-
 .../appender/rolling/RollingAppenderCountTest.java |    2 +-
 .../rolling/RollingAppenderCronAndSizeTest.java    |    7 +-
 .../RollingAppenderCronEvery2DirectTest.java       |    6 +-
 .../rolling/RollingAppenderCronEvery2Test.java     |    6 +-
 .../rolling/RollingAppenderCronOnStartupTest.java  |  107 +
 .../rolling/RollingAppenderCronOnceADayTest.java   |   11 +-
 .../appender/rolling/RollingAppenderCronTest.java  |    9 +-
 .../RollingAppenderCustomDeleteActionTest.java     |    2 +-
 ...RollingAppenderDeleteAccumulatedCount1Test.java |    2 +-
 ...RollingAppenderDeleteAccumulatedCount2Test.java |    2 +-
 .../RollingAppenderDeleteAccumulatedSizeTest.java  |    2 +-
 .../rolling/RollingAppenderDeleteMaxDepthTest.java |    2 +-
 .../rolling/RollingAppenderDeleteNestedTest.java   |    2 +-
 .../RollingAppenderDeleteScriptFri13thTest.java    |    2 +-
 .../rolling/RollingAppenderDeleteScriptTest.java   |    5 +-
 .../RollingAppenderDirectWrite1906Test.java        |    6 +-
 .../RollingAppenderDirectWriteStartupSizeTest.java |    4 +-
 ...erDirectWriteTempCompressedFilePatternTest.java |   10 +-
 .../rolling/RollingAppenderDirectWriteTest.java    |    6 +-
 ...RollingAppenderDirectWriteWithFilenameTest.java |    2 +-
 ...llingAppenderDirectWriteWithHtmlLayoutTest.java |   10 +-
 ...lingAppenderDirectWriteWithReconfigureTest.java |    2 +-
 .../RollingAppenderNoUnconditionalDeleteTest.java  |    2 +-
 .../RollingAppenderOnStartupDirectTest.java        |  109 +
 .../rolling/RollingAppenderOnStartupTest.java      |   68 +-
 .../rolling/RollingAppenderReconfigureTest.java    |    6 +-
 .../rolling/RollingAppenderRestartTest.java        |   74 +-
 ...RollingAppenderSizeCompressPermissionsTest.java |    2 +-
 .../rolling/RollingAppenderSizeNoCompressTest.java |    2 +-
 .../appender/rolling/RollingAppenderSizeTest.java  |    6 +-
 .../rolling/RollingAppenderSizeWithTimeTest.java   |    2 +-
 ...llingAppenderTempCompressedFilePatternTest.java |    7 +-
 .../RollingAppenderTimeAndSizeDirectTest.java      |    6 +-
 .../rolling/RollingAppenderTimeAndSizeTest.java    |    6 +-
 .../appender/rolling/RollingAppenderTimeTest.java  |    6 +-
 .../rolling/RollingAppenderUncompressedTest.java   |    2 +-
 .../RollingDirectSizeTimeNewDirectoryTest.java     |   88 +
 .../rolling/RollingDirectTimeNewDirectoryTest.java |  100 +
 .../RollingFileAppenderReconfigureTest.java        |    2 +-
 ...nderReconfigureUndefinedSystemPropertyTest.java |    2 +-
 .../rolling/RollingFileAppenderUpdateDataTest.java |    4 +-
 .../appender/rolling/RollingNewDirectoryTest.java  |   62 +
 ...ingRandomAccessFileManagerHeaderFooterTest.java |    2 +-
 .../RollingRandomAccessFileManagerTest.java        |   96 +-
 .../RollingRandomAppenderDirectWriteTest.java      |    6 +-
 ...gRandomAppenderDirectWriteWithFilenameTest.java |    2 +-
 .../rolling/RolloverWithDeletedOldFileTest.java    |    4 +-
 .../appender/rolling/RolloverWithPaddingTest.java  |    4 +-
 .../rolling/action/AbstractActionTest.java         |   29 +-
 .../rolling/action/Bzip2CompressActionTest.java    |   39 +-
 .../appender/rolling/action/DeleteActionTest.java  |   22 +-
 .../rolling/action/DeletingVisitorTest.java        |   10 +-
 .../rolling/action/DummyFileAttributes.java        |  172 +-
 .../core/appender/rolling/action/DurationTest.java |   21 +-
 .../rolling/action/FileRenameActionTest.java       |  106 +-
 .../core/appender/rolling/action/FileSizeTest.java |   47 +
 .../rolling/action/IfAccumulatedFileCountTest.java |    6 +-
 .../rolling/action/IfAccumulatedFileSizeTest.java  |    4 +-
 .../core/appender/rolling/action/IfAllTest.java    |  106 +-
 .../core/appender/rolling/action/IfAnyTest.java    |  104 +-
 .../appender/rolling/action/IfFileNameTest.java    |  262 +-
 .../rolling/action/IfLastModifiedTest.java         |    4 +-
 .../core/appender/rolling/action/IfNotTest.java    |  104 +-
 .../action/PathSortByModificationTimeTest.java     |   40 +-
 .../rolling/action/ScriptConditionTest.java        |   36 +-
 .../rolling/action/SortingVisitorTest.java         |   61 +-
 .../routing/DefaultRouteScriptAppenderTest.java    |    4 +-
 .../appender/routing/JsonRoutingAppender2Test.java |    5 +-
 .../appender/routing/JsonRoutingAppenderTest.java  |    5 +-
 .../routing/PropertiesRoutingAppenderTest.java     |    7 +-
 .../appender/routing/RoutesScriptAppenderTest.java |    6 +-
 .../appender/routing/RoutingAppender2767Test.java  |    5 +-
 .../core/appender/routing/RoutingAppenderTest.java |    6 +-
 .../routing/RoutingAppenderWithJndiTest.java       |    6 +-
 .../routing/RoutingAppenderWithPurgingTest.java    |    6 +-
 .../routing/RoutingDefaultAppenderTest.java        |    5 +-
 .../async/AbstractAsyncThreadContextTestBase.java  |    4 +-
 .../async/AsyncAppenderConfigTest_LOG4J2_2032.java |    4 +-
 .../async/AsyncAppenderExceptionHandlingTest.java  |   98 +
 .../async/AsyncLoggerClassLoadDeadlockTest.java    |    2 +-
 .../core/async/AsyncLoggerConfigAutoFlushTest.java |    4 +-
 .../core/async/AsyncLoggerConfigErrorOnFormat.java |    4 +-
 .../log4j/core/async/AsyncLoggerConfigTest.java    |    4 +-
 .../log4j/core/async/AsyncLoggerConfigTest2.java   |    4 +-
 .../log4j/core/async/AsyncLoggerConfigTest3.java   |    2 +-
 .../log4j/core/async/AsyncLoggerConfigTest4.java   |    4 +-
 ...ncLoggerConfigThreadContextCopyOnWriteTest.java |    2 +-
 .../AsyncLoggerConfigThreadContextDefaultTest.java |    2 +-
 ...ncLoggerConfigThreadContextGarbageFreeTest.java |    2 +-
 .../AsyncLoggerConfigUseAfterShutdownTest.java     |    4 +-
 .../AsyncLoggerConfigWithAsyncEnabledTest.java     |    4 +-
 ...AsyncLoggerContextSelectorInitialStateTest.java |    2 +-
 .../core/async/AsyncLoggerContextSelectorTest.java |    7 +-
 .../log4j/core/async/AsyncLoggerContextTest.java   |    4 +-
 .../AsyncLoggerCustomSelectorLocationTest.java     |    9 +-
 .../log4j/core/async/AsyncLoggerLocationTest.java  |    4 +-
 .../logging/log4j/core/async/AsyncLoggerTest.java  |    8 +-
 .../async/AsyncLoggerTestArgumentFreedOnError.java |    2 +-
 .../async/AsyncLoggerTestCachedThreadName.java     |    4 +-
 .../log4j/core/async/AsyncLoggerTestNanoTime.java  |    4 +-
 .../async/AsyncLoggerTestUncachedThreadName.java   |    4 +-
 .../AsyncLoggerThreadContextCopyOnWriteTest.java   |    2 +-
 .../async/AsyncLoggerThreadContextDefaultTest.java |    2 +-
 .../AsyncLoggerThreadContextGarbageFreeTest.java   |    2 +-
 .../core/async/AsyncLoggerThreadContextTest.java   |    4 +-
 .../async/AsyncLoggerThreadNameStrategyTest.java   |    2 +-
 .../async/AsyncLoggerTimestampMessageTest.java     |    6 +-
 .../async/AsyncLoggerUseAfterShutdownTest.java     |    4 +-
 .../async/AsyncLoggersWithAsyncAppenderTest.java   |    4 +-
 .../AsyncLoggersWithAsyncLoggerConfigTest.java     |   10 +-
 .../async/AsyncQueueFullPolicyFactoryTest.java     |    2 +-
 .../log4j/core/async/AsyncRootReloadTest.java      |    6 +-
 .../async/BasicAsyncLoggerContextSelectorTest.java |  107 +
 .../async/DefaultAsyncQueueFullPolicyTest.java     |    2 +-
 .../async/DiscardingAsyncQueueFullPolicyTest.java  |    2 +-
 .../log4j/core/async/Log4j2Jira1688AsyncTest.java  |    6 +-
 .../log4j/core/async/Log4j2Jira1688Test.java       |    6 +-
 .../core/async/QueueFullAsyncAppenderTest.java     |    4 +-
 .../core/async/QueueFullAsyncAppenderTest2.java    |    4 +-
 ...llAsyncLoggerConfigLoggingFromToStringTest.java |    4 +-
 ...lAsyncLoggerConfigLoggingFromToStringTest2.java |    4 +-
 .../core/async/QueueFullAsyncLoggerConfigTest.java |    4 +-
 .../async/QueueFullAsyncLoggerConfigTest2.java     |    4 +-
 ...ueueFullAsyncLoggerLoggingFromToStringTest.java |    6 +-
 ...eueFullAsyncLoggerLoggingFromToStringTest2.java |    6 +-
 .../log4j/core/async/QueueFullAsyncLoggerTest.java |    4 +-
 .../core/async/QueueFullAsyncLoggerTest2.java      |    4 +-
 .../core/async/QueueFullAsyncLoggerTest3.java      |    6 +-
 .../log4j/core/async/RingBufferLogEventTest.java   |    3 +-
 .../log4j/core/async/perftest/PerfTestDriver.java  |    6 +-
 .../async/perftest/PerfTestResultFormatter.java    |    2 +-
 .../log4j/core/async/perftest/RunLog4j2.java       |    2 +-
 .../log4j/core/config/AbstractLog4j2_1100Test.java |   68 -
 .../logging/log4j/core/config/AdvertiserTest.java  |   29 +-
 .../core/config/AppenderControlArraySetTest.java   |   12 +-
 .../config/CompositeConfigurationMissingTest.java  |   47 +
 .../core/config/CompositeConfigurationTest.java    |   21 +-
 .../core/config/ConfigurationFactoryTest.java      |  134 +
 .../log4j/core/config/ConfigurationSourceTest.java |   10 +-
 .../log4j/core/config/ConfigurationTest.java       |  157 -
 .../log4j/core/config/ConfiguratorTest.java        |   18 +-
 .../log4j/core/config/CustomConfigurationTest.java |   54 +-
 .../logging/log4j/core/config/FileOutputTest.java  |   42 +-
 .../log4j/core/config/InMemoryAdvertiser.java      |    8 +-
 .../log4j/core/config/JiraLog4j2_1100JsonTest.java |   31 -
 .../log4j/core/config/JiraLog4j2_1100XmlTest.java  |   27 -
 .../core/config/JiraLog4j2_1100YamlBadTest.java    |   33 -
 .../core/config/JiraLog4j2_1100YamlGoodTest.java   |   31 -
 .../log4j/core/config/JiraLog4j2_2134Test.java     |   23 +-
 .../log4j/core/config/LoggerConfigTest.java        |   57 +-
 .../log4j/core/config/LoggersPluginTest.java       |   12 +-
 .../log4j/core/config/MissingRootLoggerTest.java   |   30 +-
 .../log4j/core/config/MockReliabilityStrategy.java |  105 +
 .../core/config/MultipleTriggeringPolicyTest.java  |   84 +
 .../log4j/core/config/NestedLoggerConfigTest.java  |   11 -
 .../logging/log4j/core/config/PropertyTest.java    |   41 +-
 .../core/config/ReconfigurationDeadlockTest.java   |  210 +-
 .../log4j/core/config/ReliabilityStrategyTest.java |   51 +
 .../log4j/core/config/TestConfigurator.java        |  169 +-
 .../log4j/core/config/TestConfiguratorError.java   |   24 +-
 .../logging/log4j/core/config/XIncludeTest.java    |  139 -
 .../core/config/arbiters/BasicArbiterTest.java     |   63 +
 .../core/config/arbiters/ScriptArbiterTest.java    |   66 +
 .../core/config/arbiters/SelectArbiterTest.java    |   63 +
 .../config/builder/ConfigurationAssemblerTest.java |   28 +-
 .../config/builder/ConfigurationBuilderTest.java   |   14 +-
 .../di/impl/bean/DefaultBeanManagerTest.java       |  352 ++
 .../core/config/plugins/LegacyPluginTest.java      |   31 +-
 .../config/plugins/convert/TypeConvertersTest.java |    4 +-
 .../plugins/util/PluginManagerPackagesTest.java    |   52 +-
 .../validators/RequiredValidatorTest.java          |   12 +-
 .../validators/ValidHostValidatorTest.java         |   24 +-
 .../validators/ValidPortValidatorTest.java         |   12 +-
 .../ValidatingPluginWithFailoverTest.java          |   12 +-
 .../ValidatingPluginWithGenericBuilderTest.java    |   16 +-
 ...ngPluginWithGenericSubclassFoo1BuilderTest.java |   16 +-
 .../ValidatingPluginWithTypedBuilderTest.java      |   16 +-
 .../PropertiesConfigurationRootLoggerOnlyTest.java |   60 -
 .../properties/PropertiesConfigurationTest.java    |   85 +-
 ...rtiesConfigurationTrailingSpaceOnLevelTest.java |   67 -
 .../properties/RollingFilePropertiesTest.java      |   60 -
 .../core/config/xml/XmlConfigurationPropsTest.java |   22 +-
 .../core/config/xml/XmlConfigurationSecurity.java  |   41 +
 .../core/config/xml/XmlConigurationSecurity.java   |   36 -
 .../log4j/core/config/xml/XmlLoggerPropsTest.java  |   72 +-
 .../log4j/core/config/xml/XmlSchemaTest.java       |  140 +
 .../log4j/core/filter/AbstractFilterTest.java      |    4 +-
 .../log4j/core/filter/AbstractFilterableTest.java  |   14 +-
 .../core/filter/AbstractScriptFilterTest.java      |   44 +-
 .../log4j/core/filter/BurstFilterLogDelayTest.java |    8 +-
 .../logging/log4j/core/filter/BurstFilterTest.java |   58 +-
 .../core/filter/DynamicThresholdFilterTest.java    |   66 +-
 .../log4j/core/filter/LevelRangeFilterTest.java    |    7 +-
 .../logging/log4j/core/filter/MapFilterTest.java   |   51 +-
 .../log4j/core/filter/MarkerFilterTest.java        |    7 +-
 .../log4j/core/filter/NoMarkerFilterTest.java      |    5 +-
 .../logging/log4j/core/filter/RegexFilterTest.java |   19 +-
 .../filter/ScriptFileFilterPropertiesTest.java     |   21 +-
 .../log4j/core/filter/ScriptFileFilterTest.java    |   21 +-
 .../log4j/core/filter/ScriptFilterTest.java        |   21 +-
 .../log4j/core/filter/ScriptRefFilterTest.java     |   21 +-
 .../core/filter/StructuredDataFilterTest.java      |   41 +-
 .../core/filter/ThreadContextMapFilterTest.java    |   11 +-
 .../log4j/core/filter/ThresholdFilterTest.java     |    7 +-
 .../logging/log4j/core/filter/TimeFilterTest.java  |   86 +-
 ...taFactoryPropertySetMissingConstructorTest.java |   10 +-
 .../impl/ContextDataFactoryPropertySetTest.java    |    4 +-
 .../log4j/core/impl/ContextDataFactoryTest.java    |   10 +-
 .../core/impl/JdkMapAdapterStringMapTest.java      |  204 +-
 .../log4j/core/impl/Log4jLogEventNanoTimeTest.java |   26 +-
 .../logging/log4j/core/impl/Log4jLogEventTest.java |  112 +-
 .../log4j/core/impl/MutableLogEventTest.java       |  189 +-
 .../NestedLoggingFromThrowableMessageTest.java     |    4 +-
 .../core/impl/NestedLoggingFromToStringTest.java   |    4 +-
 .../core/impl/ReusableLogEventFactoryTest.java     |   42 +-
 .../core/impl/ThreadContextDataInjectorTest.java   |    2 +-
 .../core/impl/ThrowableFormatOptionsTest.java      |   90 +-
 .../log4j/core/impl/ThrowableProxyTest.java        |   55 +-
 .../apache/logging/log4j/core/jmx/ServerTest.java  |    4 +-
 .../core/layout/AbstractStringLayoutTest.java      |   30 +-
 .../ConcurrentLoggingWithGelfLayoutTest.java       |  104 +-
 .../logging/log4j/core/layout/GelfLayout2Test.java |   51 +
 .../logging/log4j/core/layout/GelfLayout3Test.java |  100 +
 .../core/layout/GelfLayoutPatternSelectorTest.java |   82 +
 .../logging/log4j/core/layout/GelfLayoutTest.java  |   82 +-
 .../logging/log4j/core/layout/GelfLayoutTest2.java |   50 -
 .../logging/log4j/core/layout/GelfLayoutTest3.java |   67 -
 .../logging/log4j/core/layout/HtmlLayoutTest.java  |  174 +-
 .../log4j/core/layout/Log4j2_1482_CoreTest.java    |    1 +
 .../log4j/core/layout/Log4j2_1482_Test.java        |   92 -
 .../log4j/core/layout/Log4j2_2195_Test.java        |   45 +-
 .../log4j/core/layout/LogEventFixtures.java        |  114 -
 .../core/layout/PatternLayoutLookupDateTest.java   |   22 +-
 .../layout/PatternLayoutMainMapLookupTest.java     |   41 +-
 .../core/layout/PatternLayoutNoLookupDateTest.java |   23 +-
 .../log4j/core/layout/PatternLayoutRepeatTest.java |   40 +
 .../log4j/core/layout/PatternLayoutTest.java       |   73 +-
 .../log4j/core/layout/PatternSelectorTest.java     |   16 +-
 .../log4j/core/layout/Rfc5424LayoutTest.java       |  100 +-
 .../core/layout/StringBuilderEncoderTest.java      |  118 +-
 .../log4j/core/layout/SyslogLayoutTest.java        |   34 +-
 .../logging/log4j/core/lookup/CaseLookupTest.java  |   12 +-
 .../log4j/core/lookup/ContextMapLookupTest.java    |   40 +-
 .../logging/log4j/core/lookup/DateLookupTest.java  |   11 +-
 .../log4j/core/lookup/EnvironmentLookupTest.java   |    8 +-
 .../logging/log4j/core/lookup/EventLookupTest.java |    7 +-
 .../log4j/core/lookup/InterpolatorTest.java        |    2 +-
 .../logging/log4j/core/lookup/JndiLookupTest.java  |    2 +-
 .../logging/log4j/core/lookup/Log4jLookupTest.java |   28 +-
 .../core/lookup/Log4jLookupWithSpacesTest.java     |   29 +-
 .../lookup/MainInputArgumentsJmxLookupTest.java    |   14 +-
 .../logging/log4j/core/lookup/MainLookupTest.java  |   30 +-
 .../logging/log4j/core/lookup/MapLookupTest.java   |   26 +-
 .../log4j/core/lookup/MarkerLookupConfigTest.java  |   45 +-
 .../log4j/core/lookup/MarkerLookupTest.java        |    7 +-
 .../core/lookup/ResourceBundleLookupTest.java      |   17 +-
 .../log4j/core/lookup/StrSubstitutorTest.java      |   15 +-
 .../core/lookup/StructuredDataLookupTest.java      |    7 +-
 .../core/lookup/SystemPropertiesLookupTest.java    |   15 +-
 .../message/ExtendedThreadInformationTest.java     |    6 +-
 .../MutableLogEventWithReusableParamMsgTest.java   |   75 +
 .../logging/log4j/core/net/PriorityTest.java       |    9 +-
 .../log4j/core/net/SocketMessageLossTest.java      |   26 +-
 .../log4j/core/net/SocketReconnectTest.java        |   30 +-
 .../apache/logging/log4j/core/net/SocketTest.java  |   39 +-
 .../log4j/core/net/mock/MockSyslogServer.java      |   49 -
 .../core/net/mock/MockSyslogServerFactory.java     |   39 -
 .../log4j/core/net/mock/MockTcpSyslogServer.java   |   94 -
 .../log4j/core/net/mock/MockTlsSyslogServer.java   |  154 -
 .../log4j/core/net/mock/MockUdpSyslogServer.java   |   70 -
 .../net/ssl/EnvironmentPasswordProviderTest.java   |    8 +-
 .../core/net/ssl/FilePasswordProviderTest.java     |   13 +-
 .../core/net/ssl/KeyStoreConfigurationTest.java    |   61 +-
 .../ssl/LegacyBsdTlsSyslogInputStreamReader.java   |   61 -
 .../core/net/ssl/MemoryPasswordProviderTest.java   |    6 +-
 .../log4j/core/net/ssl/SslConfigurationTest.java   |   51 +-
 .../log4j/core/net/ssl/StoreConfigurationTest.java |   16 +-
 .../logging/log4j/core/net/ssl/TestConstants.java  |   40 -
 .../core/net/ssl/TlsSyslogInputStreamReader.java   |   91 -
 .../net/ssl/TlsSyslogInputStreamReaderBase.java    |   35 -
 .../log4j/core/net/ssl/TlsSyslogMessageFormat.java |   23 -
 .../log4j/core/net/ssl/TlsSyslogTestUtil.java      |    2 +
 .../core/net/ssl/TrustStoreConfigurationTest.java  |   55 +-
 .../core/parser/AbstractLogEventParserTest.java    |   59 -
 .../log4j/core/pattern/CallerInformationTest.java  |   31 +-
 .../core/pattern/DatePatternConverterTest.java     |    4 +-
 .../log4j/core/pattern/DisableAnsiTest.java        |   30 +-
 .../core/pattern/EncodingPatternConverterTest.java |   29 +-
 .../pattern/EndOfBatchPatternConverterTest.java    |    4 +-
 .../EqualsIgnoreCaseReplacementConverterTest.java  |   10 +-
 .../pattern/EqualsReplacementConverterTest.java    |    9 +-
 .../ExtendedThrowablePatternConverterTest.java     |   28 +-
 .../log4j/core/pattern/ExtendedThrowableTest.java  |   32 +-
 .../log4j/core/pattern/FormattingInfoTest.java     |    4 +-
 .../log4j/core/pattern/HighlightConverterTest.java |   38 +-
 .../core/pattern/LevelPatternConverterTest.java    |    7 +-
 .../core/pattern/LiteralPatternConverterTest.java  |   86 +-
 .../pattern/LoggerFqcnPatternConverterTest.java    |    4 +-
 .../core/pattern/MapPatternConverterTest.java      |   19 +-
 .../core/pattern/MarkerPatternConverterTest.java   |    4 +-
 .../MarkerSimpleNamePatternConverterTest.java      |    6 +-
 .../log4j/core/pattern/MaxLengthConverterTest.java |   16 +-
 .../core/pattern/MdcPatternConverterTest.java      |   30 +-
 .../core/pattern/MessageJansiConverterTest.java    |   34 +-
 .../core/pattern/MessagePatternConverterTest.java  |   52 +-
 .../core/pattern/MessageStyledConverterTest.java   |   34 +-
 .../core/pattern/NanoTimePatternConverterTest.java |    7 +-
 .../core/pattern/NdcPatternConverterTest.java      |   13 +-
 .../log4j/core/pattern/NoConsoleNoAnsiTest.java    |   36 +-
 .../log4j/core/pattern/PatternParserTest.java      |   47 +-
 .../log4j/core/pattern/PatternParserTest2.java     |    7 +-
 .../pattern/ProcessIdPatternConverterTest.java     |    9 +-
 .../pattern/RegexReplacementConverterTest.java     |    8 +-
 .../log4j/core/pattern/RegexReplacementTest.java   |   69 +-
 .../core/pattern/RepeatPatternConverterTest.java   |   51 +
 .../pattern/RootThrowablePatternConverterTest.java |   28 +-
 .../log4j/core/pattern/RootThrowableTest.java      |   38 +-
 .../SequenceNumberPatternConverterTest.java        |   30 +-
 ...quenceNumberPatternConverterZeroPaddedTest.java |   38 +-
 .../log4j/core/pattern/StyleConverterTest.java     |   43 +-
 .../core/pattern/ThreadIdPatternConverterTest.java |    7 +-
 .../pattern/ThreadNamePatternConverterTest.java    |    7 +-
 .../ThreadPriorityPatternConverterTest.java        |    7 +-
 .../pattern/ThrowablePatternConverterTest.java     |   32 +-
 .../logging/log4j/core/pattern/ThrowableTest.java  |   34 +-
 .../VariablesNotEmptyReplacementConverterTest.java |   10 +-
 .../core/selector/BasicContextSelectorTest.java    |   55 +
 .../selector/ClassLoaderContextSelectorTest.java   |    8 +-
 .../logging/log4j/core/time/ClockFactoryTest.java  |   14 +-
 .../log4j/core/time/MutableInstantTest.java        |  140 +-
 .../log4j/core/time/SystemNanoClockTest.java       |    6 +-
 .../core/time/internal/DummyNanoClockTest.java     |    5 +-
 .../log4j/core/time/internal/SystemClockTest.java  |    9 +-
 .../time/internal/format/FastDateParserTest.java   |   10 +-
 .../log4j/core/tools/GenerateCustomLoggerTest.java |  110 +-
 .../core/tools/GenerateExtendedLoggerTest.java     |  109 +-
 .../log4j/core/util/ContextDataProviderTest.java   |   27 +-
 .../log4j/core/util/CronExpressionTest.java        |   30 +-
 .../logging/log4j/core/util/CyclicBufferTest.java  |   22 +-
 .../logging/log4j/core/util/FileUtilsTest.java     |   18 +-
 .../apache/logging/log4j/core/util/InitTest.java   |    8 +-
 .../logging/log4j/core/util/IntegersTest.java      |    4 +-
 .../logging/log4j/core/util/JsonUtilsTest.java     |    4 +-
 .../apache/logging/log4j/core/util/LoaderTest.java |   13 +-
 .../logging/log4j/core/util/NetUtilsTest.java      |  123 +-
 .../logging/log4j/core/util/ProcessIdUtilTest.java |    9 +-
 .../apache/logging/log4j/core/util/Profiler.java   |   94 -
 .../core/util/ShutdownCallbackRegistryTest.java    |   29 +-
 .../logging/log4j/core/util/ThrowablesTest.java    |   53 +-
 .../apache/logging/log4j/core/util/UuidTest.java   |   20 +-
 .../logging/log4j/core/util/WatchHttpTest.java     |    6 +-
 .../logging/log4j/core/util/WatchManagerTest.java  |   28 +-
 .../apache/logging/log4j/hamcrest/Descriptors.java |   44 -
 .../logging/log4j/hamcrest/FileMatchers.java       |  163 -
 .../apache/logging/log4j/hamcrest/MapMatchers.java |   62 -
 .../org/apache/logging/log4j/junit/JndiRule.java   |   59 -
 .../logging/log4j/junit/LoggerContextRule.java     |  314 --
 .../apache/logging/log4j/junit/package-info.java   |   22 -
 .../MutableLogEventWithReusableParamMsgTest.java   |   61 -
 .../logging/log4j/test/AvailablePortFinder.java    |  155 -
 .../test/AvailablePortSystemPropertyTestRule.java  |   81 -
 .../apache/logging/log4j/test/ExtendedLevels.java  |   30 -
 .../org/apache/logging/log4j/test/GetLogger.java   |   37 -
 .../logging/log4j/test/RuleChainFactory.java       |   45 -
 .../log4j/test/SomethingThatUsesLogging.java       |   36 -
 .../log4j/test/appender/AlwaysFailAppender.java    |   49 -
 .../log4j/test/appender/BlockingAppender.java      |   65 -
 .../log4j/test/appender/DeadlockAppender.java      |   84 -
 .../log4j/test/appender/EncodingListAppender.java  |   84 -
 .../log4j/test/appender/FailOnceAppender.java      |   66 -
 .../log4j/test/appender/InMemoryAppender.java      |   60 -
 .../logging/log4j/test/appender/ListAppender.java  |  295 --
 .../log4j/test/appender/UsesLoggingAppender.java   |   67 -
 .../logging/log4j/test/layout/BasicLayout.java     |   57 -
 log4j-core/src/test/java9/module-info.java         |   94 +
 .../AsyncAppenderExceptionHandlingTest.xml         |   32 +
 .../{GelfLayoutTest2.xml => GelfLayout2Test.xml}   |    0
 log4j-core/src/test/resources/GelfLayout3Test.xml  |   37 +
 .../resources/GelfLayoutPatternSelectorTest.xml    |   37 +
 log4j-core/src/test/resources/GelfLayoutTest3.xml  |   35 -
 .../MemoryMappedFileAppenderLocationTest.xml       |    4 +-
 .../MemoryMappedFileAppenderRemapTest.xml          |    4 +-
 .../resources/MemoryMappedFileAppenderTest.xml     |    4 +-
 .../src/test/resources/PatternLayoutRepeat.xml     |   29 +
 .../src/test/resources/ReliabilityStrategyTest.xml |   32 +
 .../src/test/resources/__files/onStartup.log       |   19 +-
 .../test/resources/gcFreeMixedSyncAsyncLogging.xml |   98 -
 .../src/test/resources/log4j-comp-logger-root.xml  |    4 +-
 log4j-core/src/test/resources/log4j-filetest.xml   |    6 +-
 .../src/test/resources/log4j-rollOnStartup.xml     |   38 +
 .../test/resources/log4j-rollOnStartupDirect.xml   |   37 +
 .../resources/log4j-rolling-cron-onStartup.xml     |   47 +
 .../test/resources/log4j-rolling-folder-direct.xml |   39 +
 .../test/resources/log4j-rolling-new-directory.xml |   39 +
 .../log4j-rolling-size-time-new-directory.xml      |   42 +
 log4j-core/src/test/resources/log4j-test4.xml      |   36 -
 log4j-core/src/test/resources/log4j2-arbiters.xml  |   41 +
 .../src/test/resources/log4j2-scriptArbiters.xml   |   51 +
 .../src/test/resources/log4j2-selectArbiters.xml   |   43 +
 .../test/resources/reconfiguration-deadlock.xml    |   25 +-
 log4j-couchdb/pom.xml                              |   17 +-
 .../logging/log4j/couchdb/CouchDbProvider.java     |    5 +-
 log4j-csv/pom.xml                                  |   22 +-
 .../CsvJsonParameterLayoutFileAppenderTest.java    |    4 +-
 .../log4j/csv/layout/CsvLogEventLayoutTest.java    |   10 +-
 .../csv/layout/CsvParameterLayoutAllAsyncTest.java |    4 +-
 .../log4j/csv/layout/CsvParameterLayoutTest.java   |   10 +-
 log4j-distribution/pom.xml                         |   25 +-
 log4j-docker/pom.xml                               |   28 +-
 .../apache/logging/log4j/docker/DockerLookup.java  |    2 +
 log4j-flume-ng/pom.xml                             |   24 +-
 .../log4j/flume/appender/FlumeAppender.java        |    2 +-
 .../log4j/flume/appender/FlumeAvroManager.java     |    2 +-
 .../log4j/flume/appender/FlumeEmbeddedManager.java |   16 +-
 .../flume/appender/FlumePersistentManager.java     |    2 +-
 .../log4j/flume/appender/FlumeAppenderTest.java    |    2 +-
 .../flume/appender/FlumeEmbeddedAgentTest.java     |    2 +-
 .../flume/appender/FlumeEmbeddedAppenderTest.java  |    2 +-
 .../appender/FlumePersistentAppenderTest.java      |    2 +-
 .../log4j/flume/appender/FlumePersistentPerf.java  |    2 +-
 log4j-gctests/pom.xml                              |  380 ++
 .../gctests/GcFreeAsynchronousLoggingTest.java     |   49 +
 .../log4j/gctests/GcFreeLoggingTestUtil.java       |  226 ++
 .../gctests/GcFreeMixedSyncAyncLoggingTest.java    |   47 +
 .../gctests/GcFreeSynchronousLoggingTest.java      |   46 +
 .../gctests/JsonTemplateLayoutGcFreeTest.java      |   42 +
 .../resources/gcFreeJsonTemplateLayoutLogging.xml  |   38 +
 .../src/test/resources/gcFreeLogging.xml           |    0
 .../test/resources/gcFreeMixedSyncAsyncLogging.xml |   98 +
 log4j-iostreams/pom.xml                            |   18 +-
 .../logging/log4j/io/AbstractStreamTest.java       |    2 +-
 .../log4j/io/IoBuilderCallerInfoTesting.java       |    4 +-
 .../org/apache/logging/log4j/io/IoBuilderTest.java |    4 +-
 .../log4j/io/LoggerPrintWriterJdbcH2Test.java      |    4 +-
 log4j-jcl/pom.xml                                  |   21 +-
 .../org/apache/logging/log4j/jcl/LogAdapter.java   |    5 +-
 .../logging/log4j/jcl/CallerInformationTest.java   |    4 +-
 .../org/apache/logging/log4j/jcl/LoggerTest.java   |    4 +-
 log4j-jdbc-dbcp2/pom.xml                           |   25 +-
 .../appender/PoolableConnectionFactoryTest.java    |    2 +-
 log4j-jdbc/pom.xml                                 |   30 +-
 .../log4j/jdbc/appender/JdbcDatabaseManager.java   |   13 +-
 .../AbstractJdbcAppenderDataSourceTest.java        |    4 +-
 .../AbstractJdbcAppenderFactoryMethodTest.java     |    2 +-
 .../appender/DataSourceConnectionSourceTest.java   |    5 +-
 .../FactoryMethodConnectionSourceTest.java         |    3 +-
 .../JdbcAppenderColumnMappingLiteralTest.java      |    4 +-
 .../JdbcAppenderColumnMappingPatternTest.java      |    4 +-
 .../JdbcAppenderMapMessageDataSourceTest.java      |    4 +-
 .../JdbcAppenderStringSubstitutionTest.java        |    2 +-
 .../logging/log4j/jdbc/appender/JdbcRule.java      |    2 +-
 log4j-jeromq/pom.xml                               |   22 +-
 .../log4j/jeromq/appender/JeroMqManager.java       |   13 +-
 .../log4j/jeromq/appender/JeroMqAppenderTest.java  |    8 +-
 .../src/test/resources/JeroMqAppenderTest.xml      |    0
 log4j-jms/pom.xml                                  |   27 +-
 .../logging/log4j/jms/appender/JmsManager.java     |    2 +-
 .../log4j/jms/appender/JmsAppenderTest.java        |    8 +-
 .../src/test/resources/JmsAppenderTest.xml         |    0
 log4j-jmx-gui/pom.xml                              |   74 +-
 log4j-jpa/pom.xml                                  |   29 +-
 .../jpa/appender/AbstractJpaAppenderTest.java      |    3 +-
 .../log4j/jpa/appender/JpaH2AppenderTest.java      |    2 +-
 .../log4j/jpa/appender/JpaHsqldbAppenderTest.java  |    3 +-
 .../ContextDataAttributeConverterTest.java         |    3 +-
 .../ContextDataJsonAttributeConverterTest.java     |    3 +-
 .../ContextMapAttributeConverterTest.java          |    3 +-
 .../ContextMapJsonAttributeConverterTest.java      |    3 +-
 .../ContextStackAttributeConverterTest.java        |    3 +-
 .../ContextStackJsonAttributeConverterTest.java    |    5 +-
 .../converter/InstantAttributeConverterTest.java   |    2 +-
 .../converter/MarkerAttributeConverterTest.java    |    3 +-
 .../converter/MessageAttributeConverterTest.java   |    3 +-
 .../StackTraceElementAttributeConverterTest.java   |    3 +-
 .../converter/ThrowableAttributeConverterTest.java |    3 +-
 log4j-jpl/pom.xml                                  |  271 ++
 log4j-jpl/src/main/java/module-info.java           |   21 +
 .../logging/log4j/jpl/Log4jSystemLogger.java       |  136 +
 .../log4j/jpl/Log4jSystemLoggerAdapter.java        |   46 +
 .../logging/log4j/jpl/Log4jSystemLoggerFinder.java |   33 +
 .../services/java.lang.System$LoggerFinder         |    1 +
 log4j-jpl/src/site/markdown/index.md               |   30 +
 log4j-jpl/src/site/site.xml                        |   52 +
 .../logging/log4j/jpl/Log4jSystemLoggerTest.java   |  122 +
 log4j-jpl/src/test/resources/log4j2-test.xml       |   39 +
 log4j-jul/pom.xml                                  |   22 +-
 .../logging/log4j/jul/AbstractLoggerAdapter.java   |    5 +-
 .../org/apache/logging/log4j/jul/ApiLogger.java    |   66 +-
 .../logging/log4j/jul/AbstractLoggerTest.java      |  100 +-
 .../apache/logging/log4j/jul/ApiLoggerTest.java    |    3 +-
 .../logging/log4j/jul/AsyncLoggerThreadsTest.java  |   59 +
 .../jul/BracketInNotInterpolatedMessageTest.java   |    2 +-
 .../logging/log4j/jul/CallerInformationTest.java   |    4 +-
 .../apache/logging/log4j/jul/CoreLoggerTest.java   |    3 +-
 log4j-kafka/pom.xml                                |   22 +-
 .../logging/log4j/kafka/appender/KafkaManager.java |    4 +-
 .../appender/KafkaAppenderCloseTimeoutTest.java    |    6 +-
 .../log4j/kafka/appender/KafkaAppenderTest.java    |    6 +-
 .../KafkaManagerProducerThreadLeakTest.java        |   65 +
 .../kafka/builder/ConfigurationBuilderTest.java    |   29 +-
 log4j-kubernetes/pom.xml                           |   42 +-
 .../logging/log4j/kubernetes/ContainerUtil.java    |   91 +
 .../log4j/kubernetes/KubernetesClientBuilder.java  |   12 +-
 .../logging/log4j/kubernetes/KubernetesLookup.java |  147 +-
 .../log4j/kubernetes/KubernetesLookupTest.java     |   98 +
 .../src/test/resources/clusterPod.json             |  177 +
 log4j-kubernetes/src/test/resources/localPod.json  |  141 +
 log4j-layout-jackson-json/pom.xml                  |   22 +-
 .../log4j/jackson/json/Log4jJsonObjectMapper.java  |    4 +
 .../jackson/json/layout/JsonJacksonFactory.java    |   10 +
 .../log4j/jackson/json/layout/JsonLayout.java      |    8 +-
 .../jackson/json/JacksonIssue429MyNamesTest.java   |    2 +-
 .../log4j/jackson/json/JacksonIssue429Test.java    |    2 +-
 .../log4j/jackson/json/LevelMixInJsonTest.java     |    2 +-
 .../log4j/jackson/json/MarkerMixInJsonTest.java    |    2 +-
 .../json/StackTraceElementJsonMixInTest.java       |    2 +-
 .../ConcurrentLoggingWithJsonLayoutTest.java       |    2 +-
 .../jackson/json/layout/JsonLayoutMillisTest.java  |   74 +
 .../log4j/jackson/json/layout/JsonLayoutTest.java  |   22 +-
 .../json/parser/JsonLogEventParserTest.java        |    2 +-
 .../resources/log4j2-json-layout-timestamp.xml     |   31 +
 log4j-layout-jackson-xml/pom.xml                   |   22 +-
 .../xml/ExtendedStackTraceElementXmlMixIn.java     |   18 +-
 .../jackson/xml/StackTraceElementXmlMixIn.java     |   17 +-
 .../jackson/xml/layout/XmlJacksonFactory.java      |   10 +
 .../log4j/jackson/xml/layout/XmlLayout.java        |    8 +-
 .../log4j/jackson/xml/LevelMixInXmlTest.java       |    2 +-
 .../log4j/jackson/xml/MarkerMixInXmlTest.java      |    2 +-
 .../jackson/xml/StackTraceElementXmlMixInTest.java |    2 +-
 .../layout/ConcurrentLoggingWithXmlLayoutTest.java |    2 +-
 .../log4j/jackson/xml/layout/XmlLayoutTest.java    |   10 +-
 .../jackson/xml/parser/XmlLogEventParserTest.java  |    2 +-
 log4j-layout-jackson-yaml/pom.xml                  |   22 +-
 .../log4j/jackson/yaml/layout/YamlConstants.java   |    1 +
 .../jackson/yaml/layout/YamlJacksonFactory.java    |   10 +
 .../log4j/jackson/yaml/layout/YamlLayout.java      |    8 +-
 .../log4j/jackson/yaml/LevelMixInYamlTest.java     |    2 +-
 .../log4j/jackson/yaml/MarkerMixInYamlTest.java    |    2 +-
 .../yaml/StackTraceElementYamlMixInTest.java       |    2 +-
 .../ConcurrentLoggingWithYamlLayoutTest.java       |    2 +-
 .../log4j/jackson/yaml/layout/YamlLayoutTest.java  |    8 +-
 .../yaml/parser/YamlLogEventParserTest.java        |    2 +-
 log4j-layout-jackson/pom.xml                       |   17 +-
 .../log4j/jackson/AbstractJacksonFactory.java      |   14 +-
 .../log4j/jackson/AbstractJacksonLayout.java       |   17 +
 .../log4j/jackson/ContextDataSerializer.java       |    6 +-
 .../jackson/ExtendedStackTraceElementMixIn.java    |   19 +
 .../logging/log4j/jackson/JsonConstants.java       |    1 +
 .../Log4jStackTraceElementDeserializer.java        |   68 +-
 .../logging/log4j/jackson/LogEventJsonMixIn.java   |    2 +-
 .../jackson/LogEventWithContextListMixIn.java      |    2 +-
 .../log4j/jackson/StackTraceElementConstants.java  |    3 +
 .../log4j/jackson/StackTraceElementMixIn.java      |   12 +
 .../apache/logging/log4j/jackson/XmlConstants.java |    1 +
 .../logging/log4j/jackson/LevelMixInTest.java      |    2 +-
 log4j-layout-template-json/pom.xml                 |  596 ++++
 .../layout/template/json/JsonTemplateLayout.java   |  643 ++++
 .../template/json/JsonTemplateLayoutDefaults.java  |  146 +
 .../json/resolver/CaseConverterResolver.java       |  309 ++
 .../resolver/CaseConverterResolverFactory.java     |   34 +
 .../template/json/resolver/EndOfBatchResolver.java |   47 +
 .../json/resolver/EndOfBatchResolverFactory.java   |   50 +
 .../resolver/EventAdditionalFieldInterceptor.java  |   98 +
 .../template/json/resolver/EventResolver.java      |   24 +
 .../json/resolver/EventResolverContext.java        |  292 ++
 .../json/resolver/EventResolverFactories.java      |   39 +
 .../json/resolver/EventResolverFactory.java        |   40 +
 .../json/resolver/EventResolverInterceptor.java    |   37 +
 .../json/resolver/EventResolverInterceptors.java   |   38 +
 .../resolver/EventResolverStringSubstitutor.java   |   51 +
 .../resolver/EventRootObjectKeyInterceptor.java    |   53 +
 .../template/json/resolver/ExceptionResolver.java  |  448 +++
 .../json/resolver/ExceptionResolverFactory.java    |   50 +
 .../json/resolver/ExceptionRootCauseResolver.java  |   51 +
 .../ExceptionRootCauseResolverFactory.java         |   50 +
 .../template/json/resolver/LevelResolver.java      |  175 +
 .../json/resolver/LevelResolverFactory.java        |   49 +
 .../template/json/resolver/LoggerResolver.java     |   93 +
 .../json/resolver/LoggerResolverFactory.java       |   49 +
 .../template/json/resolver/MainMapResolver.java    |   90 +
 .../json/resolver/MainMapResolverFactory.java      |   49 +
 .../layout/template/json/resolver/MapResolver.java |   51 +
 .../template/json/resolver/MapResolverFactory.java |   49 +
 .../template/json/resolver/MarkerResolver.java     |   86 +
 .../json/resolver/MarkerResolverFactory.java       |   49 +
 .../json/resolver/MessageParameterResolver.java    |  215 ++
 .../resolver/MessageParameterResolverFactory.java  |   50 +
 .../template/json/resolver/MessageResolver.java    |  223 ++
 .../json/resolver/MessageResolverFactory.java      |   49 +
 .../template/json/resolver/PatternResolver.java    |   88 +
 .../json/resolver/PatternResolverFactory.java      |   49 +
 .../json/resolver/ReadOnlyStringMapResolver.java   |  386 +++
 .../template/json/resolver/SourceResolver.java     |  153 +
 .../json/resolver/SourceResolverFactory.java       |   49 +
 .../json/resolver/StackTraceElementResolver.java   |   95 +
 .../resolver/StackTraceElementResolverContext.java |  121 +
 .../resolver/StackTraceElementResolverFactory.java |   56 +
 ...StackTraceElementResolverStringSubstitutor.java |   51 +
 .../json/resolver/StackTraceObjectResolver.java    |   57 +
 .../template/json/resolver/StackTraceResolver.java |   22 +
 .../json/resolver/StackTraceStringResolver.java    |  130 +
 .../template/json/resolver/TemplateResolver.java   |   69 +
 .../json/resolver/TemplateResolverConfig.java      |   89 +
 .../json/resolver/TemplateResolverContext.java     |   60 +
 .../json/resolver/TemplateResolverFactories.java   |  130 +
 .../json/resolver/TemplateResolverFactory.java     |   46 +
 .../json/resolver/TemplateResolverInterceptor.java |   56 +
 .../resolver/TemplateResolverInterceptors.java     |  131 +
 .../TemplateResolverStringSubstitutor.java         |   38 +
 .../template/json/resolver/TemplateResolvers.java  |  385 +++
 .../json/resolver/ThreadContextDataResolver.java   |   38 +
 .../resolver/ThreadContextDataResolverFactory.java |   50 +
 .../json/resolver/ThreadContextStackResolver.java  |  107 +
 .../ThreadContextStackResolverFactory.java         |   50 +
 .../template/json/resolver/ThreadResolver.java     |   92 +
 .../json/resolver/ThreadResolverFactory.java       |   49 +
 .../template/json/resolver/TimestampResolver.java  |  481 +++
 .../json/resolver/TimestampResolverFactory.java    |   49 +
 .../layout/template/json/util/DummyRecycler.java   |   37 +
 .../template/json/util/DummyRecyclerFactory.java   |   39 +
 .../template/json/util/InstantFormatter.java       |  376 ++
 .../layout/template/json/util/JsonReader.java      |  451 +++
 .../layout/template/json/util/JsonWriter.java      |  919 +++++
 .../layout/template/json/util/MapAccessor.java     |  192 ++
 .../template/json/util/QueueingRecycler.java       |   61 +
 .../json/util/QueueingRecyclerFactory.java         |   40 +
 .../log4j/layout/template/json/util/Recycler.java  |   25 +
 .../template/json/util/RecyclerFactories.java      |  199 ++
 .../layout/template/json/util/RecyclerFactory.java |   31 +
 .../json/util/RecyclerFactoryConverter.java        |   34 +
 .../template/json/util/StringParameterParser.java  |  320 ++
 .../template/json/util/ThreadLocalRecycler.java    |   45 +
 .../json/util/ThreadLocalRecyclerFactory.java      |   40 +
 .../json/util/TruncatingBufferedPrintWriter.java   |   92 +
 .../json/util/TruncatingBufferedWriter.java        |  267 ++
 .../log4j/layout/template/json/util/Uris.java      |  140 +
 .../src/main/resources/EcsLayout.json              |   49 +
 .../src/main/resources/GelfLayout.json             |   43 +
 .../src/main/resources/JsonLayout.json             |   83 +
 .../main/resources/LogstashJsonEventLayoutV1.json  |   60 +
 .../main/resources/StackTraceElementLayout.json    |   18 +
 .../src/site/manual/index.md                       |   32 +
 log4j-layout-template-json/src/site/site.xml       |   55 +
 .../json/BlackHoleByteBufferDestination.java       |   50 +
 .../log4j/layout/template/json/EcsLayoutTest.java  |  111 +
 .../log4j/layout/template/json/GelfLayoutTest.java |  120 +
 .../log4j/layout/template/json/JacksonFixture.java |   31 +
 .../log4j/layout/template/json/JsonLayoutTest.java |   87 +
 .../JsonTemplateLayoutAdditionalFieldJsonTest.java |   36 +
 ...emplateLayoutAdditionalFieldPropertiesTest.java |   36 +
 ...onTemplateLayoutAdditionalFieldTestHelpers.java |   69 +
 .../JsonTemplateLayoutAdditionalFieldXmlTest.java  |   36 +
 .../JsonTemplateLayoutAdditionalFieldYamlTest.java |   36 +
 .../JsonTemplateLayoutConcurrentEncodeTest.java    |  205 ++
 .../JsonTemplateLayoutNullEventDelimiterTest.java  |  152 +
 .../template/json/JsonTemplateLayoutTest.java      | 2390 +++++++++++++
 .../layout/template/json/LogEventFixture.java      |  153 +
 .../log4j/layout/template/json/LogstashIT.java     |  517 +++
 .../log4j/layout/template/json/TestHelpers.java    |   75 +
 .../json/resolver/CaseConverterResolverTest.java   |  125 +
 .../template/json/util/InstantFormatterTest.java   |   47 +
 .../layout/template/json/util/JsonReaderTest.java  |  388 +++
 .../layout/template/json/util/JsonWriterTest.java  |  977 ++++++
 .../template/json/util/RecyclerFactoriesTest.java  |  139 +
 .../json/util/StringParameterParserTest.java       |  410 +++
 .../json/util/TruncatingBufferedWriterTest.java    |  244 ++
 .../log4j/layout/template/json/util/UrisTest.java  |   63 +
 ...onalFieldEnrichedJsonTemplateLayoutLogging.json |   42 +
 ...eldEnrichedJsonTemplateLayoutLogging.properties |   37 +
 ...ionalFieldEnrichedJsonTemplateLayoutLogging.xml |   34 +
 ...onalFieldEnrichedJsonTemplateLayoutLogging.yaml |   39 +
 ...nullEventDelimitedJsonTemplateLayoutLogging.xml |   38 +
 ...rFactoryCustomizedJsonTemplateLayoutLogging.xml |   30 +
 .../src/test/resources/testJsonTemplateLayout.json |   70 +
 log4j-liquibase/pom.xml                            |   21 +-
 log4j-liquibase/src/site/markdown/index.md         |    2 +-
 .../liquibase/ext/logging/log4j2/LoggingTest.java  |    2 +-
 log4j-mongodb2/pom.xml                             |  195 --
 log4j-mongodb2/revapi.json                         |   23 -
 .../logging/log4j/mongodb2/MongoDbConnection.java  |  103 -
 .../logging/log4j/mongodb2/MongoDbObject.java      |   66 -
 .../logging/log4j/mongodb2/MongoDbProvider.java    |  310 --
 .../logging/log4j/mongodb2/package-info.java       |   20 -
 log4j-mongodb2/src/site/markdown/index.md.vm       |   48 -
 log4j-mongodb2/src/site/site.xml                   |   52 -
 .../log4j/mongodb2/MongoDbAuthFailureTest.java     |   72 -
 .../logging/log4j/mongodb2/MongoDbCappedTest.java  |   72 -
 .../log4j/mongodb2/MongoDbMapMessageTest.java      |   78 -
 .../apache/logging/log4j/mongodb2/MongoDbTest.java |   71 -
 .../logging/log4j/mongodb2/MongoDbTestRule.java    |  184 -
 .../log4j/mongodb2/MongoDbTestTestRuleTest.java    |   71 -
 .../logging/log4j/mongodb2/TestConstants.java      |   24 -
 .../test/resources/log4j2-mongodb-auth-failure.xml |   31 -
 .../src/test/resources/log4j2-mongodb-capped.xml   |   31 -
 .../test/resources/log4j2-mongodb-map-message.xml  |   32 -
 .../src/test/resources/log4j2-mongodb.xml          |   31 -
 log4j-mongodb3/pom.xml                             |   32 +-
 .../apache/logging/log4j/mongodb3/LevelCodec.java  |   47 -
 .../logging/log4j/mongodb3/MongoDb3Connection.java |   98 +
 .../log4j/mongodb3/MongoDb3DocumentObject.java     |   58 +
 .../logging/log4j/mongodb3/MongoDb3LevelCodec.java |   54 +
 .../logging/log4j/mongodb3/MongoDb3Provider.java   |  329 ++
 .../logging/log4j/mongodb3/MongoDbConnection.java  |  113 -
 .../log4j/mongodb3/MongoDbDocumentObject.java      |   58 -
 .../logging/log4j/mongodb3/MongoDbProvider.java    |  325 --
 .../log4j/mongodb3/MongoDb3AuthFailureTest.java    |   72 +
 .../logging/log4j/mongodb3/MongoDb3CappedTest.java |   69 +
 .../log4j/mongodb3/MongoDb3MapMessageTest.java     |   76 +
 .../logging/log4j/mongodb3/MongoDb3Test.java       |   70 +
 .../log4j/mongodb3/MongoDb3TestConstants.java      |   24 +
 .../logging/log4j/mongodb3/MongoDb3TestRule.java   |  192 ++
 .../log4j/mongodb3/MongoDb3TestTestRuleTest.java   |   71 +
 .../log4j/mongodb3/MongoDbAuthFailureTest.java     |   72 -
 .../logging/log4j/mongodb3/MongoDbCappedTest.java  |   69 -
 .../log4j/mongodb3/MongoDbMapMessageTest.java      |   76 -
 .../apache/logging/log4j/mongodb3/MongoDbTest.java |   69 -
 .../logging/log4j/mongodb3/MongoDbTestRule.java    |  192 --
 .../log4j/mongodb3/MongoDbTestTestRuleTest.java    |   71 -
 .../logging/log4j/mongodb3/TestConstants.java      |   24 -
 log4j-mongodb4/pom.xml                             |  203 ++
 .../logging/log4j/mongodb4/MongoDb4Connection.java |  111 +
 .../log4j/mongodb4/MongoDb4DocumentObject.java     |   64 +
 .../logging/log4j/mongodb4/MongoDb4LevelCodec.java |   52 +
 .../logging/log4j/mongodb4/MongoDb4Provider.java   |  132 +
 .../logging/log4j/mongodb4/package-info.java       |   21 +
 .../src/site/markdown/index.md.vm                  |    0
 .../src/site/site.xml                              |    0
 .../log4j/mongodb4/MongoDb4AuthFailureTest.java    |   72 +
 .../logging/log4j/mongodb4/MongoDb4CappedTest.java |   69 +
 .../log4j/mongodb4/MongoDb4MapMessageTest.java     |   76 +
 .../logging/log4j/mongodb4/MongoDb4Test.java       |   70 +
 .../log4j/mongodb4/MongoDb4TestConstants.java      |   24 +
 .../logging/log4j/mongodb4/MongoDb4TestRule.java   |  186 +
 .../log4j/mongodb4/MongoDb4TestTestRuleTest.java   |   73 +
 .../test/resources/log4j2-mongodb-auth-failure.xml |   31 +
 .../src/test/resources/log4j2-mongodb-capped.xml   |   33 +
 .../test/resources/log4j2-mongodb-map-message.xml  |   31 +
 .../src/test/resources/log4j2-mongodb.xml          |   30 +
 log4j-osgi/pom.xml                                 |   46 +-
 log4j-perf/pom.xml                                 |   63 +-
 .../template/json/JsonTemplateLayoutBenchmark.java |  185 +
 .../json/JsonTemplateLayoutBenchmarkReport.java    |  359 ++
 .../json/JsonTemplateLayoutBenchmarkState.java     |  212 ++
 .../logging/log4j/perf/jmh/ClocksBenchmark.java    |    2 +-
 .../log4j/perf/jmh/DateTimeFormatBenchmark.java    |  122 +
 .../log4j/perf/jmh/LoggerConfigBenchmark.java      |    2 +-
 .../jmh/ParameterizedMessageInliningBenchmark.java |    3 +-
 .../logging/log4j/perf/jmh/StackWalkBenchmark.java |  138 +
 .../log4j/perf/jmh/ThreadLocalVsPoolBenchmark.java |  252 +-
 .../log4j/perf/jmh/TimeFormatBenchmark.java        |    4 +-
 .../logging/log4j/perf/util/StackDriver.java       |   47 +
 log4j-plugins-java9/pom.xml                        |  157 -
 log4j-plugins-java9/src/assembly/java9.xml         |   41 -
 log4j-plugins-java9/src/main/java/module-info.java |   34 -
 .../org/apache/logging/log4j/plugins/Dummy.java    |   24 -
 .../apache/logging/log4j/plugins/bind/Dummy.java   |   24 -
 .../logging/log4j/plugins/convert/Dummy.java       |   24 -
 .../plugins/convert/plugins/Log4jPlugins.java      |   25 -
 .../apache/logging/log4j/plugins/inject/Dummy.java |   24 -
 .../apache/logging/log4j/plugins/name/Dummy.java   |   24 -
 .../log4j/plugins/processor/PluginService.java     |   24 -
 .../apache/logging/log4j/plugins/util/Dummy.java   |   24 -
 .../logging/log4j/plugins/validation/Dummy.java    |   24 -
 .../plugins/validation/constraints/Dummy.java      |   24 -
 .../log4j/plugins/validation/validators/Dummy.java |   24 -
 log4j-plugins/pom.xml                              |  309 +-
 .../org/apache/logging/log4j/plugins/Node.java     |    6 +-
 .../org/apache/logging/log4j/plugins/Plugin.java   |    9 +-
 .../logging/log4j/plugins/PluginAliases.java       |    1 +
 .../logging/log4j/plugins/PluginAttribute.java     |   12 +
 .../log4j/plugins/PluginBuilderAttribute.java      |    2 +
 .../logging/log4j/plugins/PluginElement.java       |    1 +
 .../apache/logging/log4j/plugins/PluginValue.java  |    1 +
 .../log4j/plugins/convert/HexConverter.java        |    2 +-
 .../plugins/convert/TypeConverterRegistry.java     |   59 +-
 .../log4j/plugins/convert/TypeConverters.java      |    1 +
 .../log4j/plugins/defaults/bean/AbstractBean.java  |   74 -
 .../plugins/defaults/bean/AbstractProducer.java    |   74 -
 .../defaults/bean/AbstractProducerFactory.java     |   43 -
 .../plugins/defaults/bean/DefaultBeanManager.java  |  424 ---
 .../bean/DefaultInitializationContext.java         |  134 -
 .../defaults/bean/DefaultInjectionTarget.java      |  125 -
 .../bean/DefaultInjectionTargetFactory.java        |  111 -
 .../plugins/defaults/bean/DefaultInjector.java     |   84 -
 .../plugins/defaults/bean/DefaultScopeContext.java |   72 -
 .../defaults/bean/DependentScopeContext.java       |   58 -
 .../log4j/plugins/defaults/bean/FieldProducer.java |   59 -
 .../defaults/bean/FieldProducerFactory.java        |   45 -
 .../plugins/defaults/bean/InjectionTargetBean.java |   86 -
 .../plugins/defaults/bean/MethodProducer.java      |   62 -
 .../defaults/bean/MethodProducerFactory.java       |   47 -
 .../log4j/plugins/defaults/bean/OptionalBean.java  |   85 -
 .../log4j/plugins/defaults/bean/ProducerBean.java  |   94 -
 .../log4j/plugins/defaults/bean/ProvidedBean.java  |   36 -
 .../log4j/plugins/defaults/bean/ProviderBean.java  |   37 -
 .../log4j/plugins/defaults/bean/SystemBean.java    |   68 -
 .../defaults/model/AbstractMetaExecutable.java     |   44 -
 .../plugins/defaults/model/AbstractMetaMember.java |   74 -
 .../defaults/model/DefaultElementManager.java      |  197 --
 .../defaults/model/DefaultInjectionPoint.java      |   98 -
 .../defaults/model/DefaultMetaAnnotation.java      |  112 -
 .../model/DefaultMetaAnnotationElement.java        |   76 -
 .../plugins/defaults/model/DefaultMetaClass.java   |  143 -
 .../defaults/model/DefaultMetaConstructor.java     |   50 -
 .../plugins/defaults/model/DefaultMetaField.java   |   57 -
 .../plugins/defaults/model/DefaultMetaMethod.java  |   51 -
 .../defaults/model/DefaultMetaParameter.java       |   64 -
 .../plugins/defaults/model/DefaultVariable.java    |   79 -
 .../plugins/inject/PluginAttributeInjector.java    |    2 +-
 .../inject/PluginBuilderAttributeInjector.java     |    2 +-
 .../log4j/plugins/internal/util/BeanUtils.java     |   37 +
 .../plugins/name/AnnotatedElementNameProvider.java |    6 +-
 .../log4j/plugins/processor/PluginProcessor.java   |    8 +-
 .../log4j/plugins/processor/package-info.java      |    2 +-
 .../log4j/plugins/spi/AmbiguousBeanException.java  |   28 -
 .../log4j/plugins/spi/DefinitionException.java     |   24 -
 .../log4j/plugins/spi/IllegalProductException.java |   24 -
 .../log4j/plugins/spi/InitializationException.java |   24 -
 .../log4j/plugins/spi/InjectionException.java      |   28 -
 .../log4j/plugins/spi/ResolutionException.java     |   24 -
 .../plugins/spi/UnsatisfiedBeanException.java      |   32 -
 .../log4j/plugins/spi/ValidationException.java     |   27 -
 .../logging/log4j/plugins/spi/bean/Bean.java       |   50 -
 .../log4j/plugins/spi/bean/BeanManager.java        |  111 -
 .../plugins/spi/bean/InitializationContext.java    |   54 -
 .../log4j/plugins/spi/bean/InjectionTarget.java    |   34 -
 .../plugins/spi/bean/InjectionTargetFactory.java   |   22 -
 .../logging/log4j/plugins/spi/bean/Injector.java   |   43 -
 .../logging/log4j/plugins/spi/bean/Producer.java   |   37 -
 .../log4j/plugins/spi/bean/ProducerFactory.java    |   23 -
 .../log4j/plugins/spi/bean/ProviderFactory.java    |   24 -
 .../log4j/plugins/spi/bean/ScopeContext.java       |   63 -
 .../log4j/plugins/spi/model/ElementManager.java    |  152 -
 .../log4j/plugins/spi/model/InjectionPoint.java    |   56 -
 .../log4j/plugins/spi/model/MetaAnnotation.java    |   27 -
 .../plugins/spi/model/MetaAnnotationElement.java   |   24 -
 .../logging/log4j/plugins/spi/model/MetaClass.java |   42 -
 .../log4j/plugins/spi/model/MetaConstructor.java   |   22 -
 .../log4j/plugins/spi/model/MetaElement.java       |   56 -
 .../log4j/plugins/spi/model/MetaExecutable.java    |   24 -
 .../logging/log4j/plugins/spi/model/MetaField.java |   24 -
 .../log4j/plugins/spi/model/MetaMember.java        |   24 -
 .../log4j/plugins/spi/model/MetaMethod.java        |   22 -
 .../log4j/plugins/spi/model/MetaParameter.java     |   21 -
 .../log4j/plugins/spi/model/Qualifiers.java        |   87 -
 .../logging/log4j/plugins/spi/model/Variable.java  |   46 -
 .../apache/logging/log4j/plugins/util/Builder.java |    1 -
 .../logging/log4j/plugins/util/PluginRegistry.java |   19 +
 .../logging/log4j/plugins/util/PluginType.java     |    9 +
 .../logging/log4j/plugins/util/PluginUtil.java     |   96 +
 .../logging/log4j/plugins/util/package-info.java   |    2 +-
 .../log4j/plugins/validation/Constraint.java       |    1 +
 .../plugins/validation/constraints/Required.java   |    1 +
 .../plugins/validation/constraints/ValidHost.java  |    1 +
 .../plugins/validation/constraints/ValidPort.java  |    1 +
 log4j-plugins/src/main/java9/module-info.java      |   37 +
 .../AbstractPluginWithGenericBuilder.java          |   59 +
 .../log4j/plugins/test/validation/HostAndPort.java |   53 +
 .../PluginWithGenericSubclassFoo1Builder.java      |   66 +
 .../plugins/test/validation/ValidatingPlugin.java  |   69 +
 .../ValidatingPluginWithGenericBuilder.java        |   68 +
 .../ValidatingPluginWithTypedBuilder.java          |   69 +
 log4j-plugins/src/test/java-test9/module-info.java |    8 +
 .../plugins/convert/TypeConverterRegistryTest.java |   82 +-
 .../defaults/bean/DefaultBeanManagerTest.java      |  352 --
 .../plugins/processor/PluginProcessorTest.java     |    4 -
 .../log4j/plugins/test/BeanJUnit4Runner.java       |  133 -
 .../logging/log4j/plugins/test/WithBeans.java      |   36 -
 .../util/ResolverUtilCustomProtocolTest.java       |    4 +-
 .../log4j/plugins/util/ResolverUtilTest.java       |    5 +-
 .../AbstractPluginWithGenericBuilder.java          |   59 -
 .../log4j/plugins/validation/HostAndPort.java      |   53 -
 .../PluginWithGenericSubclassFoo1Builder.java      |   66 -
 .../log4j/plugins/validation/ValidatingPlugin.java |   69 -
 .../ValidatingPluginWithGenericBuilder.java        |   68 -
 .../ValidatingPluginWithTypedBuilder.java          |   69 -
 log4j-plugins/src/test/java9/module-info.java      |   18 +
 log4j-redis/pom.xml                                |  179 +
 .../appender/LoggingRedisPoolConfiguration.java    |  148 +
 .../log4j/redis/appender/RedisAppender.java        |  255 ++
 .../logging/log4j/redis/appender/RedisManager.java |  123 +
 log4j-redis/src/site/manual/index.md               |   29 +
 {log4j-smtp => log4j-redis}/src/site/site.xml      |    0
 .../log4j/redis/appender/RedisAppenderTest.java    |  192 ++
 .../log4j/redis/appender/RedisManagerTest.java     |  111 +
 log4j-samples/log4j-samples-configuration/pom.xml  |    1 +
 log4j-samples/log4j-samples-flume-common/pom.xml   |    1 +
 .../log4j/samples/app/LoggingController.java       |    2 +-
 log4j-samples/log4j-samples-flume-embedded/pom.xml |    9 +-
 log4j-samples/log4j-samples-flume-remote/pom.xml   |    9 +-
 .../log4j-samples-loggerProperties/pom.xml         |    1 +
 log4j-samples/pom.xml                              |    3 +-
 log4j-slf4j-impl/pom.xml                           |   24 +-
 .../apache/logging/slf4j/Log4jLoggerFactory.java   |    8 +-
 .../org/apache/logging/slf4j/Log4jMDCAdapter.java  |    4 +-
 .../logging/slf4j/CallerInformationTest.java       |    4 +-
 .../logging/slf4j/Log4j2_1482_Slf4jTest.java       |    2 +-
 .../java/org/apache/logging/slf4j/LoggerTest.java  |    4 +-
 .../org/apache/logging/slf4j/OptionalTest.java     |    4 +-
 .../org/apache/logging/slf4j/SerializeTest.java    |    4 +-
 log4j-slf4j18-impl/pom.xml                         |   24 +-
 .../apache/logging/slf4j/Log4jLoggerFactory.java   |    8 +-
 .../org/apache/logging/slf4j/Log4jMDCAdapter.java  |    4 +-
 .../logging/slf4j/CallerInformationTest.java       |    4 +-
 .../logging/slf4j/Log4j2_1482_Slf4jTest.java       |    2 +-
 .../java/org/apache/logging/slf4j/LoggerTest.java  |    4 +-
 .../org/apache/logging/slf4j/SerializeTest.java    |    4 +-
 log4j-smtp/pom.xml                                 |   22 +-
 .../logging/log4j/smtp/appender/SmtpAppender.java  |  281 +-
 .../logging/log4j/smtp/appender/SmtpManager.java   |   58 +-
 .../log4j/smtp/appender/SmtpAppenderAsyncTest.java |    4 +-
 .../log4j/smtp/appender/SmtpAppenderTest.java      |   25 +-
 log4j-spring-boot/pom.xml                          |  223 ++
 .../boot/Log4j2CloudConfigLoggingSystem.java       |  216 ++
 .../log4j/spring/boot/SpringEnvironmentHolder.java |   50 +
 .../logging/log4j/spring/boot/SpringLookup.java    |  135 +
 .../log4j/spring/boot/SpringProfileArbiter.java    |   97 +
 .../log4j/spring/boot/SpringPropertySource.java    |   54 +
 .../org.apache.logging.log4j.util.PropertySource   |   15 +
 .../src/main/resources/log4j2.system.properties    |   17 +
 log4j-spring-boot/src/site/markdown/index.md       |   60 +
 .../src/site/site.xml                              |    0
 .../boot/Log4j2CloudConfigLoggingSystemTest.java   |   41 +
 .../log4j/spring/boot/SpringLookupTest.java        |   60 +
 .../log4j/spring/boot/SpringProfileTest.java       |   69 +
 .../src/test/resources/log4j2-springProfile.xml    |   41 +
 .../log4j-spring-cloud-config-client/pom.xml       |   38 +-
 .../client/Log4j2CloudConfigLoggingSystem.java     |  146 -
 .../cloud/config/client/Log4j2EventListener.java   |   21 +-
 .../config/client/SpringEnvironmentHolder.java     |   48 -
 .../spring/cloud/config/client/SpringLookup.java   |   47 -
 .../cloud/config/client/SpringPropertySource.java  |   54 -
 .../src/main/resources/META-INF/spring.factories   |   18 +-
 .../src/main/resources/log4j2.component.properties |    0
 .../src/main/resources/log4j2.system.properties    |    1 -
 .../src/site/markdown/index.md                     |   12 +
 .../config/client/Log4j2EventListenerTest.java     |  114 +
 .../cloud/config/client/SpringConfiguration.java   |   26 +
 .../src/test/resources/log4j2-console.xml          |    0
 .../README.md                                      |    6 +-
 .../docker/app-compose.yml                         |    2 +-
 .../docker/combined-compose.yml                    |   86 +
 .../docker/restartApp.sh                           |    4 +-
 .../k8s/sampleapp-deployment.yaml                  |   33 +-
 .../pom.xml                                        |   52 +-
 .../cloud/config/sample/config/WebMvcConfig.java   |    4 +-
 .../config/sample/controller/K8SController.java    |   71 +
 .../config/sample/controller/SampleController.java |    8 +
 .../src/main/resources/EnhancedGelf.json           |   40 +
 .../src/main/resources/application.yml             |    2 +-
 .../pom.xml                                        |   49 +-
 .../src/main/config-repo/log4j2.xml                |   28 +-
 .../log4j-spring-cloud-config-samples/pom.xml      |   10 +-
 log4j-spring-cloud-config/pom.xml                  |   11 +-
 log4j-taglib/pom.xml                               |   29 +-
 .../logging/log4j/taglib/CatchingTagTest.java      |    4 +-
 .../apache/logging/log4j/taglib/EnterTagTest.java  |    4 +-
 .../apache/logging/log4j/taglib/ExitTagTest.java   |    4 +-
 .../logging/log4j/taglib/IfEnabledTagTest.java     |    2 +-
 .../log4j/taglib/LoggingMessageTagSupportTest.java |    4 +-
 log4j-to-slf4j/pom.xml                             |   18 +-
 .../org/apache/logging/slf4j/MDCContextMap.java    |    6 +-
 .../logging/slf4j/SLF4JLoggerContextFactory.java   |    6 +
 .../java/org/apache/logging/slf4j/LoggerTest.java  |   41 +-
 log4j-web/pom.xml                                  |   28 +-
 .../web/Log4jServletContainerInitializer.java      |    5 +-
 .../log4j/web/Log4jServletContextListener.java     |   27 +-
 .../Log4jShutdownOnContextDestroyedListener.java   |   80 +
 .../logging/log4j/web/Log4jWebInitializerImpl.java |    9 +-
 .../apache/logging/log4j/web/Log4jWebSupport.java  |    7 +
 .../logging/log4j/web/WebLoggerContextUtils.java   |   20 +-
 .../org/apache/logging/log4j/web/WebLookup.java    |   15 +
 .../web/Log4jServletContainerInitializerTest.java  |   60 +-
 .../log4j/web/Log4jServletContextListenerTest.java |   58 +-
 .../logging/log4j/web/Log4jServletFilterTest.java  |   23 +-
 ...og4jShutdownOnContextDestroyedListenerTest.java |   83 +
 .../log4j/web/Log4jWebInitializerImplTest.java     |  168 +-
 .../org/apache/logging/log4j/web/PropertyTest.java |   10 +-
 .../logging/log4j/web/ServletAppenderTest.java     |   12 +-
 .../apache/logging/log4j/web/WebLookupTest.java    |   43 +-
 log4j-web/src/test/resources/log4j2-combined.xml   |   31 +
 log4j-web/src/test/resources/log4j2-override.xml   |   23 +
 mvnw                                               |  156 +-
 mvnw.cmd                                           |   54 +-
 pom.xml                                            | 3639 ++++++++++----------
 src/changes/changes.xml                            |  490 ++-
 src/site/asciidoc/articles.adoc                    |   24 +
 src/site/asciidoc/download.adoc                    |   31 +-
 src/site/asciidoc/javadoc.adoc                     |    6 +-
 src/site/asciidoc/manual/appenders.adoc            |  203 +-
 src/site/asciidoc/manual/async.adoc                |   46 +-
 src/site/asciidoc/manual/configuration.adoc        |  261 +-
 src/site/asciidoc/manual/customconfig.adoc         |    6 +-
 src/site/asciidoc/manual/extending.adoc            |   69 +-
 src/site/asciidoc/manual/garbagefree.adoc          |    7 +
 .../asciidoc/manual/json-template-layout.adoc.vm   | 1843 ++++++++++
 src/site/asciidoc/manual/layouts.adoc              |  196 +-
 src/site/asciidoc/manual/lookups.adoc              |   21 +-
 src/site/asciidoc/manual/messages.adoc             |    4 +-
 src/site/asciidoc/manual/plugins.adoc              |    7 +-
 src/site/asciidoc/manual/webapp.adoc               |   13 +-
 src/site/asciidoc/runtime-dependencies.adoc        |    5 +-
 src/site/asciidoc/security.adoc                    |  137 +
 src/site/markdown/manual/cloud.md                  |  226 +-
 src/site/resources/images/kibana.png               |  Bin 0 -> 1823540 bytes
 src/site/site.xml                                  |   10 +-
 toolchains-docker.xml                              |   17 +-
 toolchains-jenkins-ibm.xml                         |   63 -
 toolchains-jenkins-ubuntu.xml                      |   71 -
 toolchains-jenkins-win.xml                         |   62 -
 toolchains-sample-linux.xml                        |   18 +-
 toolchains-sample-mac.xml                          |   20 +-
 toolchains-sample-win.xml                          |   20 +-
 1790 files changed, 61354 insertions(+), 44317 deletions(-)
 create mode 100644 .asf.yaml
 create mode 100644 .github/dependabot.yml
 create mode 100644 .github/workflows/main.yml
 create mode 100644 .github/workflows/maven-toolchains.xml
 delete mode 100644 .travis-toolchains.xml
 delete mode 100644 .travis.yml
 delete mode 100644 Jenkinsfile
 create mode 100644 SECURITY.md
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/Appender.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/AppenderSkeleton.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/BasicConfigurator.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/Category.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/ConsoleAppender.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/Layout.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/Level.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/LogManager.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/Logger.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/MDC.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/NDC.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/PatternLayout.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/Priority.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/PropertyConfigurator.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/RenderedMessage.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/SimpleLayout.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/WriterAppender.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/bridge/AppenderAdapter.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/bridge/AppenderWrapper.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/bridge/ErrorHandlerAdapter.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/bridge/FilterAdapter.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/bridge/FilterWrapper.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/bridge/LayoutAdapter.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/bridge/LayoutWrapper.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/bridge/LogEventAdapter.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/builders/BooleanHolder.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/builders/BuilderManager.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/builders/Holder.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/builders/appender/AppenderBuilder.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/builders/appender/ConsoleAppenderBuilder.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/builders/appender/DailyRollingFileAppenderBuilder.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/builders/appender/FileAppenderBuilder.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/builders/appender/NullAppenderBuilder.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/builders/appender/RollingFileAppenderBuilder.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/builders/filter/DenyAllFilterBuilder.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/builders/filter/FilterBuilder.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/builders/filter/LevelMatchFilterBuilder.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/builders/filter/LevelRangeFilterBuilder.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/builders/filter/StringMatchFilterBuilder.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/builders/layout/HtmlLayoutBuilder.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/builders/layout/LayoutBuilder.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/builders/layout/PatternLayoutBuilder.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/builders/layout/SimpleLayoutBuilder.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/builders/layout/TTCCLayoutBuilder.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/builders/layout/XmlLayoutBuilder.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/config/InputStreamWrapper.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/config/Log4j1Configuration.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/config/Log4j1ConfigurationConverter.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/config/Log4j1ConfigurationFactory.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/config/Log4j1ConfigurationParser.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/config/PropertySetter.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/config/PropertySetterException.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/config/package-info.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/helpers/NullEnumeration.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/helpers/OptionConverter.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/helpers/QuietWriter.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/helpers/package-info.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/layout/Log4j1XmlLayout.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/legacy/core/CategoryUtil.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/legacy/core/ContextUtil.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/or/ObjectRenderer.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/or/RendererSupport.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/or/ThreadGroupRenderer.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/or/jms/MessageRenderer.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/package-info.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/pattern/Log4j1MdcPatternConverter.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/pattern/Log4j1NdcPatternConverter.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/spi/AppenderAttachable.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/spi/Configurator.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/spi/ErrorCode.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/spi/ErrorHandler.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/spi/Filter.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/spi/HierarchyEventListener.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/spi/LocationInfo.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/spi/LoggerFactory.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/spi/LoggerRepository.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/spi/LoggingEvent.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/spi/OptionHandler.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/spi/RepositorySelector.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/spi/ThrowableInformation.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/spi/package-info.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/xml/DOMConfigurator.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/xml/Log4jEntityResolver.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/xml/UnrecognizedElementHandler.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/xml/XmlConfigurationFactory.java
 delete mode 100644 log4j-1.2-api/src/src/main/java/org/apache/log4j/xml/package-info.java
 delete mode 100644 log4j-1.2-api/src/src/main/resources/org/apache/log4j/xml/log4j.dtd
 delete mode 100644 log4j-1.2-api/src/src/site/markdown/index.md
 delete mode 100644 log4j-1.2-api/src/src/site/site.xml
 delete mode 100644 log4j-1.2-api/src/src/test/java/org/apache/log4j/BasicConfigurationFactory.java
 delete mode 100644 log4j-1.2-api/src/src/test/java/org/apache/log4j/CallerInformationTest.java
 delete mode 100644 log4j-1.2-api/src/src/test/java/org/apache/log4j/CategoryTest.java
 delete mode 100644 log4j-1.2-api/src/src/test/java/org/apache/log4j/LevelTest.java
 delete mode 100644 log4j-1.2-api/src/src/test/java/org/apache/log4j/ListAppender.java
 delete mode 100644 log4j-1.2-api/src/src/test/java/org/apache/log4j/LogWithMDCTest.java
 delete mode 100644 log4j-1.2-api/src/src/test/java/org/apache/log4j/LogWithRouteTest.java
 delete mode 100644 log4j-1.2-api/src/src/test/java/org/apache/log4j/LoggerTest.java
 delete mode 100644 log4j-1.2-api/src/src/test/java/org/apache/log4j/LoggingTest.java
 delete mode 100644 log4j-1.2-api/src/src/test/java/org/apache/log4j/MDCTestCase.java
 delete mode 100644 log4j-1.2-api/src/src/test/java/org/apache/log4j/NDCTest.java
 delete mode 100644 log4j-1.2-api/src/src/test/java/org/apache/log4j/PriorityTest.java
 delete mode 100644 log4j-1.2-api/src/src/test/java/org/apache/log4j/VelocityTest.java
 delete mode 100644 log4j-1.2-api/src/src/test/java/org/apache/log4j/config/AbstractLog4j1ConfigurationConverterTest.java
 delete mode 100644 log4j-1.2-api/src/src/test/java/org/apache/log4j/config/AutoConfigTest.java
 delete mode 100644 log4j-1.2-api/src/src/test/java/org/apache/log4j/config/Log4j1ConfigurationConverterHadoopTest.java
 delete mode 100644 log4j-1.2-api/src/src/test/java/org/apache/log4j/config/Log4j1ConfigurationConverterSparkTest.java
 delete mode 100644 log4j-1.2-api/src/src/test/java/org/apache/log4j/config/Log4j1ConfigurationFactoryTest.java
 delete mode 100644 log4j-1.2-api/src/src/test/java/org/apache/log4j/config/XmlConfigurationFactoryTest.java
 delete mode 100644 log4j-1.2-api/src/src/test/java/org/apache/log4j/layout/Log4j1XmlLayoutTest.java
 delete mode 100644 log4j-1.2-api/src/src/test/java/org/apache/log4j/pattern/Log4j1MdcPatternConverterTest.java
 delete mode 100644 log4j-1.2-api/src/src/test/java/org/apache/log4j/pattern/Log4j1NdcPatternConverterTest.java
 delete mode 100644 log4j-1.2-api/src/src/test/java/org/apache/log4j/util/SerializationTestHelper.java
 delete mode 100644 log4j-1.2-api/src/src/test/resources/L7D_en_US.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/L7D_fr.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/L7D_fr_CH.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-common-project/hadoop-auth-examples/src/main/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-common-project/hadoop-common/src/main/conf/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-common-project/hadoop-common/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-common-project/hadoop-kms/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-common-project/hadoop-minikdc/src/main/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-common-project/hadoop-nfs/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-hdfs-project/hadoop-hdfs-client/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-hdfs-project/hadoop-hdfs/src/contrib/bkjournal/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-common/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-hs/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-jobclient/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-nativetask/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-shuffle/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-tools/hadoop-aws/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-tools/hadoop-azure/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-tools/hadoop-openstack/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-tools/hadoop-sls/src/main/sample-conf/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-applications-distributedshell/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-applications-unmanaged-am-launcher/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-registry/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-tests/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timelineservice-hbase-tests/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/hadoop/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timelineservice/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/log4j-DailyRollingFileAppender.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/log4j-NullAppender.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/log4j-RollingFileAppender-with-props.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/log4j-RollingFileAppender.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/log4j-console-EnhancedPatternLayout.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/log4j-console-HtmlLayout.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/log4j-console-PatternLayout.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/log4j-console-SimpleLayout.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/log4j-console-TTCCLayout.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/log4j-console-XmlLayout.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/log4j-file-SimpleLayout.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/log4j-system-properties-1.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/log4j-system-properties-2.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/spark/R/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/spark/common/network-common/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/spark/common/network-shuffle/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/spark/core/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/spark/external/flume-sink/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/spark/external/flume/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/spark/external/java8-tests/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/spark/external/kafka-0-10/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/spark/external/kafka-0-8/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/spark/external/kinesis-asl/src/main/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/spark/external/kinesis-asl/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/spark/graphx/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/spark/launcher/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/spark/mllib/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/spark/repl/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/spark/sql/catalyst/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/spark/sql/core/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/spark/sql/hive/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/spark/streaming/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/config-1.2/spark/yarn/src/test/resources/log4j.properties
 delete mode 100644 log4j-1.2-api/src/src/test/resources/hello.vm
 delete mode 100644 log4j-1.2-api/src/src/test/resources/log-RouteWithMDC.xml
 delete mode 100644 log4j-1.2-api/src/src/test/resources/log4j.xml
 delete mode 100644 log4j-1.2-api/src/src/test/resources/log4j1-file.xml
 delete mode 100644 log4j-1.2-api/src/src/test/resources/log4j1-list.xml
 delete mode 100644 log4j-1.2-api/src/src/test/resources/log4j2-config.xml
 delete mode 100644 log4j-1.2-api/src/src/test/resources/logWithMDC.xml
 delete mode 100644 log4j-1.2-api/src/src/test/resources/witness/serialization/info.bin
 create mode 100644 log4j-1.2-api/src/test/java/org/apache/log4j/bridge/LogEventWrapperTest.java
 create mode 100644 log4j-1.2-api/src/test/java/org/apache/log4j/config/PropertiesReconfigurationTest.java
 create mode 100644 log4j-1.2-api/src/test/java/org/apache/log4j/config/XmlReconfigurationTest.java
 delete mode 100644 log4j-api-java9/pom.xml
 delete mode 100644 log4j-api-java9/src/assembly/java9.xml
 delete mode 100644 log4j-api-java9/src/main/java/module-info.java
 delete mode 100644 log4j-api-java9/src/main/java/org/apache/logging/log4j/Dummy.java
 delete mode 100644 log4j-api-java9/src/main/java/org/apache/logging/log4j/log4j/util/PropertySource.java
 delete mode 100644 log4j-api-java9/src/main/java/org/apache/logging/log4j/message/Dummy.java
 delete mode 100644 log4j-api-java9/src/main/java/org/apache/logging/log4j/message/ThreadDumpMessage.java
 delete mode 100644 log4j-api-java9/src/main/java/org/apache/logging/log4j/simple/Dummy.java
 delete mode 100644 log4j-api-java9/src/main/java/org/apache/logging/log4j/spi/Provider.java
 delete mode 100644 log4j-api-java9/src/main/java/org/apache/logging/log4j/status/Dummy.java
 delete mode 100644 log4j-api-java9/src/main/java/org/apache/logging/log4j/util/PrivateSecurityManagerStackTraceUtil.java
 delete mode 100644 log4j-api-java9/src/main/java/org/apache/logging/log4j/util/ProcessIdUtil.java
 delete mode 100644 log4j-api-java9/src/main/java/org/apache/logging/log4j/util/StackLocator.java
 delete mode 100644 log4j-api-java9/src/main/java/org/apache/logging/log4j/util/internal/DefaultObjectInputFilter.java
 delete mode 100644 log4j-api-java9/src/test/java/org/apache/logging/log4j/util/ProcessIdUtilTest.java
 delete mode 100644 log4j-api-java9/src/test/java/org/apache/logging/log4j/util/StackLocatorTest.java
 create mode 100644 log4j-api/src/main/java/module-info.java
 create mode 100644 log4j-api/src/main/java/org/apache/logging/log4j/internal/DefaultObjectInputFilter.java
 create mode 100644 log4j-api/src/main/java/org/apache/logging/log4j/internal/LogManagerStatus.java
 create mode 100644 log4j-api/src/main/java/org/apache/logging/log4j/util/ProcessIdUtil.java
 copy {log4j-spring-cloud-config/log4j-spring-cloud-config-samples/log4j-spring-cloud-config-sample-application => log4j-api}/src/main/resources/META-INF/MANIFEST.MF (100%)
 create mode 100644 log4j-api/src/test/java-test/module-info.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/AbstractSerializationTest.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/SerializableMatchers.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/TestLogger.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/TestLoggerContext.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/TestLoggerContextFactory.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/ThreadContextHolder.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/ThreadContextTest.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/ThreadContextUtilityClass.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/AbstractExternalFileCleaner.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/AbstractFileCleaner.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/ClassMatchers.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/CleanFiles.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/CleanFolders.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/CleanUpDirectories.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/CleanUpFiles.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/DirectoryCleaner.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/FileCleaner.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/LogManagerLoggerContextFactoryRule.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/LoggerContextFactoryExtension.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/Mutable.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/SecurityManagerTestRule.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/SerialUtil.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/StatusLoggerLevel.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/StatusLoggerLevelExtension.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/StatusLoggerRule.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/ThreadContextExtension.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/ThreadContextMapRule.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/ThreadContextRule.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/ThreadContextStackRule.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/URLStreamHandlerFactoryRule.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/UsingAnyThreadContext.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/UsingThreadContextMap.java
 create mode 100644 log4j-api/src/test/java-test/org/apache/logging/log4j/test/junit/UsingThreadContextStack.java
 create mode 100644 log4j-api/src/test/java/module-info.java
 delete mode 100644 log4j-api/src/test/java/org/apache/logging/log4j/AbstractSerializationTest.java
 delete mode 100644 log4j-api/src/test/java/org/apache/logging/log4j/SerializableMatchers.java
 delete mode 100644 log4j-api/src/test/java/org/apache/logging/log4j/TestLogger.java
 delete mode 100644 log4j-api/src/test/java/org/apache/logging/log4j/TestLoggerContext.java
 delete mode 100644 log4j-api/src/test/java/org/apache/logging/log4j/TestLoggerContextFactory.java
 delete mode 100644 log4j-api/src/test/java/org/apache/logging/log4j/ThreadContextHolder.java
 delete mode 100644 log4j-api/src/test/java/org/apache/logging/log4j/ThreadContextTest.java
 delete mode 100644 log4j-api/src/test/java/org/apache/logging/log4j/ThreadContextUtilityClass.java
 delete mode 100644 log4j-api/src/test/java/org/apache/logging/log4j/junit/AbstractExternalFileCleaner.java
 delete mode 100644 log4j-api/src/test/java/org/apache/logging/log4j/junit/ClassMatchers.java
 delete mode 100644 log4j-api/src/test/java/org/apache/logging/log4j/junit/CleanFiles.java
 delete mode 100644 log4j-api/src/test/java/org/apache/logging/log4j/junit/CleanFolders.java
 delete mode 100644 log4j-api/src/test/java/org/apache/logging/log4j/junit/LogManagerLoggerContextFactoryRule.java
 delete mode 100644 log4j-api/src/test/java/org/apache/logging/log4j/junit/Mutable.java
 delete mode 100644 log4j-api/src/test/java/org/apache/logging/log4j/junit/SecurityManagerTestRule.java
 delete mode 100644 log4j-api/src/test/java/org/apache/logging/log4j/junit/SerialUtil.java
 delete mode 100644 log4j-api/src/test/java/org/apache/logging/log4j/junit/StatusLoggerRule.java
 delete mode 100644 log4j-api/src/test/java/org/apache/logging/log4j/junit/ThreadContextMapRule.java
 delete mode 100644 log4j-api/src/test/java/org/apache/logging/log4j/junit/ThreadContextRule.java
 delete mode 100644 log4j-api/src/test/java/org/apache/logging/log4j/junit/ThreadContextStackRule.java
 delete mode 100644 log4j-api/src/test/java/org/apache/logging/log4j/junit/URLStreamHandlerFactoryRule.java
 copy log4j-api/src/{main => test}/resources/Log4j-charsets.properties (100%)
 delete mode 100644 log4j-core-java9/pom.xml
 delete mode 100644 log4j-core-java9/src/assembly/java9.xml
 delete mode 100644 log4j-core-java9/src/main/java/org/apache/logging/log4j/core/util/Clock.java
 delete mode 100644 log4j-core-java9/src/main/java/org/apache/logging/log4j/core/util/Instant.java
 delete mode 100644 log4j-core-java9/src/main/java/org/apache/logging/log4j/core/util/MutableInstant.java
 delete mode 100644 log4j-core-java9/src/main/java/org/apache/logging/log4j/core/util/PreciseClock.java
 delete mode 100644 log4j-core-java9/src/main/java/org/apache/logging/log4j/core/util/SystemClock.java
 delete mode 100644 log4j-core-java9/src/test/java/org/apache/logging/log4j/core/util/Dummy.java
 create mode 100644 log4j-core/README.md
 create mode 100644 log4j-core/src/main/assembly/test-resources.xml
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/appender/AsyncAppenderEventDispatcher.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/RolloverListener.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/async/BasicAsyncLoggerContextSelector.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/arbiters/Arbiter.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/arbiters/ClassArbiter.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/arbiters/DefaultArbiter.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/arbiters/ScriptArbiter.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/arbiters/SelectArbiter.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/arbiters/SystemPropertyArbiter.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/AmbiguousBeanException.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/DefinitionException.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/IllegalProductException.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/InitializationException.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/InjectionException.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/ResolutionException.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/UnsatisfiedBeanException.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/ValidationException.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/Bean.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/BeanManager.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/InitializationContext.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/InjectionTarget.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/InjectionTargetFactory.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/Injector.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/Producer.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/ProducerFactory.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/ProviderFactory.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/ScopeContext.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/ElementManager.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/InjectionPoint.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaAnnotation.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaAnnotationElement.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaClass.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaConstructor.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaElement.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaExecutable.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaField.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaMember.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaMethod.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaParameter.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/Qualifiers.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/Variable.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/AbstractBean.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/AbstractProducer.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/AbstractProducerFactory.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultBeanManager.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultInitializationContext.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultInjectionTarget.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultInjectionTargetFactory.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultInjector.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultScopeContext.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DependentScopeContext.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/FieldProducer.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/FieldProducerFactory.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/InjectionTargetBean.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/MethodProducer.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/MethodProducerFactory.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/OptionalBean.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/ProducerBean.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/ProvidedBean.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/ProviderBean.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/SystemBean.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/AbstractMetaExecutable.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/AbstractMetaMember.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultElementManager.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultInjectionPoint.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaAnnotation.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaAnnotationElement.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaClass.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaConstructor.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaField.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaMethod.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaParameter.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultVariable.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/pattern/RepeatPatternConverter.java
 create mode 100644 log4j-core/src/main/java/org/apache/logging/log4j/core/plugins/package-info.java
 create mode 100644 log4j-core/src/main/java9/module-info.java
 copy {log4j-spring-cloud-config/log4j-spring-cloud-config-samples/log4j-spring-cloud-config-sample-application => log4j-core}/src/main/resources/META-INF/MANIFEST.MF (100%)
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/AvailablePortFinder.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/AvailablePortSystemPropertyTestRule.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/BasicConfigurationFactory.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/CoreLoggerContexts.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/ExtendedLevels.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/GetLogger.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/RuleChainFactory.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/TestMarkers.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/appender/AlwaysFailAppender.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/appender/BlockingAppender.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/appender/EncodingListAppender.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/appender/FailOnceAppender.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/appender/InMemoryAppender.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/appender/ListAppender.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/categories/Appenders.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/categories/AsyncLoggers.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/categories/Configurations.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/categories/GarbageFree.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/categories/Layouts.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/categories/PerformanceTests.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/categories/Scripts.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/categories/package-info.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/hamcrest/Descriptors.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/hamcrest/FileMatchers.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/hamcrest/MapMatchers.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/AppenderResolver.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/BeanJUnit4Runner.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/ConfigurationResolver.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/JndiRule.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/LoggerContextResolver.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/LoggerContextRule.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/LoggerContextSource.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/Named.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/ReconfigurationPolicy.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/TypeBasedParameterResolver.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/WithBeans.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/package-info.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/layout/Log4j2_1482_Test.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/layout/LogEventFixtures.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/net/mock/MockSyslogServer.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/net/mock/MockSyslogServerFactory.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/net/mock/MockTcpSyslogServer.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/net/mock/MockTlsSyslogServer.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/net/mock/MockUdpSyslogServer.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/net/ssl/LegacyBsdTlsSyslogInputStreamReader.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/net/ssl/TestConstants.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/net/ssl/TlsSyslogInputStreamReader.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/net/ssl/TlsSyslogInputStreamReaderBase.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/net/ssl/TlsSyslogMessageFormat.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/parser/AbstractLogEventParserTest.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/util/FixedTimeClock.java
 create mode 100644 log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/util/Profiler.java
 create mode 100644 log4j-core/src/test/java-test9/module-info.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/FormatterLoggerManualExample.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/LogRolloverTest.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/LogbackSubstitution.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/TestMarkers.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/ThreadContextTestAccess.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/categories/Appenders.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/categories/AsyncLoggers.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/categories/Configurations.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/categories/Layouts.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/categories/PerformanceTests.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/categories/package-info.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/BasicConfigurationFactory.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/CoreLoggerContexts.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/FormatterLoggerManualExample.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/GcFreeAsynchronousLoggingTest.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/GcFreeLoggingTestUtil.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/GcFreeMixedSyncAyncLoggingTest.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/GcFreeSynchronousLoggingTest.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/LogRolloverTest.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/LogbackSubstitution.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/ThreadContextTestAccess.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/appender/AsyncAppenderNoLocationTest.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/appender/AsyncAppenderShutdownTimeoutTest.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/appender/FileAppenderPermissionsXmlConfigTest.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/appender/MemoryMappedFileAppenderLocationTest.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/appender/MemoryMappedFileAppenderRemapTest.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/appender/MemoryMappedFileAppenderSimpleTest.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/appender/MemoryMappedFileAppenderTest.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronOnStartupTest.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderOnStartupDirectTest.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingDirectSizeTimeNewDirectoryTest.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingDirectTimeNewDirectoryTest.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingNewDirectoryTest.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/action/FileSizeTest.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncAppenderExceptionHandlingTest.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/async/BasicAsyncLoggerContextSelectorTest.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/config/AbstractLog4j2_1100Test.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/config/CompositeConfigurationMissingTest.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/config/ConfigurationFactoryTest.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/config/ConfigurationTest.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/config/JiraLog4j2_1100JsonTest.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/config/JiraLog4j2_1100XmlTest.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/config/JiraLog4j2_1100YamlBadTest.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/config/JiraLog4j2_1100YamlGoodTest.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/config/MockReliabilityStrategy.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/config/MultipleTriggeringPolicyTest.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/config/ReliabilityStrategyTest.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/config/XIncludeTest.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/config/arbiters/BasicArbiterTest.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/config/arbiters/ScriptArbiterTest.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/config/arbiters/SelectArbiterTest.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultBeanManagerTest.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/config/properties/PropertiesConfigurationRootLoggerOnlyTest.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/config/properties/PropertiesConfigurationTrailingSpaceOnLevelTest.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/config/properties/RollingFilePropertiesTest.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/config/xml/XmlConfigurationSecurity.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/config/xml/XmlConigurationSecurity.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/config/xml/XmlSchemaTest.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/layout/GelfLayout2Test.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/layout/GelfLayout3Test.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/layout/GelfLayoutPatternSelectorTest.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/layout/GelfLayoutTest2.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/layout/GelfLayoutTest3.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/layout/Log4j2_1482_Test.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/layout/LogEventFixtures.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/layout/PatternLayoutRepeatTest.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/message/MutableLogEventWithReusableParamMsgTest.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/net/mock/MockSyslogServer.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/net/mock/MockSyslogServerFactory.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/net/mock/MockTcpSyslogServer.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/net/mock/MockTlsSyslogServer.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/net/mock/MockUdpSyslogServer.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/net/ssl/LegacyBsdTlsSyslogInputStreamReader.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/net/ssl/TestConstants.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/net/ssl/TlsSyslogInputStreamReader.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/net/ssl/TlsSyslogInputStreamReaderBase.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/net/ssl/TlsSyslogMessageFormat.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/parser/AbstractLogEventParserTest.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/RepeatPatternConverterTest.java
 create mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/selector/BasicContextSelectorTest.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/core/util/Profiler.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/hamcrest/Descriptors.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/hamcrest/FileMatchers.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/hamcrest/MapMatchers.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/junit/JndiRule.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/junit/LoggerContextRule.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/junit/package-info.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/message/MutableLogEventWithReusableParamMsgTest.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/test/AvailablePortFinder.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/test/AvailablePortSystemPropertyTestRule.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/test/ExtendedLevels.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/test/GetLogger.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/test/RuleChainFactory.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/test/SomethingThatUsesLogging.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/test/appender/AlwaysFailAppender.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/test/appender/BlockingAppender.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/test/appender/DeadlockAppender.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/test/appender/EncodingListAppender.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/test/appender/FailOnceAppender.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/test/appender/InMemoryAppender.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/test/appender/ListAppender.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/test/appender/UsesLoggingAppender.java
 delete mode 100644 log4j-core/src/test/java/org/apache/logging/log4j/test/layout/BasicLayout.java
 create mode 100644 log4j-core/src/test/java9/module-info.java
 create mode 100644 log4j-core/src/test/resources/AsyncAppenderExceptionHandlingTest.xml
 rename log4j-core/src/test/resources/{GelfLayoutTest2.xml => GelfLayout2Test.xml} (100%)
 create mode 100644 log4j-core/src/test/resources/GelfLayout3Test.xml
 create mode 100644 log4j-core/src/test/resources/GelfLayoutPatternSelectorTest.xml
 delete mode 100644 log4j-core/src/test/resources/GelfLayoutTest3.xml
 create mode 100644 log4j-core/src/test/resources/PatternLayoutRepeat.xml
 create mode 100644 log4j-core/src/test/resources/ReliabilityStrategyTest.xml
 delete mode 100644 log4j-core/src/test/resources/gcFreeMixedSyncAsyncLogging.xml
 create mode 100644 log4j-core/src/test/resources/log4j-rollOnStartup.xml
 create mode 100644 log4j-core/src/test/resources/log4j-rollOnStartupDirect.xml
 create mode 100644 log4j-core/src/test/resources/log4j-rolling-cron-onStartup.xml
 create mode 100644 log4j-core/src/test/resources/log4j-rolling-folder-direct.xml
 create mode 100644 log4j-core/src/test/resources/log4j-rolling-new-directory.xml
 create mode 100644 log4j-core/src/test/resources/log4j-rolling-size-time-new-directory.xml
 delete mode 100644 log4j-core/src/test/resources/log4j-test4.xml
 create mode 100644 log4j-core/src/test/resources/log4j2-arbiters.xml
 create mode 100644 log4j-core/src/test/resources/log4j2-scriptArbiters.xml
 create mode 100644 log4j-core/src/test/resources/log4j2-selectArbiters.xml
 create mode 100644 log4j-gctests/pom.xml
 create mode 100644 log4j-gctests/src/test/java/org/apache/logging/log4j/gctests/GcFreeAsynchronousLoggingTest.java
 create mode 100644 log4j-gctests/src/test/java/org/apache/logging/log4j/gctests/GcFreeLoggingTestUtil.java
 create mode 100644 log4j-gctests/src/test/java/org/apache/logging/log4j/gctests/GcFreeMixedSyncAyncLoggingTest.java
 create mode 100644 log4j-gctests/src/test/java/org/apache/logging/log4j/gctests/GcFreeSynchronousLoggingTest.java
 create mode 100644 log4j-gctests/src/test/java/org/apache/logging/log4j/gctests/JsonTemplateLayoutGcFreeTest.java
 create mode 100644 log4j-gctests/src/test/resources/gcFreeJsonTemplateLayoutLogging.xml
 rename {log4j-core => log4j-gctests}/src/test/resources/gcFreeLogging.xml (100%)
 create mode 100644 log4j-gctests/src/test/resources/gcFreeMixedSyncAsyncLogging.xml
 rename {log4j-core => log4j-jeromq}/src/test/resources/JeroMqAppenderTest.xml (100%)
 rename {log4j-core => log4j-jms}/src/test/resources/JmsAppenderTest.xml (100%)
 create mode 100644 log4j-jpl/pom.xml
 create mode 100644 log4j-jpl/src/main/java/module-info.java
 create mode 100644 log4j-jpl/src/main/java/org/apache/logging/log4j/jpl/Log4jSystemLogger.java
 create mode 100644 log4j-jpl/src/main/java/org/apache/logging/log4j/jpl/Log4jSystemLoggerAdapter.java
 create mode 100644 log4j-jpl/src/main/java/org/apache/logging/log4j/jpl/Log4jSystemLoggerFinder.java
 create mode 100644 log4j-jpl/src/main/resources/META-INF/services/java.lang.System$LoggerFinder
 create mode 100644 log4j-jpl/src/site/markdown/index.md
 create mode 100644 log4j-jpl/src/site/site.xml
 create mode 100644 log4j-jpl/src/test/java/org/apache/logging/log4j/jpl/Log4jSystemLoggerTest.java
 create mode 100644 log4j-jpl/src/test/resources/log4j2-test.xml
 create mode 100644 log4j-jul/src/test/java/org/apache/logging/log4j/jul/AsyncLoggerThreadsTest.java
 create mode 100644 log4j-kafka/src/test/java/org/apache/logging/log4j/kafka/appender/KafkaManagerProducerThreadLeakTest.java
 create mode 100644 log4j-kubernetes/src/main/java/org/apache/logging/log4j/kubernetes/ContainerUtil.java
 create mode 100644 log4j-kubernetes/src/test/java/org/apache/logging/log4j/kubernetes/KubernetesLookupTest.java
 create mode 100644 log4j-kubernetes/src/test/resources/clusterPod.json
 create mode 100644 log4j-kubernetes/src/test/resources/localPod.json
 create mode 100644 log4j-layout-jackson-json/src/test/java/org/apache/logging/log4j/jackson/json/layout/JsonLayoutMillisTest.java
 create mode 100644 log4j-layout-jackson-json/src/test/resources/log4j2-json-layout-timestamp.xml
 create mode 100644 log4j-layout-template-json/pom.xml
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayout.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutDefaults.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/CaseConverterResolver.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/CaseConverterResolverFactory.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/EndOfBatchResolver.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/EndOfBatchResolverFactory.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/EventAdditionalFieldInterceptor.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/EventResolver.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/EventResolverContext.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/EventResolverFactories.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/EventResolverFactory.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/EventResolverInterceptor.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/EventResolverInterceptors.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/EventResolverStringSubstitutor.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/EventRootObjectKeyInterceptor.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ExceptionResolver.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ExceptionResolverFactory.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ExceptionRootCauseResolver.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ExceptionRootCauseResolverFactory.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/LevelResolver.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/LevelResolverFactory.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/LoggerResolver.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/LoggerResolverFactory.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/MainMapResolver.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/MainMapResolverFactory.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/MapResolver.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/MapResolverFactory.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/MarkerResolver.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/MarkerResolverFactory.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/MessageParameterResolver.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/MessageParameterResolverFactory.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/MessageResolver.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/MessageResolverFactory.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/PatternResolver.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/PatternResolverFactory.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ReadOnlyStringMapResolver.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/SourceResolver.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/SourceResolverFactory.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/StackTraceElementResolver.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/StackTraceElementResolverContext.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/StackTraceElementResolverFactory.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/StackTraceElementResolverStringSubstitutor.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/StackTraceObjectResolver.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/StackTraceResolver.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/StackTraceStringResolver.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/TemplateResolver.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/TemplateResolverConfig.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/TemplateResolverContext.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/TemplateResolverFactories.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/TemplateResolverFactory.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/TemplateResolverInterceptor.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/TemplateResolverInterceptors.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/TemplateResolverStringSubstitutor.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/TemplateResolvers.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ThreadContextDataResolver.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ThreadContextDataResolverFactory.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ThreadContextStackResolver.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ThreadContextStackResolverFactory.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ThreadResolver.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/ThreadResolverFactory.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/TimestampResolver.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/resolver/TimestampResolverFactory.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/util/DummyRecycler.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/util/DummyRecyclerFactory.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/util/InstantFormatter.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/util/JsonReader.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/util/JsonWriter.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/util/MapAccessor.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/util/QueueingRecycler.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/util/QueueingRecyclerFactory.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/util/Recycler.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/util/RecyclerFactories.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/util/RecyclerFactory.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/util/RecyclerFactoryConverter.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/util/StringParameterParser.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/util/ThreadLocalRecycler.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/util/ThreadLocalRecyclerFactory.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/util/TruncatingBufferedPrintWriter.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/util/TruncatingBufferedWriter.java
 create mode 100644 log4j-layout-template-json/src/main/java/org/apache/logging/log4j/layout/template/json/util/Uris.java
 create mode 100644 log4j-layout-template-json/src/main/resources/EcsLayout.json
 create mode 100644 log4j-layout-template-json/src/main/resources/GelfLayout.json
 create mode 100644 log4j-layout-template-json/src/main/resources/JsonLayout.json
 create mode 100644 log4j-layout-template-json/src/main/resources/LogstashJsonEventLayoutV1.json
 create mode 100644 log4j-layout-template-json/src/main/resources/StackTraceElementLayout.json
 create mode 100644 log4j-layout-template-json/src/site/manual/index.md
 create mode 100644 log4j-layout-template-json/src/site/site.xml
 create mode 100644 log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/BlackHoleByteBufferDestination.java
 create mode 100644 log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/EcsLayoutTest.java
 create mode 100644 log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/GelfLayoutTest.java
 create mode 100644 log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JacksonFixture.java
 create mode 100644 log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonLayoutTest.java
 create mode 100644 log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldJsonTest.java
 create mode 100644 log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldPropertiesTest.java
 create mode 100644 log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldTestHelpers.java
 create mode 100644 log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldXmlTest.java
 create mode 100644 log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldYamlTest.java
 create mode 100644 log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutConcurrentEncodeTest.java
 create mode 100644 log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutNullEventDelimiterTest.java
 create mode 100644 log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutTest.java
 create mode 100644 log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/LogEventFixture.java
 create mode 100644 log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/LogstashIT.java
 create mode 100644 log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/TestHelpers.java
 create mode 100644 log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/resolver/CaseConverterResolverTest.java
 create mode 100644 log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/util/InstantFormatterTest.java
 create mode 100644 log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/util/JsonReaderTest.java
 create mode 100644 log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/util/JsonWriterTest.java
 create mode 100644 log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/util/RecyclerFactoriesTest.java
 create mode 100644 log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/util/StringParameterParserTest.java
 create mode 100644 log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/util/TruncatingBufferedWriterTest.java
 create mode 100644 log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/util/UrisTest.java
 create mode 100644 log4j-layout-template-json/src/test/resources/additionalFieldEnrichedJsonTemplateLayoutLogging.json
 create mode 100644 log4j-layout-template-json/src/test/resources/additionalFieldEnrichedJsonTemplateLayoutLogging.properties
 create mode 100644 log4j-layout-template-json/src/test/resources/additionalFieldEnrichedJsonTemplateLayoutLogging.xml
 create mode 100644 log4j-layout-template-json/src/test/resources/additionalFieldEnrichedJsonTemplateLayoutLogging.yaml
 create mode 100644 log4j-layout-template-json/src/test/resources/nullEventDelimitedJsonTemplateLayoutLogging.xml
 create mode 100644 log4j-layout-template-json/src/test/resources/recyclerFactoryCustomizedJsonTemplateLayoutLogging.xml
 create mode 100644 log4j-layout-template-json/src/test/resources/testJsonTemplateLayout.json
 delete mode 100644 log4j-mongodb2/pom.xml
 delete mode 100644 log4j-mongodb2/revapi.json
 delete mode 100644 log4j-mongodb2/src/main/java/org/apache/logging/log4j/mongodb2/MongoDbConnection.java
 delete mode 100644 log4j-mongodb2/src/main/java/org/apache/logging/log4j/mongodb2/MongoDbObject.java
 delete mode 100644 log4j-mongodb2/src/main/java/org/apache/logging/log4j/mongodb2/MongoDbProvider.java
 delete mode 100644 log4j-mongodb2/src/main/java/org/apache/logging/log4j/mongodb2/package-info.java
 delete mode 100644 log4j-mongodb2/src/site/markdown/index.md.vm
 delete mode 100644 log4j-mongodb2/src/site/site.xml
 delete mode 100644 log4j-mongodb2/src/test/java/org/apache/logging/log4j/mongodb2/MongoDbAuthFailureTest.java
 delete mode 100644 log4j-mongodb2/src/test/java/org/apache/logging/log4j/mongodb2/MongoDbCappedTest.java
 delete mode 100644 log4j-mongodb2/src/test/java/org/apache/logging/log4j/mongodb2/MongoDbMapMessageTest.java
 delete mode 100644 log4j-mongodb2/src/test/java/org/apache/logging/log4j/mongodb2/MongoDbTest.java
 delete mode 100644 log4j-mongodb2/src/test/java/org/apache/logging/log4j/mongodb2/MongoDbTestRule.java
 delete mode 100644 log4j-mongodb2/src/test/java/org/apache/logging/log4j/mongodb2/MongoDbTestTestRuleTest.java
 delete mode 100644 log4j-mongodb2/src/test/java/org/apache/logging/log4j/mongodb2/TestConstants.java
 delete mode 100644 log4j-mongodb2/src/test/resources/log4j2-mongodb-auth-failure.xml
 delete mode 100644 log4j-mongodb2/src/test/resources/log4j2-mongodb-capped.xml
 delete mode 100644 log4j-mongodb2/src/test/resources/log4j2-mongodb-map-message.xml
 delete mode 100644 log4j-mongodb2/src/test/resources/log4j2-mongodb.xml
 delete mode 100644 log4j-mongodb3/src/main/java/org/apache/logging/log4j/mongodb3/LevelCodec.java
 create mode 100644 log4j-mongodb3/src/main/java/org/apache/logging/log4j/mongodb3/MongoDb3Connection.java
 create mode 100644 log4j-mongodb3/src/main/java/org/apache/logging/log4j/mongodb3/MongoDb3DocumentObject.java
 create mode 100644 log4j-mongodb3/src/main/java/org/apache/logging/log4j/mongodb3/MongoDb3LevelCodec.java
 create mode 100644 log4j-mongodb3/src/main/java/org/apache/logging/log4j/mongodb3/MongoDb3Provider.java
 delete mode 100644 log4j-mongodb3/src/main/java/org/apache/logging/log4j/mongodb3/MongoDbConnection.java
 delete mode 100644 log4j-mongodb3/src/main/java/org/apache/logging/log4j/mongodb3/MongoDbDocumentObject.java
 delete mode 100644 log4j-mongodb3/src/main/java/org/apache/logging/log4j/mongodb3/MongoDbProvider.java
 create mode 100644 log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3AuthFailureTest.java
 create mode 100644 log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3CappedTest.java
 create mode 100644 log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3MapMessageTest.java
 create mode 100644 log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3Test.java
 create mode 100644 log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3TestConstants.java
 create mode 100644 log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3TestRule.java
 create mode 100644 log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3TestTestRuleTest.java
 delete mode 100644 log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDbAuthFailureTest.java
 delete mode 100644 log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDbCappedTest.java
 delete mode 100644 log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDbMapMessageTest.java
 delete mode 100644 log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDbTest.java
 delete mode 100644 log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDbTestRule.java
 delete mode 100644 log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDbTestTestRuleTest.java
 delete mode 100644 log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/TestConstants.java
 create mode 100644 log4j-mongodb4/pom.xml
 create mode 100644 log4j-mongodb4/src/main/java/org/apache/logging/log4j/mongodb4/MongoDb4Connection.java
 create mode 100644 log4j-mongodb4/src/main/java/org/apache/logging/log4j/mongodb4/MongoDb4DocumentObject.java
 create mode 100644 log4j-mongodb4/src/main/java/org/apache/logging/log4j/mongodb4/MongoDb4LevelCodec.java
 create mode 100644 log4j-mongodb4/src/main/java/org/apache/logging/log4j/mongodb4/MongoDb4Provider.java
 create mode 100644 log4j-mongodb4/src/main/java/org/apache/logging/log4j/mongodb4/package-info.java
 copy {log4j-mongodb3 => log4j-mongodb4}/src/site/markdown/index.md.vm (100%)
 copy {log4j-mongodb3 => log4j-mongodb4}/src/site/site.xml (100%)
 create mode 100644 log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4AuthFailureTest.java
 create mode 100644 log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4CappedTest.java
 create mode 100644 log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4MapMessageTest.java
 create mode 100644 log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4Test.java
 create mode 100644 log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4TestConstants.java
 create mode 100644 log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4TestRule.java
 create mode 100644 log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4TestTestRuleTest.java
 create mode 100644 log4j-mongodb4/src/test/resources/log4j2-mongodb-auth-failure.xml
 create mode 100644 log4j-mongodb4/src/test/resources/log4j2-mongodb-capped.xml
 create mode 100644 log4j-mongodb4/src/test/resources/log4j2-mongodb-map-message.xml
 create mode 100644 log4j-mongodb4/src/test/resources/log4j2-mongodb.xml
 create mode 100644 log4j-perf/src/main/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutBenchmark.java
 create mode 100644 log4j-perf/src/main/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutBenchmarkReport.java
 create mode 100644 log4j-perf/src/main/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutBenchmarkState.java
 create mode 100644 log4j-perf/src/main/java/org/apache/logging/log4j/perf/jmh/DateTimeFormatBenchmark.java
 create mode 100644 log4j-perf/src/main/java/org/apache/logging/log4j/perf/jmh/StackWalkBenchmark.java
 create mode 100644 log4j-perf/src/main/java/org/apache/logging/log4j/perf/util/StackDriver.java
 delete mode 100644 log4j-plugins-java9/pom.xml
 delete mode 100644 log4j-plugins-java9/src/assembly/java9.xml
 delete mode 100644 log4j-plugins-java9/src/main/java/module-info.java
 delete mode 100644 log4j-plugins-java9/src/main/java/org/apache/logging/log4j/plugins/Dummy.java
 delete mode 100644 log4j-plugins-java9/src/main/java/org/apache/logging/log4j/plugins/bind/Dummy.java
 delete mode 100644 log4j-plugins-java9/src/main/java/org/apache/logging/log4j/plugins/convert/Dummy.java
 delete mode 100644 log4j-plugins-java9/src/main/java/org/apache/logging/log4j/plugins/convert/plugins/Log4jPlugins.java
 delete mode 100644 log4j-plugins-java9/src/main/java/org/apache/logging/log4j/plugins/inject/Dummy.java
 delete mode 100644 log4j-plugins-java9/src/main/java/org/apache/logging/log4j/plugins/name/Dummy.java
 delete mode 100644 log4j-plugins-java9/src/main/java/org/apache/logging/log4j/plugins/processor/PluginService.java
 delete mode 100644 log4j-plugins-java9/src/main/java/org/apache/logging/log4j/plugins/util/Dummy.java
 delete mode 100644 log4j-plugins-java9/src/main/java/org/apache/logging/log4j/plugins/validation/Dummy.java
 delete mode 100644 log4j-plugins-java9/src/main/java/org/apache/logging/log4j/plugins/validation/constraints/Dummy.java
 delete mode 100644 log4j-plugins-java9/src/main/java/org/apache/logging/log4j/plugins/validation/validators/Dummy.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/AbstractBean.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/AbstractProducer.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/AbstractProducerFactory.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultBeanManager.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultInitializationContext.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultInjectionTarget.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultInjectionTargetFactory.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultInjector.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultScopeContext.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DependentScopeContext.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/FieldProducer.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/FieldProducerFactory.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/InjectionTargetBean.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/MethodProducer.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/MethodProducerFactory.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/OptionalBean.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/ProducerBean.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/ProvidedBean.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/ProviderBean.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/SystemBean.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/AbstractMetaExecutable.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/AbstractMetaMember.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultElementManager.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultInjectionPoint.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaAnnotation.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaAnnotationElement.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaClass.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaConstructor.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaField.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaMethod.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaParameter.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultVariable.java
 create mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/internal/util/BeanUtils.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/AmbiguousBeanException.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/DefinitionException.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/IllegalProductException.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/InitializationException.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/InjectionException.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/ResolutionException.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/UnsatisfiedBeanException.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/ValidationException.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/Bean.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/BeanManager.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/InitializationContext.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/InjectionTarget.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/InjectionTargetFactory.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/Injector.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/Producer.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/ProducerFactory.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/ProviderFactory.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/ScopeContext.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/ElementManager.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/InjectionPoint.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaAnnotation.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaAnnotationElement.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaClass.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaConstructor.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaElement.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaExecutable.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaField.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaMember.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaMethod.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaParameter.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/Qualifiers.java
 delete mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/Variable.java
 create mode 100644 log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/util/PluginUtil.java
 create mode 100644 log4j-plugins/src/main/java9/module-info.java
 create mode 100644 log4j-plugins/src/test/java-test/org/apache/logging/log4j/plugins/test/validation/AbstractPluginWithGenericBuilder.java
 create mode 100644 log4j-plugins/src/test/java-test/org/apache/logging/log4j/plugins/test/validation/HostAndPort.java
 create mode 100644 log4j-plugins/src/test/java-test/org/apache/logging/log4j/plugins/test/validation/PluginWithGenericSubclassFoo1Builder.java
 create mode 100644 log4j-plugins/src/test/java-test/org/apache/logging/log4j/plugins/test/validation/ValidatingPlugin.java
 create mode 100644 log4j-plugins/src/test/java-test/org/apache/logging/log4j/plugins/test/validation/ValidatingPluginWithGenericBuilder.java
 create mode 100644 log4j-plugins/src/test/java-test/org/apache/logging/log4j/plugins/test/validation/ValidatingPluginWithTypedBuilder.java
 create mode 100644 log4j-plugins/src/test/java-test9/module-info.java
 delete mode 100644 log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultBeanManagerTest.java
 delete mode 100644 log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/test/BeanJUnit4Runner.java
 delete mode 100644 log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/test/WithBeans.java
 delete mode 100644 log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/validation/AbstractPluginWithGenericBuilder.java
 delete mode 100644 log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/validation/HostAndPort.java
 delete mode 100644 log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/validation/PluginWithGenericSubclassFoo1Builder.java
 delete mode 100644 log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/validation/ValidatingPlugin.java
 delete mode 100644 log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/validation/ValidatingPluginWithGenericBuilder.java
 delete mode 100644 log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/validation/ValidatingPluginWithTypedBuilder.java
 create mode 100644 log4j-plugins/src/test/java9/module-info.java
 create mode 100644 log4j-redis/pom.xml
 create mode 100644 log4j-redis/src/main/java/org/apache/logging/log4j/redis/appender/LoggingRedisPoolConfiguration.java
 create mode 100644 log4j-redis/src/main/java/org/apache/logging/log4j/redis/appender/RedisAppender.java
 create mode 100644 log4j-redis/src/main/java/org/apache/logging/log4j/redis/appender/RedisManager.java
 create mode 100644 log4j-redis/src/site/manual/index.md
 copy {log4j-smtp => log4j-redis}/src/site/site.xml (100%)
 create mode 100644 log4j-redis/src/test/java/org/apache/logging/log4j/redis/appender/RedisAppenderTest.java
 create mode 100644 log4j-redis/src/test/java/org/apache/logging/log4j/redis/appender/RedisManagerTest.java
 create mode 100644 log4j-spring-boot/pom.xml
 create mode 100644 log4j-spring-boot/src/main/java/org/apache/logging/log4j/spring/boot/Log4j2CloudConfigLoggingSystem.java
 create mode 100644 log4j-spring-boot/src/main/java/org/apache/logging/log4j/spring/boot/SpringEnvironmentHolder.java
 create mode 100644 log4j-spring-boot/src/main/java/org/apache/logging/log4j/spring/boot/SpringLookup.java
 create mode 100644 log4j-spring-boot/src/main/java/org/apache/logging/log4j/spring/boot/SpringProfileArbiter.java
 create mode 100644 log4j-spring-boot/src/main/java/org/apache/logging/log4j/spring/boot/SpringPropertySource.java
 create mode 100644 log4j-spring-boot/src/main/resources/META-INF/services/org.apache.logging.log4j.util.PropertySource
 create mode 100644 log4j-spring-boot/src/main/resources/log4j2.system.properties
 create mode 100644 log4j-spring-boot/src/site/markdown/index.md
 copy {log4j-spring-cloud-config/log4j-spring-cloud-config-client => log4j-spring-boot}/src/site/site.xml (100%)
 create mode 100644 log4j-spring-boot/src/test/java/org/apache/logging/log4j/spring/boot/Log4j2CloudConfigLoggingSystemTest.java
 create mode 100644 log4j-spring-boot/src/test/java/org/apache/logging/log4j/spring/boot/SpringLookupTest.java
 create mode 100644 log4j-spring-boot/src/test/java/org/apache/logging/log4j/spring/boot/SpringProfileTest.java
 create mode 100644 log4j-spring-boot/src/test/resources/log4j2-springProfile.xml
 delete mode 100644 log4j-spring-cloud-config/log4j-spring-cloud-config-client/src/main/java/org/apache/logging/log4j/spring/cloud/config/client/Log4j2CloudConfigLoggingSystem.java
 delete mode 100644 log4j-spring-cloud-config/log4j-spring-cloud-config-client/src/main/java/org/apache/logging/log4j/spring/cloud/config/client/SpringEnvironmentHolder.java
 delete mode 100644 log4j-spring-cloud-config/log4j-spring-cloud-config-client/src/main/java/org/apache/logging/log4j/spring/cloud/config/client/SpringLookup.java
 delete mode 100644 log4j-spring-cloud-config/log4j-spring-cloud-config-client/src/main/java/org/apache/logging/log4j/spring/cloud/config/client/SpringPropertySource.java
 delete mode 100644 log4j-spring-cloud-config/log4j-spring-cloud-config-client/src/main/resources/log4j2.component.properties
 delete mode 100644 log4j-spring-cloud-config/log4j-spring-cloud-config-client/src/main/resources/log4j2.system.properties
 create mode 100644 log4j-spring-cloud-config/log4j-spring-cloud-config-client/src/test/java/org/apache/logging/log4j/spring/cloud/config/client/Log4j2EventListenerTest.java
 create mode 100644 log4j-spring-cloud-config/log4j-spring-cloud-config-client/src/test/java/org/apache/logging/log4j/spring/cloud/config/client/SpringConfiguration.java
 copy {log4j-core => log4j-spring-cloud-config/log4j-spring-cloud-config-client}/src/test/resources/log4j2-console.xml (100%)
 create mode 100755 log4j-spring-cloud-config/log4j-spring-cloud-config-samples/log4j-spring-cloud-config-sample-application/docker/combined-compose.yml
 create mode 100644 log4j-spring-cloud-config/log4j-spring-cloud-config-samples/log4j-spring-cloud-config-sample-application/src/main/java/org/apache/logging/log4j/spring/cloud/config/sample/controller/K8SController.java
 create mode 100644 log4j-spring-cloud-config/log4j-spring-cloud-config-samples/log4j-spring-cloud-config-sample-application/src/main/resources/EnhancedGelf.json
 create mode 100644 log4j-web/src/main/java/org/apache/logging/log4j/web/Log4jShutdownOnContextDestroyedListener.java
 create mode 100644 log4j-web/src/test/java/org/apache/logging/log4j/web/Log4jShutdownOnContextDestroyedListenerTest.java
 create mode 100644 log4j-web/src/test/resources/log4j2-combined.xml
 create mode 100644 log4j-web/src/test/resources/log4j2-override.xml
 create mode 100644 src/site/asciidoc/manual/json-template-layout.adoc.vm
 create mode 100644 src/site/asciidoc/security.adoc
 create mode 100644 src/site/resources/images/kibana.png
 delete mode 100644 toolchains-jenkins-ibm.xml
 delete mode 100644 toolchains-jenkins-ubuntu.xml
 delete mode 100644 toolchains-jenkins-win.xml

[logging-log4j2] 03/06: Replace java.beans use with BeanUtils

Posted by ma...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

mattsicker pushed a commit to branch mean-bean-machine
in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git

commit 78e1f100e8f5ead9f43c30f004ff64858fbe8f7f
Author: Matt Sicker <bo...@gmail.com>
AuthorDate: Sat May 29 14:03:47 2021 -0500

    Replace java.beans use with BeanUtils
---
 .../logging/log4j/plugins/defaults/model/DefaultElementManager.java | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultElementManager.java b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultElementManager.java
index 63cd4fd..c80a920 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultElementManager.java
+++ b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultElementManager.java
@@ -24,6 +24,7 @@ import org.apache.logging.log4j.plugins.api.Ignore;
 import org.apache.logging.log4j.plugins.api.Named;
 import org.apache.logging.log4j.plugins.api.QualifierType;
 import org.apache.logging.log4j.plugins.api.ScopeType;
+import org.apache.logging.log4j.plugins.internal.util.BeanUtils;
 import org.apache.logging.log4j.plugins.spi.bean.Bean;
 import org.apache.logging.log4j.plugins.spi.model.ElementManager;
 import org.apache.logging.log4j.plugins.spi.model.InjectionPoint;
@@ -41,7 +42,6 @@ import org.apache.logging.log4j.plugins.util.Cache;
 import org.apache.logging.log4j.plugins.util.TypeUtil;
 import org.apache.logging.log4j.plugins.util.WeakCache;
 
-import java.beans.Introspector;
 import java.lang.annotation.Annotation;
 import java.lang.reflect.Type;
 import java.util.Collection;
@@ -96,12 +96,12 @@ public class DefaultElementManager implements ElementManager {
         if (element instanceof MetaMethod<?, ?>) {
             final Matcher matcher = BEAN_METHOD.matcher(elementName);
             if (matcher.matches()) {
-                defaultNamedValue = Introspector.decapitalize(matcher.group(2));
+                defaultNamedValue = BeanUtils.decapitalize(matcher.group(2));
             } else {
                 defaultNamedValue = elementName;
             }
         } else if (element instanceof MetaClass<?>) {
-            defaultNamedValue = Introspector.decapitalize(((MetaClass<?>) element).getJavaClass().getSimpleName());
+            defaultNamedValue = BeanUtils.decapitalize(((MetaClass<?>) element).getJavaClass().getSimpleName());
         } else {
             defaultNamedValue = elementName;
         }

[logging-log4j2] 05/06: Merge branch 'master' into mean-bean-machine

Posted by ma...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

mattsicker pushed a commit to branch mean-bean-machine
in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git

commit 317969fdbd821d52db359f8e7497219dd191a0d6
Merge: 788da26 e24e2e8
Author: Matt Sicker <bo...@gmail.com>
AuthorDate: Sat Jun 5 13:42:01 2021 -0500

    Merge branch 'master' into mean-bean-machine

 .../main/java/org/apache/logging/log4j/Level.java  |  2 +-
 .../java/org/apache/logging/log4j/LogBuilder.java  | 48 ++++++------
 .../java/org/apache/logging/log4j/LogManager.java  |  2 +-
 .../main/java/org/apache/logging/log4j/Logger.java |  6 +-
 .../org/apache/logging/log4j/ThreadContext.java    |  4 +-
 .../logging/log4j/internal/DefaultLogBuilder.java  | 54 +++++++-------
 .../log4j/internal/DefaultObjectInputFilter.java   | 10 +--
 .../logging/log4j/internal/LogManagerStatus.java   |  2 +-
 .../log4j/message/BasicThreadInformation.java      |  6 +-
 .../logging/log4j/message/FormattedMessage.java    |  6 +-
 .../apache/logging/log4j/message/MapMessage.java   |  4 +-
 .../logging/log4j/message/MessageFactory.java      | 34 ++++-----
 .../logging/log4j/message/ParameterFormatter.java  |  6 +-
 .../log4j/message/ParameterizedMessage.java        |  6 +-
 .../log4j/message/ReusableObjectMessage.java       |  4 +-
 .../message/ReusableParameterizedMessage.java      |  4 +-
 .../log4j/message/ReusableSimpleMessage.java       |  2 +-
 .../message/StructuredDataCollectionMessage.java   | 28 +++----
 .../logging/log4j/message/StructuredDataId.java    |  6 +-
 .../log4j/message/StructuredDataMessage.java       | 12 +--
 .../logging/log4j/message/ThreadDumpMessage.java   |  4 +-
 .../apache/logging/log4j/simple/SimpleLogger.java  |  4 +-
 .../apache/logging/log4j/spi/AbstractLogger.java   | 20 ++---
 .../logging/log4j/spi/AbstractLoggerAdapter.java   |  2 +-
 .../CopyOnWriteSortedArrayThreadContextMap.java    | 12 +--
 .../logging/log4j/spi/DefaultThreadContextMap.java | 16 +---
 .../log4j/spi/DefaultThreadContextStack.java       |  2 +-
 .../GarbageFreeSortedArrayThreadContextMap.java    | 10 +--
 .../apache/logging/log4j/spi/LoggerContext.java    | 14 ++--
 .../logging/log4j/spi/LoggerContextFactory.java    |  7 +-
 .../apache/logging/log4j/spi/LoggerRegistry.java   |  7 +-
 .../log4j/spi/MutableThreadContextStack.java       | 13 +---
 .../org/apache/logging/log4j/spi/Provider.java     |  4 +-
 .../apache/logging/log4j/status/StatusData.java    |  2 +-
 .../org/apache/logging/log4j/util/Constants.java   |  2 +-
 .../log4j/util/FilteredObjectInputStream.java      |  4 +-
 .../org/apache/logging/log4j/util/LoaderUtil.java  | 22 ++----
 .../apache/logging/log4j/util/ProcessIdUtil.java   |  2 +-
 .../apache/logging/log4j/util/PropertiesUtil.java  | 40 +++++-----
 .../log4j/util/PropertyFilePropertySource.java     |  2 +-
 .../apache/logging/log4j/util/PropertySource.java  | 10 +--
 .../apache/logging/log4j/util/ProviderUtil.java    |  5 +-
 .../logging/log4j/util/SortedArrayStringMap.java   | 20 ++---
 .../apache/logging/log4j/util/StackLocator.java    |  7 +-
 .../logging/log4j/util/StackLocatorUtil.java       |  2 +-
 .../apache/logging/log4j/util/StringBuilders.java  |  6 +-
 .../org/apache/logging/log4j/util/Strings.java     |  8 +-
 .../log4j/util/SystemPropertiesPropertySource.java |  2 +-
 .../java/org/apache/logging/log4j/util/Timer.java  |  8 +-
 .../log4j/util/SortedArrayStringMapTest.java       |  3 +-
 .../logging/log4j/util/StackLocatorUtilTest.java   |  2 -
 .../logging/log4j/util/Unbox2ConfigurableTest.java |  2 -
 .../org/apache/logging/log4j/core/LifeCycle2.java  |  2 -
 .../org/apache/logging/log4j/core/LogEvent.java    |  1 -
 .../apache/logging/log4j/core/LoggerContext.java   |  9 +--
 .../logging/log4j/core/appender/AsyncAppender.java |  1 -
 .../appender/AsyncAppenderEventDispatcher.java     |  1 +
 .../log4j/core/appender/FailoverAppender.java      |  1 -
 .../logging/log4j/core/appender/FileManager.java   |  1 -
 .../core/appender/HttpURLConnectionManager.java    |  3 +-
 .../log4j/core/appender/OutputStreamManager.java   |  1 -
 .../rolling/CompositeTriggeringPolicy.java         |  1 -
 .../appender/rolling/CronTriggeringPolicy.java     |  1 -
 .../appender/rolling/DefaultRolloverStrategy.java  |  2 +-
 .../log4j/core/appender/rolling/FileExtension.java |  2 +-
 .../rolling/OnStartupTriggeringPolicy.java         |  3 +-
 .../core/appender/rolling/RollingFileManager.java  |  1 -
 .../core/appender/rolling/action/DeleteAction.java |  6 +-
 .../async/BasicAsyncLoggerContextSelector.java     |  1 -
 .../log4j/core/async/RingBufferLogEvent.java       |  1 -
 .../log4j/core/config/ConfigurationFactory.java    | 12 +--
 .../log4j/core/config/ConfigurationSource.java     |  6 +-
 .../log4j/core/filter/AbstractFilterable.java      |  1 -
 .../logging/log4j/core/filter/CompositeFilter.java |  1 -
 .../logging/log4j/core/filter/MapFilter.java       |  1 -
 .../logging/log4j/core/filter/ScriptFilter.java    |  2 +-
 .../log4j/core/impl/Log4jContextFactory.java       |  2 -
 .../logging/log4j/core/impl/Log4jLogEvent.java     |  5 +-
 .../logging/log4j/core/impl/MutableLogEvent.java   |  1 -
 .../log4j/core/impl/ThreadContextDataInjector.java |  2 +-
 .../org/apache/logging/log4j/core/jmx/Server.java  |  3 +-
 .../logging/log4j/core/layout/HtmlLayout.java      |  5 +-
 .../log4j/core/layout/internal/ListChecker.java    |  6 +-
 .../log4j/core/net/Rfc1349TrafficClass.java        |  2 +-
 .../log4j/core/pattern/DatePatternConverter.java   |  6 +-
 .../core/pattern/EncodingPatternConverter.java     |  2 -
 .../logging/log4j/core/pattern/PatternParser.java  |  2 +-
 .../log4j/core/time/internal/CachedClock.java      |  3 +-
 .../core/time/internal/format/FixedDateFormat.java |  6 +-
 .../apache/logging/log4j/core/tools/Generate.java  |  9 +--
 .../log4j/core/tools/picocli/CommandLine.java      | 25 ++++---
 .../logging/log4j/core/util/CronExpression.java    |  5 +-
 .../apache/logging/log4j/core/util/UuidUtil.java   |  7 +-
 .../log4j/core/FormatterLoggerManualExample.java   |  2 +-
 .../log4j/core/appender/AsyncAppenderTest.java     |  9 +++
 .../RandomRollingAppenderOnStartupTest.java        |  5 +-
 .../rolling/RollingAppenderCronAndSizeTest.java    |  1 -
 .../rolling/RollingAppenderCronOnceADayTest.java   |  5 +-
 .../appender/rolling/RollingAppenderCronTest.java  |  3 +-
 .../rolling/RollingAppenderDeleteScriptTest.java   |  3 +-
 ...erDirectWriteTempCompressedFilePatternTest.java |  4 +-
 ...llingAppenderTempCompressedFilePatternTest.java |  5 +-
 .../RollingDirectSizeTimeNewDirectoryTest.java     |  1 -
 .../rolling/RollingFileAppenderUpdateDataTest.java |  4 +-
 .../rolling/RolloverWithDeletedOldFileTest.java    |  2 +-
 .../appender/rolling/RolloverWithPaddingTest.java  |  2 +-
 .../rolling/action/FileRenameActionTest.java       |  1 -
 .../appender/routing/JsonRoutingAppender2Test.java |  3 +-
 .../appender/routing/JsonRoutingAppenderTest.java  |  3 +-
 .../routing/PropertiesRoutingAppenderTest.java     |  3 +-
 .../appender/routing/RoutingAppender2767Test.java  |  1 -
 .../core/appender/routing/RoutingAppenderTest.java |  2 +-
 .../routing/RoutingAppenderWithPurgingTest.java    |  2 +-
 .../routing/RoutingDefaultAppenderTest.java        |  3 +-
 .../logging/log4j/core/async/AsyncLoggerTest.java  |  2 +-
 .../async/AsyncLoggerTimestampMessageTest.java     |  2 +-
 .../AsyncLoggersWithAsyncLoggerConfigTest.java     |  6 +-
 .../log4j/core/async/perftest/PerfTestDriver.java  |  6 +-
 .../async/perftest/PerfTestResultFormatter.java    |  2 +-
 .../log4j/core/config/InMemoryAdvertiser.java      |  8 +-
 .../log4j/core/config/NestedLoggerConfigTest.java  | 11 ---
 .../config/builder/ConfigurationBuilderTest.java   |  2 -
 .../config/plugins/convert/TypeConvertersTest.java |  4 +-
 ...taFactoryPropertySetMissingConstructorTest.java |  2 -
 .../log4j/core/impl/ContextDataFactoryTest.java    |  2 -
 .../logging/log4j/core/impl/Log4jLogEventTest.java |  1 -
 .../time/internal/format/FastDateParserTest.java   | 10 +--
 .../core/tools/GenerateExtendedLoggerTest.java     |  3 -
 .../layout/template/json/util/JsonWriter.java      | 85 +++++++++++++---------
 .../layout/template/json/util/JsonWriterTest.java  | 77 ++++++++++++++++++++
 .../apache/logging/slf4j/Log4jLoggerFactory.java   |  2 +-
 .../apache/logging/slf4j/Log4jLoggerFactory.java   |  2 +-
 src/changes/changes.xml                            | 10 +++
 133 files changed, 473 insertions(+), 490 deletions(-)

[logging-log4j2] 02/06: Merge branch 'master' into mean-bean-machine

Posted by ma...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

mattsicker pushed a commit to branch mean-bean-machine
in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git

commit 221b3644301826acf42cf6da3396a06fcfd0155d
Merge: b381d8d 9b7b036
Author: Matt Sicker <bo...@gmail.com>
AuthorDate: Sat May 29 13:43:13 2021 -0500

    Merge branch 'master' into mean-bean-machine

 .../log4j/message/MessageFormatMessageTest.java    |   3 +-
 .../logging/log4j/core/time/MutableInstant.java    |  77 ++++-
 .../logging/log4j/core/PatternSelectorTest.java    |  14 +-
 .../logging/log4j/core/TimestampMessageTest.java   |   3 +
 .../core/appender/ScriptAppenderSelectorTest.java  |   4 +
 .../rolling/action/ScriptConditionTest.java        |   5 +
 .../logging/log4j/core/config/FileOutputTest.java  |   7 +
 .../core/config/arbiters/ScriptArbiterTest.java    |   3 +
 .../core/filter/AbstractScriptFilterTest.java      |   4 +
 .../logging/log4j/core/filter/TimeFilterTest.java  |   3 +
 .../logging/log4j/core/impl/Log4jLogEventTest.java |   3 +
 .../log4j/core/time/MutableInstantTest.java        |  55 +--
 .../kafka/builder/ConfigurationBuilderTest.java    |  27 +-
 .../log4j/jackson/ContextDataSerializer.java       |   6 +-
 .../template/json/resolver/TimestampResolver.java  | 105 +++---
 .../template/json/util/InstantFormatter.java       | 376 +++++++++++++++++++++
 .../JsonTemplateLayoutNullEventDelimiterTest.java  |  40 +--
 .../template/json/JsonTemplateLayoutTest.java      |  23 +-
 .../json/resolver/TimestampResolverTest.java       |  65 ----
 .../template/json/util/InstantFormatterTest.java   |  47 +++
 ...nullEventDelimitedJsonTemplateLayoutLogging.xml |   2 +-
 .../log4j/perf/jmh/DateTimeFormatBenchmark.java    | 122 +++++++
 src/changes/changes.xml                            |   6 +
 23 files changed, 811 insertions(+), 189 deletions(-)

[logging-log4j2] 04/06: Merge branch 'master' into mean-bean-machine

Posted by ma...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

mattsicker pushed a commit to branch mean-bean-machine
in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git

commit 788da267057cf59735759b8a0469a84241649776
Merge: 78e1f10 c49d7ae
Author: Matt Sicker <bo...@gmail.com>
AuthorDate: Mon May 31 13:37:30 2021 -0500

    Merge branch 'master' into mean-bean-machine

 .../src/main/java/org/apache/log4j/Category.java   |  8 +++--
 .../test/java/org/apache/log4j/CategoryTest.java   | 11 ++++++
 log4j-api/pom.xml                                  | 42 ++++++++++++++++++++++
 log4j-cassandra/pom.xml                            | 16 +++++++++
 log4j-jpa/pom.xml                                  |  7 ++++
 log4j-layout-template-json/pom.xml                 | 28 +++++++++++++++
 log4j-plugins/pom.xml                              | 29 +++++++++++++++
 pom.xml                                            | 18 ++++++++--
 src/changes/changes.xml                            |  3 ++
 9 files changed, 158 insertions(+), 4 deletions(-)

[logging-log4j2] 01/06: Merge branch 'master' into mean-bean-machine

Posted by ma...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

mattsicker pushed a commit to branch mean-bean-machine
in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git

commit b381d8d66cdd0ce0a58d761df30215aa330ad019
Merge: 45306c2 2acc780
Author: Matt Sicker <bo...@gmail.com>
AuthorDate: Sun May 23 14:10:35 2021 -0500

    Merge branch 'master' into mean-bean-machine

 .asf.yaml                                          |   17 +
 .github/dependabot.yml                             |   24 +
 .github/workflows/main.yml                         |   75 +
 .github/workflows/maven-toolchains.xml             |   37 +
 .gitignore                                         |    1 +
 .mvn/wrapper/maven-wrapper.jar                     |  Bin 49519 -> 50710 bytes
 .mvn/wrapper/maven-wrapper.properties              |    3 +-
 .travis-toolchains.xml                             |   42 -
 .travis.yml                                        |   34 -
 BUILDING.md                                        |   12 +-
 Dockerfile                                         |   22 +-
 Jenkinsfile                                        |   94 -
 README.md                                          |   10 +-
 SECURITY.md                                        |   13 +
 log4j-1.2-api/pom.xml                              |   24 +-
 .../org/apache/log4j/bridge/LogEventAdapter.java   |    2 +-
 .../org/apache/log4j/bridge/LogEventWrapper.java   |   22 +-
 .../log4j/config/Log4j1ConfigurationConverter.java |   26 +-
 .../log4j/config/PropertiesConfiguration.java      |   21 +-
 .../java/org/apache/log4j/spi/ErrorHandler.java    |    2 +-
 .../log4j/xml/UnrecognizedElementHandler.java      |    2 +-
 .../org/apache/log4j/xml/XmlConfiguration.java     |   24 +-
 .../src/main/java/org/apache/log4j/Appender.java   |  143 -
 .../java/org/apache/log4j/AppenderSkeleton.java    |  177 -
 .../java/org/apache/log4j/BasicConfigurator.java   |   45 -
 .../src/main/java/org/apache/log4j/Category.java   |  571 ---
 .../java/org/apache/log4j/ConsoleAppender.java     |   52 -
 .../src/src/main/java/org/apache/log4j/Layout.java |   89 -
 .../src/src/main/java/org/apache/log4j/Level.java  |  252 --
 .../src/main/java/org/apache/log4j/LogManager.java |  251 --
 .../src/src/main/java/org/apache/log4j/Logger.java |   66 -
 .../src/src/main/java/org/apache/log4j/MDC.java    |   77 -
 .../src/src/main/java/org/apache/log4j/NDC.java    |  207 --
 .../main/java/org/apache/log4j/PatternLayout.java  |   40 -
 .../src/main/java/org/apache/log4j/Priority.java   |  239 --
 .../org/apache/log4j/PropertyConfigurator.java     |  126 -
 .../java/org/apache/log4j/RenderedMessage.java     |   60 -
 .../main/java/org/apache/log4j/SimpleLayout.java   |   46 -
 .../main/java/org/apache/log4j/WriterAppender.java |  378 --
 .../org/apache/log4j/bridge/AppenderAdapter.java   |   86 -
 .../org/apache/log4j/bridge/AppenderWrapper.java   |  101 -
 .../apache/log4j/bridge/ErrorHandlerAdapter.java   |   59 -
 .../org/apache/log4j/bridge/FilterAdapter.java     |   56 -
 .../org/apache/log4j/bridge/FilterWrapper.java     |   47 -
 .../org/apache/log4j/bridge/LayoutAdapter.java     |   73 -
 .../org/apache/log4j/bridge/LayoutWrapper.java     |   48 -
 .../org/apache/log4j/bridge/LogEventAdapter.java   |  217 --
 .../org/apache/log4j/builders/BooleanHolder.java   |   33 -
 .../org/apache/log4j/builders/BuilderManager.java  |   94 -
 .../java/org/apache/log4j/builders/Holder.java     |   39 -
 .../log4j/builders/appender/AppenderBuilder.java   |   33 -
 .../builders/appender/ConsoleAppenderBuilder.java  |  111 -
 .../appender/DailyRollingFileAppenderBuilder.java  |  146 -
 .../builders/appender/FileAppenderBuilder.java     |  135 -
 .../builders/appender/NullAppenderBuilder.java     |   43 -
 .../appender/RollingFileAppenderBuilder.java       |  170 -
 .../builders/filter/DenyAllFilterBuilder.java      |   46 -
 .../log4j/builders/filter/FilterBuilder.java       |   30 -
 .../builders/filter/LevelMatchFilterBuilder.java   |   74 -
 .../builders/filter/LevelRangeFilterBuilder.java   |   81 -
 .../builders/filter/StringMatchFilterBuilder.java  |   75 -
 .../log4j/builders/layout/HtmlLayoutBuilder.java   |   60 -
 .../log4j/builders/layout/LayoutBuilder.java       |   30 -
 .../builders/layout/PatternLayoutBuilder.java      |   77 -
 .../log4j/builders/layout/SimpleLayoutBuilder.java |   46 -
 .../log4j/builders/layout/TTCCLayoutBuilder.java   |  103 -
 .../log4j/builders/layout/XmlLayoutBuilder.java    |   59 -
 .../apache/log4j/config/InputStreamWrapper.java    |   92 -
 .../apache/log4j/config/Log4j1Configuration.java   |   57 -
 .../log4j/config/Log4j1ConfigurationConverter.java |  220 --
 .../log4j/config/Log4j1ConfigurationFactory.java   |   58 -
 .../log4j/config/Log4j1ConfigurationParser.java    |  446 ---
 .../org/apache/log4j/config/PropertySetter.java    |  287 --
 .../log4j/config/PropertySetterException.java      |   65 -
 .../java/org/apache/log4j/config/package-info.java |   20 -
 .../org/apache/log4j/helpers/NullEnumeration.java  |   47 -
 .../org/apache/log4j/helpers/OptionConverter.java  |  345 --
 .../java/org/apache/log4j/helpers/QuietWriter.java |   69 -
 .../org/apache/log4j/helpers/package-info.java     |   20 -
 .../org/apache/log4j/layout/Log4j1XmlLayout.java   |  159 -
 .../org/apache/log4j/legacy/core/CategoryUtil.java |   65 -
 .../org/apache/log4j/legacy/core/ContextUtil.java  |   34 -
 .../java/org/apache/log4j/or/ObjectRenderer.java   |   27 -
 .../java/org/apache/log4j/or/RendererSupport.java  |   26 -
 .../org/apache/log4j/or/ThreadGroupRenderer.java   |   57 -
 .../org/apache/log4j/or/jms/MessageRenderer.java   |   87 -
 .../main/java/org/apache/log4j/package-info.java   |   20 -
 .../log4j/pattern/Log4j1MdcPatternConverter.java   |   88 -
 .../log4j/pattern/Log4j1NdcPatternConverter.java   |   63 -
 .../org/apache/log4j/spi/AppenderAttachable.java   |   70 -
 .../java/org/apache/log4j/spi/Configurator.java    |   55 -
 .../main/java/org/apache/log4j/spi/ErrorCode.java  |   33 -
 .../java/org/apache/log4j/spi/ErrorHandler.java    |   98 -
 .../src/main/java/org/apache/log4j/spi/Filter.java |  100 -
 .../apache/log4j/spi/HierarchyEventListener.java   |   33 -
 .../java/org/apache/log4j/spi/LocationInfo.java    |   75 -
 .../java/org/apache/log4j/spi/LoggerFactory.java   |   33 -
 .../org/apache/log4j/spi/LoggerRepository.java     |  109 -
 .../java/org/apache/log4j/spi/LoggingEvent.java    |  131 -
 .../java/org/apache/log4j/spi/OptionHandler.java   |   26 -
 .../org/apache/log4j/spi/RepositorySelector.java   |   43 -
 .../org/apache/log4j/spi/ThrowableInformation.java |   69 -
 .../java/org/apache/log4j/spi/package-info.java    |   20 -
 .../java/org/apache/log4j/xml/DOMConfigurator.java |   80 -
 .../org/apache/log4j/xml/Log4jEntityResolver.java  |   51 -
 .../log4j/xml/UnrecognizedElementHandler.java      |   42 -
 .../apache/log4j/xml/XmlConfigurationFactory.java  |  926 -----
 .../java/org/apache/log4j/xml/package-info.java    |   20 -
 .../main/resources/org/apache/log4j/xml/log4j.dtd  |  237 --
 log4j-1.2-api/src/src/site/markdown/index.md       |   48 -
 log4j-1.2-api/src/src/site/site.xml                |   52 -
 .../apache/log4j/BasicConfigurationFactory.java    |   70 -
 .../org/apache/log4j/CallerInformationTest.java    |   65 -
 .../test/java/org/apache/log4j/CategoryTest.java   |  209 --
 .../src/test/java/org/apache/log4j/LevelTest.java  |  284 --
 .../test/java/org/apache/log4j/ListAppender.java   |   83 -
 .../test/java/org/apache/log4j/LogWithMDCTest.java |   57 -
 .../java/org/apache/log4j/LogWithRouteTest.java    |   58 -
 .../src/test/java/org/apache/log4j/LoggerTest.java |  525 ---
 .../test/java/org/apache/log4j/LoggingTest.java    |   43 -
 .../test/java/org/apache/log4j/MDCTestCase.java    |   49 -
 .../src/test/java/org/apache/log4j/NDCTest.java    |   36 -
 .../test/java/org/apache/log4j/PriorityTest.java   |  226 --
 .../test/java/org/apache/log4j/VelocityTest.java   |   61 -
 .../AbstractLog4j1ConfigurationConverterTest.java  |   68 -
 .../org/apache/log4j/config/AutoConfigTest.java    |   66 -
 .../Log4j1ConfigurationConverterHadoopTest.java    |   39 -
 .../Log4j1ConfigurationConverterSparkTest.java     |   39 -
 .../config/Log4j1ConfigurationFactoryTest.java     |  249 --
 .../log4j/config/XmlConfigurationFactoryTest.java  |   82 -
 .../apache/log4j/layout/Log4j1XmlLayoutTest.java   |   88 -
 .../pattern/Log4j1MdcPatternConverterTest.java     |   78 -
 .../pattern/Log4j1NdcPatternConverterTest.java     |   74 -
 .../apache/log4j/util/SerializationTestHelper.java |  148 -
 .../src/src/test/resources/L7D_en_US.properties    |   17 -
 .../src/src/test/resources/L7D_fr.properties       |   17 -
 .../src/src/test/resources/L7D_fr_CH.properties    |   16 -
 .../src/main/resources/log4j.properties            |   19 -
 .../hadoop-common/src/main/conf/log4j.properties   |  323 --
 .../src/test/resources/log4j.properties            |   18 -
 .../hadoop-kms/src/test/resources/log4j.properties |   31 -
 .../src/main/resources/log4j.properties            |   31 -
 .../hadoop-nfs/src/test/resources/log4j.properties |   18 -
 .../src/test/resources/log4j.properties            |   49 -
 .../bkjournal/src/test/resources/log4j.properties  |   55 -
 .../src/test/resources/log4j.properties            |   49 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   19 -
 .../hadoop-aws/src/test/resources/log4j.properties |   23 -
 .../src/test/resources/log4j.properties            |   25 -
 .../src/test/resources/log4j.properties            |   42 -
 .../src/main/sample-conf/log4j.properties          |   19 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   37 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   63 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   19 -
 .../src/test/resources/log4j.properties            |   19 -
 .../log4j-DailyRollingFileAppender.properties      |   26 -
 .../config-1.2/log4j-NullAppender.properties       |    9 -
 ...log4j-RollingFileAppender-with-props.properties |   27 -
 .../log4j-RollingFileAppender.properties           |   22 -
 .../log4j-console-EnhancedPatternLayout.properties |   18 -
 .../config-1.2/log4j-console-HtmlLayout.properties |   19 -
 .../log4j-console-PatternLayout.properties         |   18 -
 .../log4j-console-SimpleLayout.properties          |   17 -
 .../config-1.2/log4j-console-TTCCLayout.properties |   19 -
 .../config-1.2/log4j-console-XmlLayout.properties  |   19 -
 .../config-1.2/log4j-file-SimpleLayout.properties  |   17 -
 .../log4j-system-properties-1.properties           |   14 -
 .../log4j-system-properties-2.properties           |   15 -
 .../resources/config-1.2/spark/R/log4j.properties  |   28 -
 .../src/test/resources/log4j.properties            |   27 -
 .../src/test/resources/log4j.properties            |   24 -
 .../spark/core/src/test/resources/log4j.properties |   36 -
 .../flume-sink/src/test/resources/log4j.properties |   28 -
 .../flume/src/test/resources/log4j.properties      |   28 -
 .../src/test/resources/log4j.properties            |   27 -
 .../kafka-0-10/src/test/resources/log4j.properties |   28 -
 .../kafka-0-8/src/test/resources/log4j.properties  |   28 -
 .../src/main/resources/log4j.properties            |   37 -
 .../src/test/resources/log4j.properties            |   27 -
 .../graphx/src/test/resources/log4j.properties     |   27 -
 .../launcher/src/test/resources/log4j.properties   |   33 -
 .../mllib/src/test/resources/log4j.properties      |   28 -
 .../spark/repl/src/test/resources/log4j.properties |   27 -
 .../catalyst/src/test/resources/log4j.properties   |   27 -
 .../sql/core/src/test/resources/log4j.properties   |   57 -
 .../sql/hive/src/test/resources/log4j.properties   |   61 -
 .../streaming/src/test/resources/log4j.properties  |   28 -
 .../spark/yarn/src/test/resources/log4j.properties |   31 -
 log4j-1.2-api/src/src/test/resources/hello.vm      |    6 -
 .../src/src/test/resources/log-RouteWithMDC.xml    |   47 -
 log4j-1.2-api/src/src/test/resources/log4j.xml     |   36 -
 .../src/src/test/resources/log4j1-file.xml         |   57 -
 .../src/src/test/resources/log4j1-list.xml         |   36 -
 .../src/src/test/resources/log4j2-config.xml       |   39 -
 .../src/src/test/resources/logWithMDC.xml          |   40 -
 .../test/resources/witness/serialization/info.bin  |  Bin 60 -> 0 bytes
 .../org/apache/log4j/CallerInformationTest.java    |    4 +-
 .../test/java/org/apache/log4j/CategoryTest.java   |    2 +-
 .../test/java/org/apache/log4j/LogWithMDCTest.java |    4 +-
 .../java/org/apache/log4j/LogWithRouteTest.java    |    4 +-
 .../src/test/java/org/apache/log4j/LoggerTest.java |    2 +-
 .../test/java/org/apache/log4j/LoggingTest.java    |    2 +-
 .../apache/log4j/bridge/LogEventWrapperTest.java   |   50 +
 .../AbstractLog4j1ConfigurationConverterTest.java  |   21 +-
 .../config/Log4j1ConfigurationFactoryTest.java     |    2 +-
 .../config/PropertiesReconfigurationTest.java      |   95 +
 .../apache/log4j/config/SyslogAppenderTest.java    |    4 +-
 .../log4j/config/XmlReconfigurationTest.java       |   96 +
 .../apache/log4j/layout/Log4j1XmlLayoutTest.java   |    2 +-
 .../pattern/Log4j1NdcPatternConverterTest.java     |    2 +-
 .../apache/log4j/util/SerializationTestHelper.java |    2 +
 log4j-api-java9/pom.xml                            |  153 -
 log4j-api-java9/src/assembly/java9.xml             |   44 -
 log4j-api-java9/src/main/java/module-info.java     |   28 -
 .../main/java/org/apache/logging/log4j/Dummy.java  |   24 -
 .../logging/log4j/log4j/util/PropertySource.java   |   24 -
 .../org/apache/logging/log4j/message/Dummy.java    |   24 -
 .../logging/log4j/message/ThreadDumpMessage.java   |   27 -
 .../org/apache/logging/log4j/simple/Dummy.java     |   24 -
 .../org/apache/logging/log4j/spi/Provider.java     |   24 -
 .../org/apache/logging/log4j/status/Dummy.java     |   24 -
 .../util/PrivateSecurityManagerStackTraceUtil.java |   34 -
 .../apache/logging/log4j/util/StackLocator.java    |  110 -
 .../util/internal/DefaultObjectInputFilter.java    |  100 -
 .../logging/log4j/util/ProcessIdUtilTest.java      |   29 -
 .../logging/log4j/util/StackLocatorTest.java       |  152 -
 log4j-api/pom.xml                                  |  231 +-
 log4j-api/src/main/java/module-info.java           |   31 +
 .../main/java/org/apache/logging/log4j/Level.java  |    4 +-
 .../java/org/apache/logging/log4j/LogBuilder.java  |   73 +-
 .../java/org/apache/logging/log4j/LogManager.java  |   11 +-
 .../main/java/org/apache/logging/log4j/Logger.java |    8 +-
 .../org/apache/logging/log4j/ThreadContext.java    |    3 +-
 .../logging/log4j/internal/DefaultLogBuilder.java  |    9 +
 .../log4j/internal/DefaultObjectInputFilter.java   |  100 +
 .../logging/log4j/internal/LogManagerStatus.java   |   33 +
 .../log4j/message/AbstractMessageFactory.java      |    3 +-
 .../log4j/message/FormattedMessageFactory.java     |    3 +-
 .../logging/log4j/message/LocalizedMessage.java    |    2 +
 .../log4j/message/LocalizedMessageFactory.java     |    5 +-
 .../apache/logging/log4j/message/MapMessage.java   |   30 +-
 .../logging/log4j/message/MessageFactory2.java     |    1 +
 .../log4j/message/MessageFormatMessageFactory.java |    3 +-
 .../logging/log4j/message/ParameterConsumer.java   |    2 +-
 .../logging/log4j/message/ParameterFormatter.java  |  158 +-
 .../log4j/message/ParameterizedMessageFactory.java |    3 +-
 .../ParameterizedNoReferenceMessageFactory.java    |    1 +
 .../logging/log4j/message/ReusableMessage.java     |    2 +-
 .../message/ReusableParameterizedMessage.java      |   22 +-
 .../log4j/message/SimpleMessageFactory.java        |    3 +-
 .../log4j/message/StringFormattedMessage.java      |    3 +-
 .../message/StringFormatterMessageFactory.java     |    1 +
 .../logging/log4j/message/StructuredDataId.java    |    9 +-
 .../log4j/message/StructuredDataMessage.java       |    2 +-
 .../logging/log4j/message/ThreadDumpMessage.java   |    1 -
 .../log4j/simple/SimpleLoggerContextFactory.java   |    5 +
 .../apache/logging/log4j/spi/AbstractLogger.java   |   10 +-
 .../logging/log4j/spi/AbstractLoggerAdapter.java   |    1 +
 .../apache/logging/log4j/spi/LoggerContext.java    |   25 +
 .../logging/log4j/spi/LoggerContextFactory.java    |   13 +
 .../log4j/spi/MutableThreadContextStack.java       |    2 +-
 .../logging/log4j/spi/ObjectThreadContextMap.java  |    3 +
 .../apache/logging/log4j/spi/ThreadContextMap.java |    2 +-
 .../org/apache/logging/log4j/util/Constants.java   |    2 +-
 .../log4j/util/FilteredObjectInputStream.java      |    1 +
 .../log4j/util/IndexedReadOnlyStringMap.java       |    1 +
 .../org/apache/logging/log4j/util/LambdaUtil.java  |    1 +
 .../org/apache/logging/log4j/util/LoaderUtil.java  |   46 +-
 .../apache/logging/log4j/util/MessageSupplier.java |    2 +-
 .../org/apache/logging/log4j/util/NameUtil.java    |   43 +-
 .../logging/log4j/util/PerformanceSensitive.java   |    5 +-
 .../apache/logging/log4j/util/ProcessIdUtil.java   |    0
 .../logging/log4j/util/ReadOnlyStringMap.java      |    1 +
 .../apache/logging/log4j/util/ReflectionUtil.java  |    2 +-
 .../logging/log4j/util/SortedArrayStringMap.java   |   17 +-
 .../apache/logging/log4j/util/StackLocator.java    |  223 +-
 .../logging/log4j/util/StackLocatorUtil.java       |   23 +-
 .../org/apache/logging/log4j/util/Strings.java     |   64 +-
 .../java/org/apache/logging/log4j/util/Timer.java  |    4 +-
 .../src/main/resources/META-INF/MANIFEST.MF        |    0
 log4j-api/src/test/java-test/module-info.java      |   32 +
 .../log4j/test/AbstractSerializationTest.java      |   50 +
 .../logging/log4j/test/SerializableMatchers.java   |   58 +
 .../org/apache/logging/log4j/test/TestLogger.java  |  202 ++
 .../logging/log4j/test/TestLoggerContext.java      |   69 +
 .../log4j/test/TestLoggerContextFactory.java       |   51 +
 .../logging/log4j/test/ThreadContextHolder.java    |   80 +
 .../logging/log4j/test/ThreadContextTest.java      |  194 ++
 .../log4j/test/ThreadContextUtilityClass.java      |  115 +
 .../test/junit/AbstractExternalFileCleaner.java    |  185 +
 .../log4j/test/junit/AbstractFileCleaner.java      |   90 +
 .../logging/log4j/test/junit/ClassMatchers.java    |   37 +
 .../logging/log4j/test/junit/CleanFiles.java       |   68 +
 .../logging/log4j/test/junit/CleanFolders.java     |  110 +
 .../log4j/test/junit/CleanUpDirectories.java       |   46 +
 .../logging/log4j/test/junit/CleanUpFiles.java     |   46 +
 .../logging/log4j/test/junit/DirectoryCleaner.java |   70 +
 .../logging/log4j/test/junit/FileCleaner.java      |   52 +
 .../junit/LogManagerLoggerContextFactoryRule.java  |   52 +
 .../test/junit/LoggerContextFactoryExtension.java  |   54 +
 .../apache/logging/log4j/test/junit/Mutable.java   |   35 +
 .../log4j/test/junit/SecurityManagerTestRule.java  |   94 +
 .../logging/log4j/test/junit/SerialUtil.java       |   65 +
 .../log4j/test/junit/StatusLoggerLevel.java        |   44 +
 .../test/junit/StatusLoggerLevelExtension.java     |   50 +
 .../logging/log4j/test/junit/StatusLoggerRule.java |   51 +
 .../log4j/test/junit/ThreadContextExtension.java   |   57 +
 .../log4j/test/junit/ThreadContextMapRule.java     |   40 +
 .../log4j/test/junit/ThreadContextRule.java        |   81 +
 .../log4j/test/junit/ThreadContextStackRule.java   |   39 +
 .../test/junit/URLStreamHandlerFactoryRule.java    |   97 +
 .../log4j/test/junit/UsingAnyThreadContext.java    |   45 +
 .../log4j/test/junit/UsingThreadContextMap.java    |   45 +
 .../log4j/test/junit/UsingThreadContextStack.java  |   45 +
 log4j-api/src/test/java/module-info.java           |   35 +
 .../apache/logging/log4j/AbstractLoggerTest.java   |  184 +-
 .../logging/log4j/AbstractSerializationTest.java   |   50 -
 .../logging/log4j/CloseableThreadContextTest.java  |  127 +-
 .../org/apache/logging/log4j/EventLoggerTest.java  |   24 +-
 .../org/apache/logging/log4j/LambdaLoggerTest.java |   18 +-
 .../java/org/apache/logging/log4j/LevelTest.java   |   21 +-
 .../org/apache/logging/log4j/LogManagerTest.java   |   68 +-
 .../apache/logging/log4j/LoggerSupplierTest.java   |  423 +--
 .../java/org/apache/logging/log4j/LoggerTest.java  | 1260 +++----
 .../java/org/apache/logging/log4j/MarkerTest.java  |   37 +-
 .../logging/log4j/NoopThreadContextTest.java       |   17 +-
 .../apache/logging/log4j/SerializableMatchers.java |   58 -
 .../java/org/apache/logging/log4j/TestLogger.java  |  199 --
 .../apache/logging/log4j/TestLoggerContext.java    |   68 -
 .../logging/log4j/TestLoggerContextFactory.java    |   46 -
 .../org/apache/logging/log4j/TestProvider.java     |    1 +
 .../apache/logging/log4j/ThreadContextHolder.java  |   79 -
 .../log4j/ThreadContextInheritanceTest.java        |   54 +-
 .../apache/logging/log4j/ThreadContextTest.java    |  193 --
 .../logging/log4j/ThreadContextUtilityClass.java   |  116 -
 .../org/apache/logging/log4j/TraceLoggingTest.java |   28 +-
 .../log4j/junit/AbstractExternalFileCleaner.java   |  185 -
 .../apache/logging/log4j/junit/ClassMatchers.java  |   37 -
 .../org/apache/logging/log4j/junit/CleanFiles.java |   68 -
 .../apache/logging/log4j/junit/CleanFolders.java   |  106 -
 .../junit/LogManagerLoggerContextFactoryRule.java  |   49 -
 .../org/apache/logging/log4j/junit/Mutable.java    |   35 -
 .../log4j/junit/SecurityManagerTestRule.java       |   94 -
 .../org/apache/logging/log4j/junit/SerialUtil.java |   65 -
 .../logging/log4j/junit/StatusLoggerRule.java      |   49 -
 .../logging/log4j/junit/ThreadContextMapRule.java  |   37 -
 .../logging/log4j/junit/ThreadContextRule.java     |   78 -
 .../log4j/junit/ThreadContextStackRule.java        |   37 -
 .../log4j/junit/URLStreamHandlerFactoryRule.java   |   97 -
 .../log4j/message/FormattedMessageTest.java        |   28 +-
 .../log4j/message/LocalizedMessageFactoryTest.java |   15 +-
 .../log4j/message/LocalizedMessageTest.java        |   21 +-
 .../logging/log4j/message/MapMessageTest.java      |   16 +-
 .../MessageFormatMessageSerializationTest.java     |    6 +-
 .../log4j/message/MessageFormatMessageTest.java    |   21 +-
 .../log4j/message/MessageFormatsPerfTest.java      |   12 +-
 .../log4j/message/ObjectArrayMessageTest.java      |   82 +-
 .../logging/log4j/message/ObjectMessageTest.java   |   17 +-
 .../log4j/message/ParameterFormatterTest.java      |   31 +-
 .../log4j/message/ParameterizedMessageTest.java    |   10 +-
 .../log4j/message/ReusableMessageFactoryTest.java  |    8 +-
 .../log4j/message/ReusableObjectMessageTest.java   |    4 +-
 .../message/ReusableParameterizedMessageTest.java  |   10 +-
 .../log4j/message/ReusableSimpleMessageTest.java   |    4 +-
 .../logging/log4j/message/SimpleMessageTest.java   |    4 +-
 .../log4j/message/StringFormattedMessageTest.java  |   32 +-
 .../log4j/message/StructuredDataMessageTest.java   |    9 +-
 .../log4j/message/ThreadDumpMessageTest.java       |   33 +-
 .../logging/log4j/simple/SimpleLoggerTest.java     |   17 +-
 .../log4j/spi/DefaultThreadContextMapTest.java     |   18 +-
 .../log4j/spi/DefaultThreadContextStackTest.java   |   27 +-
 .../logging/log4j/spi/LoggerAdapterTest.java       |   19 +-
 .../log4j/spi/MutableThreadContextStackTest.java   |   56 +-
 .../status/StatusLoggerSerializationTest.java      |    2 +-
 .../org/apache/logging/log4j/util/AssertTest.java  |   26 +-
 .../org/apache/logging/log4j/util/CharsTest.java   |   36 +-
 .../apache/logging/log4j/util/ConstantsTest.java   |    4 +-
 .../logging/log4j/util/DeserializerHelper.java     |    1 +
 ...EnvironmentPropertySourceSecurityManagerIT.java |    6 +-
 .../log4j/util/EnvironmentPropertySourceTest.java  |   24 +-
 .../apache/logging/log4j/util/LambdaUtilTest.java  |   72 +-
 .../util/LegacyPropertiesCompatibilityTest.java    |   26 +-
 .../apache/logging/log4j/util/LoaderUtilTest.java  |   15 +-
 .../log4j/util/Log4jCharsetsPropertiesTest.java    |   15 +-
 .../log4j/util/PropertiesPropertySourceTest.java   |   21 +-
 .../logging/log4j/util/PropertiesUtilTest.java     |   28 +-
 ...ropertyFilePropertySourceSecurityManagerIT.java |   14 +-
 .../log4j/util/PropertySourceCamelCaseTest.java    |   24 +-
 .../log4j/util/PropertySourceTokenizerTest.java    |   24 +-
 .../logging/log4j/util/ProviderUtilTest.java       |   16 +-
 .../log4j/util/SortedArrayStringMapTest.java       |  297 +-
 .../logging/log4j/util/StackLocatorUtilTest.java   |   12 +-
 .../logging/log4j/util/StringBuildersTest.java     |   16 +-
 .../org/apache/logging/log4j/util/StringsTest.java |   64 +-
 ...mPropertiesPropertySourceSecurityManagerIT.java |   11 +-
 .../util/SystemPropertiesPropertySourceTest.java   |   44 +-
 .../org/apache/logging/log4j/util/Unbox1Test.java  |   53 +-
 .../logging/log4j/util/Unbox2ConfigurableTest.java |   35 +-
 .../src/test/resources/Log4j-charsets.properties   |   48 +
 log4j-appserver/pom.xml                            |   20 +-
 log4j-bom/pom.xml                                  |   41 +-
 log4j-cassandra/pom.xml                            |   22 +-
 .../log4j/cassandra/CassandraAppenderIT.java       |    4 +-
 log4j-core-its/pom.xml                             |   29 +-
 .../logging/log4j/FilterPerformanceComparison.java |    2 +-
 .../logging/log4j/PerformanceComparison.java       |    4 +-
 .../org/apache/logging/log4j/PerformanceRun.java   |    4 +-
 .../apache/logging/log4j/core/SimplePerfTest.java  |   93 +-
 .../logging/log4j/core/ThreadedPerfTest.java       |    2 +-
 .../apache/logging/log4j/core/ThreadedTest.java    |    4 +-
 .../log4j/core/appender/HttpAppenderTest.java      |    4 +-
 .../appender/JsonCompleteFileAppenderTest.java     |   10 +-
 .../SecureSocketAppenderSocketOptionsTest.java     |    6 +-
 .../appender/SocketAppenderBufferSizeTest.java     |    4 +-
 .../appender/SocketAppenderSocketOptionsTest.java  |    4 +-
 .../log4j/core/appender/SocketAppenderTest.java    |    2 +-
 .../core/appender/XmlCompactFileAppenderTest.java  |    4 +-
 .../XmlCompactFileAppenderValidationTest.java      |    2 +-
 .../XmlCompactFileAsyncAppenderValidationTest.java |    4 +-
 .../core/appender/XmlCompleteFileAppenderTest.java |    8 +-
 .../log4j/core/appender/XmlFileAppenderTest.java   |    4 +-
 .../appender/XmlRandomAccessFileAppenderTest.java  |    4 +-
 log4j-core-java9/pom.xml                           |  150 -
 log4j-core-java9/src/assembly/java9.xml            |   51 -
 .../org/apache/logging/log4j/core/util/Clock.java  |   32 -
 .../apache/logging/log4j/core/util/Instant.java    |   75 -
 .../logging/log4j/core/util/MutableInstant.java    |  155 -
 .../logging/log4j/core/util/PreciseClock.java      |   36 -
 .../logging/log4j/core/util/SystemClock.java       |   44 -
 .../org/apache/logging/log4j/core/util/Dummy.java  |   24 -
 log4j-core/README.md                               |   37 +
 log4j-core/pom.xml                                 |  331 +-
 log4j-core/src/main/assembly/test-resources.xml    |   33 +
 .../apache/logging/log4j/core/LoggerContext.java   |   20 +-
 .../log4j/core/appender/AbstractManager.java       |    7 +-
 .../logging/log4j/core/appender/AsyncAppender.java |  139 +-
 .../appender/AsyncAppenderEventDispatcher.java     |  174 +
 .../log4j/core/appender/FailoverAppender.java      |    2 +-
 .../logging/log4j/core/appender/FileManager.java   |    6 +-
 .../core/appender/MemoryMappedFileManager.java     |   12 +-
 .../log4j/core/appender/OutputStreamManager.java   |   11 +-
 .../log4j/core/appender/RollingFileAppender.java   |    2 +-
 .../log4j/core/appender/rolling/FileSize.java      |    2 +-
 .../core/appender/rolling/PatternProcessor.java    |   11 +-
 .../core/appender/rolling/RollingFileManager.java  |   79 +-
 .../rolling/RollingRandomAccessFileManager.java    |   12 +-
 .../core/appender/rolling/RolloverListener.java    |   37 +
 .../rolling/action/AbstractPathAction.java         |    2 +-
 .../core/appender/routing/RoutingAppender.java     |    2 +-
 .../core/async/AsyncLoggerConfigDisruptor.java     |   10 +-
 .../log4j/core/async/AsyncLoggerDisruptor.java     |   13 +-
 .../async/BasicAsyncLoggerContextSelector.java     |   84 +
 .../core/async/DefaultAsyncQueueFullPolicy.java    |    9 +-
 .../logging/log4j/core/async/DisruptorUtil.java    |   64 +-
 .../core/async/RingBufferLogEventTranslator.java   |    4 +-
 .../log4j/core/config/AbstractConfiguration.java   |  121 +-
 .../logging/log4j/core/config/AppenderControl.java |    8 +-
 .../log4j/core/config/ConfigurationFactory.java    |   78 +-
 .../log4j/core/config/ConfigurationScheduler.java  |   28 +-
 .../log4j/core/config/ConfigurationSource.java     |   58 +-
 .../logging/log4j/core/config/Configurator.java    |   22 +
 .../core/config/LockingReliabilityStrategy.java    |    2 +-
 .../log4j/core/config/arbiters/Arbiter.java        |   27 +
 .../log4j/core/config/arbiters/ClassArbiter.java   |   75 +
 .../log4j/core/config/arbiters/DefaultArbiter.java |   53 +
 .../log4j/core/config/arbiters/ScriptArbiter.java  |  121 +
 .../log4j/core/config/arbiters/SelectArbiter.java  |   64 +
 .../config/arbiters/SystemPropertyArbiter.java     |   93 +
 .../builder/impl/DefaultConfigurationBuilder.java  |   66 +-
 .../plugins/visitors/PluginAttributeVisitor.java   |    3 +-
 .../visitors/PluginBuilderAttributeVisitor.java    |    5 +-
 .../properties/PropertiesConfigurationBuilder.java |    2 +-
 .../core/config/status/StatusConfiguration.java    |    2 +-
 .../logging/log4j/core/filter/TimeFilter.java      |    2 +-
 .../log4j/core/impl/ExtendedStackTraceElement.java |   34 +
 .../log4j/core/impl/Log4jContextFactory.java       |   61 +-
 .../log4j/core/impl/ThreadContextDataInjector.java |   50 +-
 .../log4j/core/layout/AbstractStringLayout.java    |    2 +-
 .../logging/log4j/core/layout/GelfLayout.java      |  230 +-
 .../logging/log4j/core/layout/HtmlLayout.java      |   59 +-
 .../log4j/core/layout/ScriptPatternSelector.java   |    4 +-
 .../logging/log4j/core/lookup/Interpolator.java    |    4 +-
 .../log4j/core/net/ssl/SslConfiguration.java       |    3 +-
 .../core/pattern/AbstractStyleNameConverter.java   |   13 +-
 .../core/pattern/EncodingPatternConverter.java     |    9 +
 .../log4j/core/pattern/RepeatPatternConverter.java |  103 +
 .../logging/log4j/core/plugins/package-info.java   |   20 +
 .../log4j/core/selector/BasicContextSelector.java  |   13 +-
 .../core/selector/ClassLoaderContextSelector.java  |   28 +-
 .../log4j/core/selector/ContextSelector.java       |   49 +
 .../log4j/core/selector/CoreContextSelectors.java  |    8 +-
 .../log4j/core/selector/JndiContextSelector.java   |    5 +
 .../log4j/core/time/internal/SystemClock.java      |   23 +-
 .../core/time/internal/format/FixedDateFormat.java |    4 +-
 .../apache/logging/log4j/core/util/ArrayUtils.java |   11 +
 .../core/util/DefaultShutdownCallbackRegistry.java |   52 +-
 .../org/apache/logging/log4j/core/util/Loader.java |    4 +-
 .../apache/logging/log4j/core/util/NetUtils.java   |   38 +-
 .../log4j/core/util/ShutdownCallbackRegistry.java  |    4 +
 .../apache/logging/log4j/core/util/Throwables.java |   22 +-
 .../logging/log4j/core/util/WatchManager.java      |  351 +-
 .../logging/log4j/core/util/WatcherFactory.java    |    2 +-
 log4j-core/src/main/java9/module-info.java         |   86 +
 log4j-core/src/main/resources/Log4j-config.xsd     | 1469 +++++++-
 .../src/main/resources/META-INF/MANIFEST.MF        |    0
 .../log4j/core/test/AvailablePortFinder.java       |  155 +
 .../test/AvailablePortSystemPropertyTestRule.java  |   81 +
 .../log4j/core/test/BasicConfigurationFactory.java |   62 +
 .../log4j/core/test/CoreLoggerContexts.java        |   52 +
 .../logging/log4j/core/test/ExtendedLevels.java    |   30 +
 .../apache/logging/log4j/core/test/GetLogger.java  |   37 +
 .../logging/log4j/core/test/RuleChainFactory.java  |   45 +
 .../logging/log4j/core/test/TestMarkers.java       |   34 +
 .../core/test/appender/AlwaysFailAppender.java     |   49 +
 .../log4j/core/test/appender/BlockingAppender.java |   65 +
 .../core/test/appender/EncodingListAppender.java   |   85 +
 .../log4j/core/test/appender/FailOnceAppender.java |  128 +
 .../log4j/core/test/appender/InMemoryAppender.java |   60 +
 .../log4j/core/test/appender/ListAppender.java     |  296 ++
 .../log4j/core/test/categories/Appenders.java      |   33 +
 .../log4j/core/test/categories/AsyncLoggers.java   |   23 +
 .../log4j/core/test/categories/Configurations.java |   25 +
 .../log4j/core/test/categories/GarbageFree.java    |   24 +
 .../log4j/core/test/categories/Layouts.java        |   28 +
 .../core/test/categories/PerformanceTests.java     |   24 +
 .../log4j/core/test/categories/Scripts.java        |   24 +
 .../log4j/core/test/categories/package-info.java   |   22 +
 .../log4j/core/test/hamcrest/Descriptors.java      |   44 +
 .../log4j/core/test/hamcrest/FileMatchers.java     |  163 +
 .../log4j/core/test/hamcrest/MapMatchers.java      |   62 +
 .../log4j/core/test/junit/AppenderResolver.java    |   54 +
 .../core/test/junit/ConfigurationResolver.java     |   38 +
 .../logging/log4j/core/test/junit/JndiRule.java    |   59 +
 .../core/test/junit/LoggerContextResolver.java     |  156 +
 .../log4j/core/test/junit/LoggerContextRule.java   |  319 ++
 .../log4j/core/test/junit/LoggerContextSource.java |   79 +
 .../logging/log4j/core/test/junit/Named.java       |   41 +
 .../core/test/junit/ReconfigurationPolicy.java     |   35 +
 .../test/junit/TypeBasedParameterResolver.java     |   80 +
 .../log4j/core/test/junit/package-info.java        |   22 +
 .../log4j/core/test/layout/Log4j2_1482_Test.java   |   92 +
 .../log4j/core/test/layout/LogEventFixtures.java   |  109 +
 .../log4j/core/test/net/mock/MockSyslogServer.java |   49 +
 .../test/net/mock/MockSyslogServerFactory.java     |   39 +
 .../core/test/net/mock/MockTcpSyslogServer.java    |   94 +
 .../core/test/net/mock/MockTlsSyslogServer.java    |  154 +
 .../core/test/net/mock/MockUdpSyslogServer.java    |   70 +
 .../ssl/LegacyBsdTlsSyslogInputStreamReader.java   |   61 +
 .../log4j/core/test/net/ssl/TestConstants.java     |   40 +
 .../test/net/ssl/TlsSyslogInputStreamReader.java   |   91 +
 .../net/ssl/TlsSyslogInputStreamReaderBase.java    |   35 +
 .../core/test/net/ssl/TlsSyslogMessageFormat.java  |   23 +
 .../test/parser/AbstractLogEventParserTest.java    |   59 +
 .../log4j/core/test/util/FixedTimeClock.java       |   36 +
 .../logging/log4j/core/test/util/Profiler.java     |   94 +
 log4j-core/src/test/java-test9/module-info.java    |   25 +
 .../log4j/FormatterLoggerManualExample.java        |   54 -
 .../org/apache/logging/log4j/LogRolloverTest.java  |   43 -
 .../apache/logging/log4j/LogbackSubstitution.java  |   51 -
 .../java/org/apache/logging/log4j/TestMarkers.java |   31 -
 .../logging/log4j/ThreadContextTestAccess.java     |   34 -
 .../apache/logging/log4j/categories/Appenders.java |   33 -
 .../logging/log4j/categories/AsyncLoggers.java     |   23 -
 .../logging/log4j/categories/Configurations.java   |   25 -
 .../apache/logging/log4j/categories/Layouts.java   |   28 -
 .../logging/log4j/categories/PerformanceTests.java |   24 -
 .../logging/log4j/categories/package-info.java     |   22 -
 .../log4j/core/AppenderRefLevelJsonTest.java       |   44 +-
 .../logging/log4j/core/AppenderRefLevelTest.java   |   51 +-
 .../log4j/core/BasicConfigurationFactory.java      |   61 -
 .../logging/log4j/core/BasicLoggingTest.java       |    7 +-
 .../logging/log4j/core/CollectionLoggingTest.java  |   45 +-
 .../logging/log4j/core/CoreLoggerContexts.java     |   51 -
 .../log4j/core/CustomLevelsOverrideTest.java       |   37 +-
 .../logging/log4j/core/CustomLevelsTest.java       |   36 +-
 .../log4j/core/CustomLevelsWithFiltersTest.java    |   31 +-
 .../apache/logging/log4j/core/DeadlockTest.java    |   20 +-
 .../log4j/core/EventParameterMemoryLeakTest.java   |   18 +-
 .../logging/log4j/core/ExtendedLevelTest.java      |   47 +-
 .../log4j/core/FormatterLoggerManualExample.java   |   55 +
 .../log4j/core/GcFreeAsynchronousLoggingTest.java  |   46 -
 .../logging/log4j/core/GcFreeLoggingTestUtil.java  |  198 --
 .../log4j/core/GcFreeMixedSyncAyncLoggingTest.java |   41 -
 .../log4j/core/GcFreeSynchronousLoggingTest.java   |   40 -
 .../apache/logging/log4j/core/HostNameTest.java    |   45 +-
 .../apache/logging/log4j/core/LateConfigTest.java  |   32 +-
 .../org/apache/logging/log4j/core/LevelTest.java   |   62 +-
 .../apache/logging/log4j/core/Log4j1222Test.java   |    6 +-
 .../logging/log4j/core/LogEventFactoryTest.java    |   41 +-
 .../apache/logging/log4j/core/LogEventTest.java    |   27 +-
 .../apache/logging/log4j/core/LogRolloverTest.java |   44 +
 .../logging/log4j/core/LogbackSubstitution.java    |   50 +
 .../apache/logging/log4j/core/LoggerDateTest.java  |   26 +-
 .../log4j/core/LoggerSerializationTest.java        |    2 +-
 .../org/apache/logging/log4j/core/LoggerTest.java  |  128 +-
 .../logging/log4j/core/LoggerUpdateTest.java       |   56 +-
 .../org/apache/logging/log4j/core/LookupTest.java  |   31 +-
 .../logging/log4j/core/PatternSelectorTest.java    |   58 +-
 .../log4j/core/PropertiesFileConfigTest.java       |   38 +-
 ...ReusableParameterizedMessageMemoryLeakTest.java |    7 +-
 .../logging/log4j/core/ShutdownDisabledTest.java   |   22 +-
 .../core/ShutdownTimeoutConfigurationTest.java     |   20 +-
 .../logging/log4j/core/StrictXmlConfigTest.java    |   58 +-
 .../log4j/core/ThreadContextTestAccess.java        |   47 +
 .../logging/log4j/core/TimestampMessageTest.java   |   37 +-
 .../org/apache/logging/log4j/core/XmlEvents.java   |   20 +-
 .../core/appender/AsyncAppenderNoLocationTest.java |   85 -
 .../appender/AsyncAppenderQueueFullPolicyTest.java |   46 +-
 .../appender/AsyncAppenderShutdownTimeoutTest.java |   42 -
 .../log4j/core/appender/AsyncAppenderTest.java     |  167 +-
 .../core/appender/ConfigurationTestUtils.java      |   74 +-
 .../core/appender/ConsoleAppenderBuilderTest.java  |   13 +-
 .../appender/ConsoleAppenderJAnsiMessageMain.java  |    5 +-
 .../ConsoleAppenderJAnsiXExceptionMain.java        |    2 +-
 .../log4j/core/appender/ConsoleAppenderTest.java   |   40 +-
 .../log4j/core/appender/FailoverAppenderTest.java  |   66 +-
 .../core/appender/FileAppenderBuilderTest.java     |    7 +-
 .../core/appender/FileAppenderPermissionsTest.java |  136 +-
 .../FileAppenderPermissionsXmlConfigTest.java      |   66 -
 .../log4j/core/appender/FileAppenderTest.java      |  159 +-
 .../log4j/core/appender/InMemoryAppenderTest.java  |   17 +-
 .../MemoryMappedFileAppenderLocationTest.java      |   95 -
 .../MemoryMappedFileAppenderRemapTest.java         |   95 -
 .../MemoryMappedFileAppenderSimpleTest.java        |   86 -
 .../appender/MemoryMappedFileAppenderTest.java     |  119 +
 .../core/appender/MemoryMappedFileManagerTest.java |   28 +-
 .../core/appender/OutputStreamAppenderTest.java    |  246 +-
 .../core/appender/OutputStreamManagerTest.java     |   44 +-
 .../appender/RandomAccessFileAppenderTest.java     |    4 +-
 .../core/appender/RandomAccessFileManagerTest.java |  115 +-
 .../core/appender/ReconfigureAppenderTest.java     |    8 +-
 ...ollingRandomAccessFileAppenderRolloverTest.java |    2 +-
 .../core/appender/ScriptAppenderSelectorTest.java  |   89 +-
 .../core/appender/SocketAppenderBuilderTest.java   |    9 +-
 .../log4j/core/appender/SyslogAppenderTest.java    |    2 +-
 .../core/appender/SyslogAppenderTestBase.java      |    2 +-
 .../log4j/core/appender/TlsSyslogAppenderTest.java |    6 +-
 .../log4j/core/appender/TlsSyslogFrameTest.java    |   16 +-
 .../log4j/core/appender/WriterAppenderTest.java    |   25 +-
 .../appender/nosql/NoSqlDatabaseManagerTest.java   |    2 +-
 .../rewrite/LoggerNameLevelRewritePolicyTest.java  |   13 +-
 .../appender/rewrite/MapRewritePolicyTest.java     |   58 +-
 .../core/appender/rewrite/RewriteAppenderTest.java |   82 +-
 .../appender/rolling/CronTriggeringPolicyTest.java |   11 +-
 .../core/appender/rolling/EligibleFilesTest.java   |   10 +-
 .../log4j/core/appender/rolling/FileSizeTest.java  |   11 +-
 .../rolling/OnStartupTriggeringPolicyTest.java     |   64 +-
 .../appender/rolling/PatternProcessorTest.java     |   45 +-
 .../RandomRollingAppenderOnStartupTest.java        |    2 +-
 .../appender/rolling/RollingAppenderCountTest.java |    2 +-
 .../rolling/RollingAppenderCronAndSizeTest.java    |    6 +-
 .../RollingAppenderCronEvery2DirectTest.java       |    6 +-
 .../rolling/RollingAppenderCronEvery2Test.java     |    6 +-
 .../rolling/RollingAppenderCronOnStartupTest.java  |  107 +
 .../rolling/RollingAppenderCronOnceADayTest.java   |    6 +-
 .../appender/rolling/RollingAppenderCronTest.java  |    6 +-
 .../RollingAppenderCustomDeleteActionTest.java     |    2 +-
 ...RollingAppenderDeleteAccumulatedCount1Test.java |    2 +-
 ...RollingAppenderDeleteAccumulatedCount2Test.java |    2 +-
 .../RollingAppenderDeleteAccumulatedSizeTest.java  |    2 +-
 .../rolling/RollingAppenderDeleteMaxDepthTest.java |    2 +-
 .../rolling/RollingAppenderDeleteNestedTest.java   |    2 +-
 .../RollingAppenderDeleteScriptFri13thTest.java    |    2 +-
 .../rolling/RollingAppenderDeleteScriptTest.java   |    2 +-
 .../RollingAppenderDirectWrite1906Test.java        |    6 +-
 .../RollingAppenderDirectWriteStartupSizeTest.java |    4 +-
 ...erDirectWriteTempCompressedFilePatternTest.java |    6 +-
 .../rolling/RollingAppenderDirectWriteTest.java    |    6 +-
 ...RollingAppenderDirectWriteWithFilenameTest.java |    2 +-
 ...llingAppenderDirectWriteWithHtmlLayoutTest.java |   10 +-
 ...lingAppenderDirectWriteWithReconfigureTest.java |    2 +-
 .../RollingAppenderNoUnconditionalDeleteTest.java  |    2 +-
 .../RollingAppenderOnStartupDirectTest.java        |  109 +
 .../rolling/RollingAppenderOnStartupTest.java      |   68 +-
 .../rolling/RollingAppenderReconfigureTest.java    |    6 +-
 .../rolling/RollingAppenderRestartTest.java        |   74 +-
 ...RollingAppenderSizeCompressPermissionsTest.java |    2 +-
 .../rolling/RollingAppenderSizeNoCompressTest.java |    2 +-
 .../appender/rolling/RollingAppenderSizeTest.java  |    6 +-
 .../rolling/RollingAppenderSizeWithTimeTest.java   |    2 +-
 ...llingAppenderTempCompressedFilePatternTest.java |    2 +-
 .../RollingAppenderTimeAndSizeDirectTest.java      |    6 +-
 .../rolling/RollingAppenderTimeAndSizeTest.java    |    6 +-
 .../appender/rolling/RollingAppenderTimeTest.java  |    6 +-
 .../rolling/RollingAppenderUncompressedTest.java   |    2 +-
 .../RollingDirectSizeTimeNewDirectoryTest.java     |   89 +
 .../rolling/RollingDirectTimeNewDirectoryTest.java |  100 +
 .../RollingFileAppenderReconfigureTest.java        |    2 +-
 ...nderReconfigureUndefinedSystemPropertyTest.java |    2 +-
 .../appender/rolling/RollingNewDirectoryTest.java  |   62 +
 ...ingRandomAccessFileManagerHeaderFooterTest.java |    2 +-
 .../RollingRandomAccessFileManagerTest.java        |   96 +-
 .../RollingRandomAppenderDirectWriteTest.java      |    6 +-
 ...gRandomAppenderDirectWriteWithFilenameTest.java |    2 +-
 .../rolling/RolloverWithDeletedOldFileTest.java    |    2 +-
 .../appender/rolling/RolloverWithPaddingTest.java  |    2 +-
 .../rolling/action/AbstractActionTest.java         |   29 +-
 .../rolling/action/Bzip2CompressActionTest.java    |   39 +-
 .../appender/rolling/action/DeleteActionTest.java  |   22 +-
 .../rolling/action/DeletingVisitorTest.java        |   10 +-
 .../rolling/action/DummyFileAttributes.java        |  172 +-
 .../core/appender/rolling/action/DurationTest.java |   21 +-
 .../rolling/action/FileRenameActionTest.java       |  107 +-
 .../core/appender/rolling/action/FileSizeTest.java |   47 +
 .../rolling/action/IfAccumulatedFileCountTest.java |    6 +-
 .../rolling/action/IfAccumulatedFileSizeTest.java  |    4 +-
 .../core/appender/rolling/action/IfAllTest.java    |  106 +-
 .../core/appender/rolling/action/IfAnyTest.java    |  104 +-
 .../appender/rolling/action/IfFileNameTest.java    |  262 +-
 .../rolling/action/IfLastModifiedTest.java         |    4 +-
 .../core/appender/rolling/action/IfNotTest.java    |  104 +-
 .../action/PathSortByModificationTimeTest.java     |   40 +-
 .../rolling/action/ScriptConditionTest.java        |   31 +-
 .../rolling/action/SortingVisitorTest.java         |   61 +-
 .../routing/DefaultRouteScriptAppenderTest.java    |    4 +-
 .../appender/routing/JsonRoutingAppender2Test.java |    2 +-
 .../appender/routing/JsonRoutingAppenderTest.java  |    2 +-
 .../routing/PropertiesRoutingAppenderTest.java     |    4 +-
 .../appender/routing/RoutesScriptAppenderTest.java |    6 +-
 .../appender/routing/RoutingAppender2767Test.java  |    4 +-
 .../core/appender/routing/RoutingAppenderTest.java |    4 +-
 .../routing/RoutingAppenderWithJndiTest.java       |    6 +-
 .../routing/RoutingAppenderWithPurgingTest.java    |    4 +-
 .../routing/RoutingDefaultAppenderTest.java        |    2 +-
 .../async/AbstractAsyncThreadContextTestBase.java  |    4 +-
 .../async/AsyncAppenderConfigTest_LOG4J2_2032.java |    4 +-
 .../async/AsyncAppenderExceptionHandlingTest.java  |   98 +
 .../async/AsyncLoggerClassLoadDeadlockTest.java    |    2 +-
 .../core/async/AsyncLoggerConfigAutoFlushTest.java |    4 +-
 .../core/async/AsyncLoggerConfigErrorOnFormat.java |    4 +-
 .../log4j/core/async/AsyncLoggerConfigTest.java    |    4 +-
 .../log4j/core/async/AsyncLoggerConfigTest2.java   |    4 +-
 .../log4j/core/async/AsyncLoggerConfigTest3.java   |    2 +-
 .../log4j/core/async/AsyncLoggerConfigTest4.java   |    4 +-
 ...ncLoggerConfigThreadContextCopyOnWriteTest.java |    2 +-
 .../AsyncLoggerConfigThreadContextDefaultTest.java |    2 +-
 ...ncLoggerConfigThreadContextGarbageFreeTest.java |    2 +-
 .../AsyncLoggerConfigUseAfterShutdownTest.java     |    4 +-
 .../AsyncLoggerConfigWithAsyncEnabledTest.java     |    4 +-
 ...AsyncLoggerContextSelectorInitialStateTest.java |    2 +-
 .../core/async/AsyncLoggerContextSelectorTest.java |    7 +-
 .../log4j/core/async/AsyncLoggerContextTest.java   |    4 +-
 .../AsyncLoggerCustomSelectorLocationTest.java     |    9 +-
 .../log4j/core/async/AsyncLoggerLocationTest.java  |    4 +-
 .../logging/log4j/core/async/AsyncLoggerTest.java  |    6 +-
 .../async/AsyncLoggerTestArgumentFreedOnError.java |    2 +-
 .../async/AsyncLoggerTestCachedThreadName.java     |    4 +-
 .../log4j/core/async/AsyncLoggerTestNanoTime.java  |    4 +-
 .../async/AsyncLoggerTestUncachedThreadName.java   |    4 +-
 .../AsyncLoggerThreadContextCopyOnWriteTest.java   |    2 +-
 .../async/AsyncLoggerThreadContextDefaultTest.java |    2 +-
 .../AsyncLoggerThreadContextGarbageFreeTest.java   |    2 +-
 .../core/async/AsyncLoggerThreadContextTest.java   |    4 +-
 .../async/AsyncLoggerThreadNameStrategyTest.java   |    2 +-
 .../async/AsyncLoggerTimestampMessageTest.java     |    4 +-
 .../async/AsyncLoggerUseAfterShutdownTest.java     |    4 +-
 .../async/AsyncLoggersWithAsyncAppenderTest.java   |    4 +-
 .../AsyncLoggersWithAsyncLoggerConfigTest.java     |    4 +-
 .../async/AsyncQueueFullPolicyFactoryTest.java     |    2 +-
 .../log4j/core/async/AsyncRootReloadTest.java      |    6 +-
 .../async/BasicAsyncLoggerContextSelectorTest.java |  107 +
 .../async/DefaultAsyncQueueFullPolicyTest.java     |    2 +-
 .../async/DiscardingAsyncQueueFullPolicyTest.java  |    2 +-
 .../log4j/core/async/Log4j2Jira1688AsyncTest.java  |    6 +-
 .../log4j/core/async/Log4j2Jira1688Test.java       |    6 +-
 .../core/async/QueueFullAsyncAppenderTest.java     |    4 +-
 .../core/async/QueueFullAsyncAppenderTest2.java    |    4 +-
 ...llAsyncLoggerConfigLoggingFromToStringTest.java |    4 +-
 ...lAsyncLoggerConfigLoggingFromToStringTest2.java |    4 +-
 .../core/async/QueueFullAsyncLoggerConfigTest.java |    4 +-
 .../async/QueueFullAsyncLoggerConfigTest2.java     |    4 +-
 ...ueueFullAsyncLoggerLoggingFromToStringTest.java |    6 +-
 ...eueFullAsyncLoggerLoggingFromToStringTest2.java |    6 +-
 .../log4j/core/async/QueueFullAsyncLoggerTest.java |    4 +-
 .../core/async/QueueFullAsyncLoggerTest2.java      |    4 +-
 .../core/async/QueueFullAsyncLoggerTest3.java      |    6 +-
 .../log4j/core/async/RingBufferLogEventTest.java   |    3 +-
 .../log4j/core/async/perftest/RunLog4j2.java       |    2 +-
 .../log4j/core/config/AbstractLog4j2_1100Test.java |   68 -
 .../logging/log4j/core/config/AdvertiserTest.java  |   29 +-
 .../core/config/AppenderControlArraySetTest.java   |   12 +-
 .../config/CompositeConfigurationMissingTest.java  |   47 +
 .../core/config/CompositeConfigurationTest.java    |   21 +-
 .../core/config/ConfigurationFactoryTest.java      |  134 +
 .../log4j/core/config/ConfigurationSourceTest.java |   10 +-
 .../log4j/core/config/ConfigurationTest.java       |  157 -
 .../log4j/core/config/ConfiguratorTest.java        |   18 +-
 .../log4j/core/config/CustomConfigurationTest.java |   54 +-
 .../logging/log4j/core/config/FileOutputTest.java  |   37 +-
 .../log4j/core/config/JiraLog4j2_1100JsonTest.java |   31 -
 .../log4j/core/config/JiraLog4j2_1100XmlTest.java  |   27 -
 .../core/config/JiraLog4j2_1100YamlBadTest.java    |   33 -
 .../core/config/JiraLog4j2_1100YamlGoodTest.java   |   31 -
 .../log4j/core/config/JiraLog4j2_2134Test.java     |   23 +-
 .../log4j/core/config/LoggerConfigTest.java        |   57 +-
 .../log4j/core/config/LoggersPluginTest.java       |   12 +-
 .../log4j/core/config/MissingRootLoggerTest.java   |   30 +-
 .../log4j/core/config/MockReliabilityStrategy.java |  105 +
 .../core/config/MultipleTriggeringPolicyTest.java  |   84 +
 .../logging/log4j/core/config/PropertyTest.java    |   41 +-
 .../core/config/ReconfigurationDeadlockTest.java   |  210 +-
 .../log4j/core/config/ReliabilityStrategyTest.java |   51 +
 .../log4j/core/config/TestConfigurator.java        |  169 +-
 .../log4j/core/config/TestConfiguratorError.java   |   24 +-
 .../logging/log4j/core/config/XIncludeTest.java    |  139 -
 .../core/config/arbiters/BasicArbiterTest.java     |   63 +
 .../core/config/arbiters/ScriptArbiterTest.java    |   63 +
 .../core/config/arbiters/SelectArbiterTest.java    |   63 +
 .../config/builder/ConfigurationAssemblerTest.java |   28 +-
 .../config/builder/ConfigurationBuilderTest.java   |   16 +-
 .../core/config/plugins/LegacyPluginTest.java      |   31 +-
 .../plugins/util/PluginManagerPackagesTest.java    |   52 +-
 .../validators/RequiredValidatorTest.java          |   12 +-
 .../validators/ValidHostValidatorTest.java         |   24 +-
 .../validators/ValidPortValidatorTest.java         |   12 +-
 .../ValidatingPluginWithFailoverTest.java          |   12 +-
 .../ValidatingPluginWithGenericBuilderTest.java    |   16 +-
 ...ngPluginWithGenericSubclassFoo1BuilderTest.java |   16 +-
 .../ValidatingPluginWithTypedBuilderTest.java      |   16 +-
 .../PropertiesConfigurationRootLoggerOnlyTest.java |   60 -
 .../properties/PropertiesConfigurationTest.java    |   85 +-
 ...rtiesConfigurationTrailingSpaceOnLevelTest.java |   67 -
 .../properties/RollingFilePropertiesTest.java      |   60 -
 .../core/config/xml/XmlConfigurationPropsTest.java |   22 +-
 .../core/config/xml/XmlConfigurationSecurity.java  |   41 +
 .../core/config/xml/XmlConigurationSecurity.java   |   36 -
 .../log4j/core/config/xml/XmlLoggerPropsTest.java  |   72 +-
 .../log4j/core/config/xml/XmlSchemaTest.java       |  140 +
 .../log4j/core/filter/AbstractFilterTest.java      |    4 +-
 .../log4j/core/filter/AbstractFilterableTest.java  |   14 +-
 .../core/filter/AbstractScriptFilterTest.java      |   40 +-
 .../log4j/core/filter/BurstFilterLogDelayTest.java |    8 +-
 .../logging/log4j/core/filter/BurstFilterTest.java |   58 +-
 .../core/filter/DynamicThresholdFilterTest.java    |   66 +-
 .../log4j/core/filter/LevelRangeFilterTest.java    |    7 +-
 .../logging/log4j/core/filter/MapFilterTest.java   |   51 +-
 .../log4j/core/filter/MarkerFilterTest.java        |    7 +-
 .../log4j/core/filter/NoMarkerFilterTest.java      |    5 +-
 .../logging/log4j/core/filter/RegexFilterTest.java |   19 +-
 .../filter/ScriptFileFilterPropertiesTest.java     |   21 +-
 .../log4j/core/filter/ScriptFileFilterTest.java    |   21 +-
 .../log4j/core/filter/ScriptFilterTest.java        |   21 +-
 .../log4j/core/filter/ScriptRefFilterTest.java     |   21 +-
 .../core/filter/StructuredDataFilterTest.java      |   41 +-
 .../core/filter/ThreadContextMapFilterTest.java    |   11 +-
 .../log4j/core/filter/ThresholdFilterTest.java     |    7 +-
 .../logging/log4j/core/filter/TimeFilterTest.java  |   83 +-
 ...taFactoryPropertySetMissingConstructorTest.java |    8 +-
 .../impl/ContextDataFactoryPropertySetTest.java    |    4 +-
 .../log4j/core/impl/ContextDataFactoryTest.java    |    8 +-
 .../core/impl/JdkMapAdapterStringMapTest.java      |  204 +-
 .../log4j/core/impl/Log4jLogEventNanoTimeTest.java |   26 +-
 .../logging/log4j/core/impl/Log4jLogEventTest.java |  108 +-
 .../log4j/core/impl/MutableLogEventTest.java       |  189 +-
 .../NestedLoggingFromThrowableMessageTest.java     |    4 +-
 .../core/impl/NestedLoggingFromToStringTest.java   |    4 +-
 .../core/impl/ReusableLogEventFactoryTest.java     |   42 +-
 .../core/impl/ThreadContextDataInjectorTest.java   |    2 +-
 .../core/impl/ThrowableFormatOptionsTest.java      |   90 +-
 .../log4j/core/impl/ThrowableProxyTest.java        |   55 +-
 .../apache/logging/log4j/core/jmx/ServerTest.java  |    4 +-
 .../core/layout/AbstractStringLayoutTest.java      |   30 +-
 .../ConcurrentLoggingWithGelfLayoutTest.java       |  104 +-
 .../logging/log4j/core/layout/GelfLayout2Test.java |   51 +
 .../logging/log4j/core/layout/GelfLayout3Test.java |  100 +
 .../core/layout/GelfLayoutPatternSelectorTest.java |   82 +
 .../logging/log4j/core/layout/GelfLayoutTest.java  |   82 +-
 .../logging/log4j/core/layout/GelfLayoutTest2.java |   50 -
 .../logging/log4j/core/layout/GelfLayoutTest3.java |   67 -
 .../logging/log4j/core/layout/HtmlLayoutTest.java  |  174 +-
 .../log4j/core/layout/Log4j2_1482_CoreTest.java    |    1 +
 .../log4j/core/layout/Log4j2_1482_Test.java        |   92 -
 .../log4j/core/layout/Log4j2_2195_Test.java        |   45 +-
 .../log4j/core/layout/LogEventFixtures.java        |  114 -
 .../core/layout/PatternLayoutLookupDateTest.java   |   22 +-
 .../layout/PatternLayoutMainMapLookupTest.java     |   41 +-
 .../core/layout/PatternLayoutNoLookupDateTest.java |   23 +-
 .../log4j/core/layout/PatternLayoutRepeatTest.java |   40 +
 .../log4j/core/layout/PatternLayoutTest.java       |   73 +-
 .../log4j/core/layout/PatternSelectorTest.java     |   16 +-
 .../log4j/core/layout/Rfc5424LayoutTest.java       |  100 +-
 .../core/layout/StringBuilderEncoderTest.java      |  118 +-
 .../log4j/core/layout/SyslogLayoutTest.java        |   34 +-
 .../logging/log4j/core/lookup/CaseLookupTest.java  |   12 +-
 .../log4j/core/lookup/ContextMapLookupTest.java    |   40 +-
 .../logging/log4j/core/lookup/DateLookupTest.java  |   11 +-
 .../log4j/core/lookup/EnvironmentLookupTest.java   |    8 +-
 .../logging/log4j/core/lookup/EventLookupTest.java |    7 +-
 .../log4j/core/lookup/InterpolatorTest.java        |    2 +-
 .../logging/log4j/core/lookup/JndiLookupTest.java  |    2 +-
 .../logging/log4j/core/lookup/Log4jLookupTest.java |   28 +-
 .../core/lookup/Log4jLookupWithSpacesTest.java     |   29 +-
 .../lookup/MainInputArgumentsJmxLookupTest.java    |   14 +-
 .../logging/log4j/core/lookup/MainLookupTest.java  |   30 +-
 .../logging/log4j/core/lookup/MapLookupTest.java   |   26 +-
 .../log4j/core/lookup/MarkerLookupConfigTest.java  |   45 +-
 .../log4j/core/lookup/MarkerLookupTest.java        |    7 +-
 .../core/lookup/ResourceBundleLookupTest.java      |   17 +-
 .../log4j/core/lookup/StrSubstitutorTest.java      |   15 +-
 .../core/lookup/StructuredDataLookupTest.java      |    7 +-
 .../core/lookup/SystemPropertiesLookupTest.java    |   15 +-
 .../message/ExtendedThreadInformationTest.java     |    6 +-
 .../MutableLogEventWithReusableParamMsgTest.java   |   75 +
 .../logging/log4j/core/net/PriorityTest.java       |    9 +-
 .../log4j/core/net/SocketMessageLossTest.java      |   26 +-
 .../log4j/core/net/SocketReconnectTest.java        |   30 +-
 .../apache/logging/log4j/core/net/SocketTest.java  |   39 +-
 .../log4j/core/net/mock/MockSyslogServer.java      |   49 -
 .../core/net/mock/MockSyslogServerFactory.java     |   39 -
 .../log4j/core/net/mock/MockTcpSyslogServer.java   |   94 -
 .../log4j/core/net/mock/MockTlsSyslogServer.java   |  154 -
 .../log4j/core/net/mock/MockUdpSyslogServer.java   |   70 -
 .../net/ssl/EnvironmentPasswordProviderTest.java   |    8 +-
 .../core/net/ssl/FilePasswordProviderTest.java     |   13 +-
 .../core/net/ssl/KeyStoreConfigurationTest.java    |   61 +-
 .../ssl/LegacyBsdTlsSyslogInputStreamReader.java   |   61 -
 .../core/net/ssl/MemoryPasswordProviderTest.java   |    6 +-
 .../log4j/core/net/ssl/SslConfigurationTest.java   |   51 +-
 .../log4j/core/net/ssl/StoreConfigurationTest.java |   16 +-
 .../logging/log4j/core/net/ssl/TestConstants.java  |   40 -
 .../core/net/ssl/TlsSyslogInputStreamReader.java   |   91 -
 .../net/ssl/TlsSyslogInputStreamReaderBase.java    |   35 -
 .../log4j/core/net/ssl/TlsSyslogMessageFormat.java |   23 -
 .../log4j/core/net/ssl/TlsSyslogTestUtil.java      |    2 +
 .../core/net/ssl/TrustStoreConfigurationTest.java  |   55 +-
 .../core/parser/AbstractLogEventParserTest.java    |   59 -
 .../log4j/core/pattern/CallerInformationTest.java  |   31 +-
 .../core/pattern/DatePatternConverterTest.java     |    4 +-
 .../log4j/core/pattern/DisableAnsiTest.java        |   30 +-
 .../core/pattern/EncodingPatternConverterTest.java |   29 +-
 .../pattern/EndOfBatchPatternConverterTest.java    |    4 +-
 .../EqualsIgnoreCaseReplacementConverterTest.java  |   10 +-
 .../pattern/EqualsReplacementConverterTest.java    |    9 +-
 .../ExtendedThrowablePatternConverterTest.java     |   28 +-
 .../log4j/core/pattern/ExtendedThrowableTest.java  |   32 +-
 .../log4j/core/pattern/FormattingInfoTest.java     |    4 +-
 .../log4j/core/pattern/HighlightConverterTest.java |   38 +-
 .../core/pattern/LevelPatternConverterTest.java    |    7 +-
 .../core/pattern/LiteralPatternConverterTest.java  |   86 +-
 .../pattern/LoggerFqcnPatternConverterTest.java    |    4 +-
 .../core/pattern/MapPatternConverterTest.java      |   19 +-
 .../core/pattern/MarkerPatternConverterTest.java   |    4 +-
 .../MarkerSimpleNamePatternConverterTest.java      |    6 +-
 .../log4j/core/pattern/MaxLengthConverterTest.java |   16 +-
 .../core/pattern/MdcPatternConverterTest.java      |   30 +-
 .../core/pattern/MessageJansiConverterTest.java    |   34 +-
 .../core/pattern/MessagePatternConverterTest.java  |   52 +-
 .../core/pattern/MessageStyledConverterTest.java   |   34 +-
 .../core/pattern/NanoTimePatternConverterTest.java |    7 +-
 .../core/pattern/NdcPatternConverterTest.java      |   13 +-
 .../log4j/core/pattern/NoConsoleNoAnsiTest.java    |   36 +-
 .../log4j/core/pattern/PatternParserTest.java      |   47 +-
 .../log4j/core/pattern/PatternParserTest2.java     |    7 +-
 .../pattern/ProcessIdPatternConverterTest.java     |    9 +-
 .../pattern/RegexReplacementConverterTest.java     |    8 +-
 .../log4j/core/pattern/RegexReplacementTest.java   |   69 +-
 .../core/pattern/RepeatPatternConverterTest.java   |   51 +
 .../pattern/RootThrowablePatternConverterTest.java |   28 +-
 .../log4j/core/pattern/RootThrowableTest.java      |   38 +-
 .../SequenceNumberPatternConverterTest.java        |   30 +-
 ...quenceNumberPatternConverterZeroPaddedTest.java |   38 +-
 .../log4j/core/pattern/StyleConverterTest.java     |   43 +-
 .../core/pattern/ThreadIdPatternConverterTest.java |    7 +-
 .../pattern/ThreadNamePatternConverterTest.java    |    7 +-
 .../ThreadPriorityPatternConverterTest.java        |    7 +-
 .../pattern/ThrowablePatternConverterTest.java     |   32 +-
 .../logging/log4j/core/pattern/ThrowableTest.java  |   34 +-
 .../VariablesNotEmptyReplacementConverterTest.java |   10 +-
 .../core/selector/BasicContextSelectorTest.java    |   55 +
 .../selector/ClassLoaderContextSelectorTest.java   |    8 +-
 .../logging/log4j/core/time/ClockFactoryTest.java  |   14 +-
 .../log4j/core/time/MutableInstantTest.java        |   85 +-
 .../log4j/core/time/SystemNanoClockTest.java       |    6 +-
 .../core/time/internal/DummyNanoClockTest.java     |    5 +-
 .../log4j/core/time/internal/SystemClockTest.java  |    9 +-
 .../log4j/core/tools/GenerateCustomLoggerTest.java |  110 +-
 .../core/tools/GenerateExtendedLoggerTest.java     |  112 +-
 .../log4j/core/util/ContextDataProviderTest.java   |   27 +-
 .../log4j/core/util/CronExpressionTest.java        |   30 +-
 .../logging/log4j/core/util/CyclicBufferTest.java  |   22 +-
 .../logging/log4j/core/util/FileUtilsTest.java     |   18 +-
 .../apache/logging/log4j/core/util/InitTest.java   |    8 +-
 .../logging/log4j/core/util/IntegersTest.java      |    4 +-
 .../logging/log4j/core/util/JsonUtilsTest.java     |    4 +-
 .../apache/logging/log4j/core/util/LoaderTest.java |   13 +-
 .../logging/log4j/core/util/NetUtilsTest.java      |  123 +-
 .../logging/log4j/core/util/ProcessIdUtilTest.java |    9 +-
 .../apache/logging/log4j/core/util/Profiler.java   |   94 -
 .../core/util/ShutdownCallbackRegistryTest.java    |   29 +-
 .../logging/log4j/core/util/ThrowablesTest.java    |   53 +-
 .../apache/logging/log4j/core/util/UuidTest.java   |   20 +-
 .../logging/log4j/core/util/WatchHttpTest.java     |    6 +-
 .../logging/log4j/core/util/WatchManagerTest.java  |   28 +-
 .../apache/logging/log4j/hamcrest/Descriptors.java |   44 -
 .../logging/log4j/hamcrest/FileMatchers.java       |  163 -
 .../apache/logging/log4j/hamcrest/MapMatchers.java |   62 -
 .../org/apache/logging/log4j/junit/JndiRule.java   |   59 -
 .../logging/log4j/junit/LoggerContextRule.java     |  314 --
 .../apache/logging/log4j/junit/package-info.java   |   22 -
 .../MutableLogEventWithReusableParamMsgTest.java   |   61 -
 .../logging/log4j/test/AvailablePortFinder.java    |  155 -
 .../test/AvailablePortSystemPropertyTestRule.java  |   81 -
 .../apache/logging/log4j/test/ExtendedLevels.java  |   30 -
 .../org/apache/logging/log4j/test/GetLogger.java   |   37 -
 .../logging/log4j/test/RuleChainFactory.java       |   45 -
 .../log4j/test/SomethingThatUsesLogging.java       |   36 -
 .../log4j/test/appender/AlwaysFailAppender.java    |   49 -
 .../log4j/test/appender/BlockingAppender.java      |   65 -
 .../log4j/test/appender/DeadlockAppender.java      |   84 -
 .../log4j/test/appender/EncodingListAppender.java  |   84 -
 .../log4j/test/appender/FailOnceAppender.java      |   66 -
 .../log4j/test/appender/InMemoryAppender.java      |   60 -
 .../logging/log4j/test/appender/ListAppender.java  |  295 --
 .../log4j/test/appender/UsesLoggingAppender.java   |   67 -
 .../logging/log4j/test/layout/BasicLayout.java     |   57 -
 log4j-core/src/test/java9/module-info.java         |   93 +
 .../AsyncAppenderExceptionHandlingTest.xml         |   32 +
 .../{GelfLayoutTest2.xml => GelfLayout2Test.xml}   |    0
 log4j-core/src/test/resources/GelfLayout3Test.xml  |   37 +
 .../resources/GelfLayoutPatternSelectorTest.xml    |   37 +
 log4j-core/src/test/resources/GelfLayoutTest3.xml  |   35 -
 .../MemoryMappedFileAppenderLocationTest.xml       |    4 +-
 .../MemoryMappedFileAppenderRemapTest.xml          |    4 +-
 .../resources/MemoryMappedFileAppenderTest.xml     |    4 +-
 .../src/test/resources/PatternLayoutRepeat.xml     |   29 +
 .../src/test/resources/ReliabilityStrategyTest.xml |   32 +
 .../src/test/resources/__files/onStartup.log       |   19 +-
 .../test/resources/gcFreeMixedSyncAsyncLogging.xml |   98 -
 .../src/test/resources/log4j-comp-logger-root.xml  |    4 +-
 log4j-core/src/test/resources/log4j-filetest.xml   |    6 +-
 .../src/test/resources/log4j-rollOnStartup.xml     |   38 +
 .../test/resources/log4j-rollOnStartupDirect.xml   |   37 +
 .../resources/log4j-rolling-cron-onStartup.xml     |   47 +
 .../test/resources/log4j-rolling-folder-direct.xml |   39 +
 .../test/resources/log4j-rolling-new-directory.xml |   39 +
 .../log4j-rolling-size-time-new-directory.xml      |   42 +
 log4j-core/src/test/resources/log4j-test4.xml      |   36 -
 log4j-core/src/test/resources/log4j2-arbiters.xml  |   41 +
 .../src/test/resources/log4j2-scriptArbiters.xml   |   51 +
 .../src/test/resources/log4j2-selectArbiters.xml   |   43 +
 .../test/resources/reconfiguration-deadlock.xml    |   25 +-
 log4j-couchdb/pom.xml                              |   17 +-
 .../logging/log4j/couchdb/CouchDbProvider.java     |    5 +-
 log4j-csv/pom.xml                                  |   22 +-
 .../CsvJsonParameterLayoutFileAppenderTest.java    |    4 +-
 .../log4j/csv/layout/CsvLogEventLayoutTest.java    |   10 +-
 .../csv/layout/CsvParameterLayoutAllAsyncTest.java |    4 +-
 .../log4j/csv/layout/CsvParameterLayoutTest.java   |   10 +-
 log4j-distribution/pom.xml                         |   25 +-
 log4j-docker/pom.xml                               |   28 +-
 .../apache/logging/log4j/docker/DockerLookup.java  |    2 +
 log4j-flume-ng/pom.xml                             |   24 +-
 .../log4j/flume/appender/FlumeAppender.java        |    2 +-
 .../log4j/flume/appender/FlumeAvroManager.java     |    2 +-
 .../log4j/flume/appender/FlumeEmbeddedManager.java |   16 +-
 .../flume/appender/FlumePersistentManager.java     |    2 +-
 .../log4j/flume/appender/FlumeAppenderTest.java    |    2 +-
 .../flume/appender/FlumeEmbeddedAgentTest.java     |    2 +-
 .../flume/appender/FlumeEmbeddedAppenderTest.java  |    2 +-
 .../appender/FlumePersistentAppenderTest.java      |    2 +-
 .../log4j/flume/appender/FlumePersistentPerf.java  |    2 +-
 log4j-gctests/pom.xml                              |  380 ++
 .../gctests/GcFreeAsynchronousLoggingTest.java     |   49 +
 .../log4j/gctests/GcFreeLoggingTestUtil.java       |  226 ++
 .../gctests/GcFreeMixedSyncAyncLoggingTest.java    |   47 +
 .../gctests/GcFreeSynchronousLoggingTest.java      |   46 +
 .../gctests/JsonTemplateLayoutGcFreeTest.java      |   42 +
 .../resources/gcFreeJsonTemplateLayoutLogging.xml  |   38 +
 .../src/test/resources/gcFreeLogging.xml           |    0
 .../test/resources/gcFreeMixedSyncAsyncLogging.xml |   98 +
 log4j-iostreams/pom.xml                            |   18 +-
 .../logging/log4j/io/AbstractStreamTest.java       |    2 +-
 .../log4j/io/IoBuilderCallerInfoTesting.java       |    4 +-
 .../org/apache/logging/log4j/io/IoBuilderTest.java |    4 +-
 .../log4j/io/LoggerPrintWriterJdbcH2Test.java      |    4 +-
 log4j-jcl/pom.xml                                  |   21 +-
 .../org/apache/logging/log4j/jcl/LogAdapter.java   |    5 +-
 .../logging/log4j/jcl/CallerInformationTest.java   |    4 +-
 .../org/apache/logging/log4j/jcl/LoggerTest.java   |    4 +-
 log4j-jdbc-dbcp2/pom.xml                           |   25 +-
 .../appender/PoolableConnectionFactoryTest.java    |    2 +-
 log4j-jdbc/pom.xml                                 |   30 +-
 .../log4j/jdbc/appender/JdbcDatabaseManager.java   |   13 +-
 .../AbstractJdbcAppenderDataSourceTest.java        |    4 +-
 .../AbstractJdbcAppenderFactoryMethodTest.java     |    2 +-
 .../appender/DataSourceConnectionSourceTest.java   |    5 +-
 .../FactoryMethodConnectionSourceTest.java         |    3 +-
 .../JdbcAppenderColumnMappingLiteralTest.java      |    4 +-
 .../JdbcAppenderColumnMappingPatternTest.java      |    4 +-
 .../JdbcAppenderMapMessageDataSourceTest.java      |    4 +-
 .../JdbcAppenderStringSubstitutionTest.java        |    2 +-
 .../logging/log4j/jdbc/appender/JdbcRule.java      |    2 +-
 log4j-jeromq/pom.xml                               |   22 +-
 .../log4j/jeromq/appender/JeroMqManager.java       |   13 +-
 .../log4j/jeromq/appender/JeroMqAppenderTest.java  |    8 +-
 .../src/test/resources/JeroMqAppenderTest.xml      |    0
 log4j-jms/pom.xml                                  |   27 +-
 .../logging/log4j/jms/appender/JmsManager.java     |    2 +-
 .../log4j/jms/appender/JmsAppenderTest.java        |    8 +-
 .../src/test/resources/JmsAppenderTest.xml         |    0
 log4j-jmx-gui/pom.xml                              |   74 +-
 log4j-jpa/pom.xml                                  |   22 +-
 .../jpa/appender/AbstractJpaAppenderTest.java      |    3 +-
 .../log4j/jpa/appender/JpaH2AppenderTest.java      |    2 +-
 .../log4j/jpa/appender/JpaHsqldbAppenderTest.java  |    3 +-
 .../ContextDataAttributeConverterTest.java         |    3 +-
 .../ContextDataJsonAttributeConverterTest.java     |    3 +-
 .../ContextMapAttributeConverterTest.java          |    3 +-
 .../ContextMapJsonAttributeConverterTest.java      |    3 +-
 .../ContextStackAttributeConverterTest.java        |    3 +-
 .../ContextStackJsonAttributeConverterTest.java    |    5 +-
 .../converter/InstantAttributeConverterTest.java   |    2 +-
 .../converter/MarkerAttributeConverterTest.java    |    3 +-
 .../converter/MessageAttributeConverterTest.java   |    3 +-
 .../StackTraceElementAttributeConverterTest.java   |    3 +-
 .../converter/ThrowableAttributeConverterTest.java |    3 +-
 log4j-jpl/pom.xml                                  |  271 ++
 log4j-jpl/src/main/java/module-info.java           |   21 +
 .../logging/log4j/jpl/Log4jSystemLogger.java       |  136 +
 .../log4j/jpl/Log4jSystemLoggerAdapter.java        |   46 +
 .../logging/log4j/jpl/Log4jSystemLoggerFinder.java |   33 +
 .../services/java.lang.System$LoggerFinder         |    1 +
 log4j-jpl/src/site/markdown/index.md               |   30 +
 log4j-jpl/src/site/site.xml                        |   52 +
 .../logging/log4j/jpl/Log4jSystemLoggerTest.java   |  122 +
 log4j-jpl/src/test/resources/log4j2-test.xml       |   39 +
 log4j-jul/pom.xml                                  |   22 +-
 .../logging/log4j/jul/AbstractLoggerAdapter.java   |    5 +-
 .../org/apache/logging/log4j/jul/ApiLogger.java    |   66 +-
 .../logging/log4j/jul/AbstractLoggerTest.java      |  100 +-
 .../apache/logging/log4j/jul/ApiLoggerTest.java    |    3 +-
 .../logging/log4j/jul/AsyncLoggerThreadsTest.java  |   59 +
 .../jul/BracketInNotInterpolatedMessageTest.java   |    2 +-
 .../logging/log4j/jul/CallerInformationTest.java   |    4 +-
 .../apache/logging/log4j/jul/CoreLoggerTest.java   |    3 +-
 log4j-kafka/pom.xml                                |   22 +-
 .../logging/log4j/kafka/appender/KafkaManager.java |    4 +-
 .../appender/KafkaAppenderCloseTimeoutTest.java    |    6 +-
 .../log4j/kafka/appender/KafkaAppenderTest.java    |    6 +-
 .../KafkaManagerProducerThreadLeakTest.java        |   65 +
 .../kafka/builder/ConfigurationBuilderTest.java    |    2 +-
 log4j-kubernetes/pom.xml                           |   42 +-
 .../logging/log4j/kubernetes/ContainerUtil.java    |   91 +
 .../log4j/kubernetes/KubernetesClientBuilder.java  |   12 +-
 .../logging/log4j/kubernetes/KubernetesLookup.java |  147 +-
 .../log4j/kubernetes/KubernetesLookupTest.java     |   98 +
 .../src/test/resources/clusterPod.json             |  177 +
 log4j-kubernetes/src/test/resources/localPod.json  |  141 +
 log4j-layout-jackson-json/pom.xml                  |   22 +-
 .../log4j/jackson/json/Log4jJsonObjectMapper.java  |    4 +
 .../jackson/json/layout/JsonJacksonFactory.java    |   10 +
 .../log4j/jackson/json/layout/JsonLayout.java      |    8 +-
 .../jackson/json/JacksonIssue429MyNamesTest.java   |    2 +-
 .../log4j/jackson/json/JacksonIssue429Test.java    |    2 +-
 .../log4j/jackson/json/LevelMixInJsonTest.java     |    2 +-
 .../log4j/jackson/json/MarkerMixInJsonTest.java    |    2 +-
 .../json/StackTraceElementJsonMixInTest.java       |    2 +-
 .../ConcurrentLoggingWithJsonLayoutTest.java       |    2 +-
 .../jackson/json/layout/JsonLayoutMillisTest.java  |   74 +
 .../log4j/jackson/json/layout/JsonLayoutTest.java  |   22 +-
 .../json/parser/JsonLogEventParserTest.java        |    2 +-
 .../resources/log4j2-json-layout-timestamp.xml     |   31 +
 log4j-layout-jackson-xml/pom.xml                   |   22 +-
 .../xml/ExtendedStackTraceElementXmlMixIn.java     |   18 +-
 .../jackson/xml/StackTraceElementXmlMixIn.java     |   17 +-
 .../jackson/xml/layout/XmlJacksonFactory.java      |   10 +
 .../log4j/jackson/xml/layout/XmlLayout.java        |    8 +-
 .../log4j/jackson/xml/LevelMixInXmlTest.java       |    2 +-
 .../log4j/jackson/xml/MarkerMixInXmlTest.java      |    2 +-
 .../jackson/xml/StackTraceElementXmlMixInTest.java |    2 +-
 .../layout/ConcurrentLoggingWithXmlLayoutTest.java |    2 +-
 .../log4j/jackson/xml/layout/XmlLayoutTest.java    |   10 +-
 .../jackson/xml/parser/XmlLogEventParserTest.java  |    2 +-
 log4j-layout-jackson-yaml/pom.xml                  |   22 +-
 .../log4j/jackson/yaml/layout/YamlConstants.java   |    1 +
 .../jackson/yaml/layout/YamlJacksonFactory.java    |   10 +
 .../log4j/jackson/yaml/layout/YamlLayout.java      |    8 +-
 .../log4j/jackson/yaml/LevelMixInYamlTest.java     |    2 +-
 .../log4j/jackson/yaml/MarkerMixInYamlTest.java    |    2 +-
 .../yaml/StackTraceElementYamlMixInTest.java       |    2 +-
 .../ConcurrentLoggingWithYamlLayoutTest.java       |    2 +-
 .../log4j/jackson/yaml/layout/YamlLayoutTest.java  |    8 +-
 .../yaml/parser/YamlLogEventParserTest.java        |    2 +-
 log4j-layout-jackson/pom.xml                       |   17 +-
 .../log4j/jackson/AbstractJacksonFactory.java      |   14 +-
 .../log4j/jackson/AbstractJacksonLayout.java       |   17 +
 .../jackson/ExtendedStackTraceElementMixIn.java    |   19 +
 .../logging/log4j/jackson/JsonConstants.java       |    1 +
 .../Log4jStackTraceElementDeserializer.java        |   68 +-
 .../logging/log4j/jackson/LogEventJsonMixIn.java   |    2 +-
 .../jackson/LogEventWithContextListMixIn.java      |    2 +-
 .../log4j/jackson/StackTraceElementConstants.java  |    3 +
 .../log4j/jackson/StackTraceElementMixIn.java      |   12 +
 .../apache/logging/log4j/jackson/XmlConstants.java |    1 +
 .../logging/log4j/jackson/LevelMixInTest.java      |    2 +-
 log4j-layout-template-json/pom.xml                 |  568 +++
 .../layout/template/json/JsonTemplateLayout.java   |  643 ++++
 .../template/json/JsonTemplateLayoutDefaults.java  |  146 +
 .../json/resolver/CaseConverterResolver.java       |  309 ++
 .../resolver/CaseConverterResolverFactory.java     |   34 +
 .../template/json/resolver/EndOfBatchResolver.java |   47 +
 .../json/resolver/EndOfBatchResolverFactory.java   |   50 +
 .../resolver/EventAdditionalFieldInterceptor.java  |   98 +
 .../template/json/resolver/EventResolver.java      |   24 +
 .../json/resolver/EventResolverContext.java        |  292 ++
 .../json/resolver/EventResolverFactories.java      |   39 +
 .../json/resolver/EventResolverFactory.java        |   40 +
 .../json/resolver/EventResolverInterceptor.java    |   37 +
 .../json/resolver/EventResolverInterceptors.java   |   38 +
 .../resolver/EventResolverStringSubstitutor.java   |   51 +
 .../resolver/EventRootObjectKeyInterceptor.java    |   53 +
 .../template/json/resolver/ExceptionResolver.java  |  448 +++
 .../json/resolver/ExceptionResolverFactory.java    |   50 +
 .../json/resolver/ExceptionRootCauseResolver.java  |   51 +
 .../ExceptionRootCauseResolverFactory.java         |   50 +
 .../template/json/resolver/LevelResolver.java      |  175 +
 .../json/resolver/LevelResolverFactory.java        |   49 +
 .../template/json/resolver/LoggerResolver.java     |   93 +
 .../json/resolver/LoggerResolverFactory.java       |   49 +
 .../template/json/resolver/MainMapResolver.java    |   90 +
 .../json/resolver/MainMapResolverFactory.java      |   49 +
 .../layout/template/json/resolver/MapResolver.java |   51 +
 .../template/json/resolver/MapResolverFactory.java |   49 +
 .../template/json/resolver/MarkerResolver.java     |   86 +
 .../json/resolver/MarkerResolverFactory.java       |   49 +
 .../json/resolver/MessageParameterResolver.java    |  215 ++
 .../resolver/MessageParameterResolverFactory.java  |   50 +
 .../template/json/resolver/MessageResolver.java    |  223 ++
 .../json/resolver/MessageResolverFactory.java      |   49 +
 .../template/json/resolver/PatternResolver.java    |   88 +
 .../json/resolver/PatternResolverFactory.java      |   49 +
 .../json/resolver/ReadOnlyStringMapResolver.java   |  386 +++
 .../template/json/resolver/SourceResolver.java     |  153 +
 .../json/resolver/SourceResolverFactory.java       |   49 +
 .../json/resolver/StackTraceElementResolver.java   |   95 +
 .../resolver/StackTraceElementResolverContext.java |  121 +
 .../resolver/StackTraceElementResolverFactory.java |   56 +
 ...StackTraceElementResolverStringSubstitutor.java |   51 +
 .../json/resolver/StackTraceObjectResolver.java    |   57 +
 .../template/json/resolver/StackTraceResolver.java |   22 +
 .../json/resolver/StackTraceStringResolver.java    |  130 +
 .../template/json/resolver/TemplateResolver.java   |   69 +
 .../json/resolver/TemplateResolverConfig.java      |   89 +
 .../json/resolver/TemplateResolverContext.java     |   60 +
 .../json/resolver/TemplateResolverFactories.java   |  130 +
 .../json/resolver/TemplateResolverFactory.java     |   46 +
 .../json/resolver/TemplateResolverInterceptor.java |   56 +
 .../resolver/TemplateResolverInterceptors.java     |  131 +
 .../TemplateResolverStringSubstitutor.java         |   38 +
 .../template/json/resolver/TemplateResolvers.java  |  385 +++
 .../json/resolver/ThreadContextDataResolver.java   |   38 +
 .../resolver/ThreadContextDataResolverFactory.java |   50 +
 .../json/resolver/ThreadContextStackResolver.java  |  107 +
 .../ThreadContextStackResolverFactory.java         |   50 +
 .../template/json/resolver/ThreadResolver.java     |   92 +
 .../json/resolver/ThreadResolverFactory.java       |   49 +
 .../template/json/resolver/TimestampResolver.java  |  500 +++
 .../json/resolver/TimestampResolverFactory.java    |   49 +
 .../layout/template/json/util/DummyRecycler.java   |   37 +
 .../template/json/util/DummyRecyclerFactory.java   |   39 +
 .../layout/template/json/util/JsonReader.java      |  451 +++
 .../layout/template/json/util/JsonWriter.java      |  900 +++++
 .../layout/template/json/util/MapAccessor.java     |  192 ++
 .../template/json/util/QueueingRecycler.java       |   61 +
 .../json/util/QueueingRecyclerFactory.java         |   40 +
 .../log4j/layout/template/json/util/Recycler.java  |   25 +
 .../template/json/util/RecyclerFactories.java      |  199 ++
 .../layout/template/json/util/RecyclerFactory.java |   31 +
 .../json/util/RecyclerFactoryConverter.java        |   34 +
 .../template/json/util/StringParameterParser.java  |  320 ++
 .../template/json/util/ThreadLocalRecycler.java    |   45 +
 .../json/util/ThreadLocalRecyclerFactory.java      |   40 +
 .../json/util/TruncatingBufferedPrintWriter.java   |   92 +
 .../json/util/TruncatingBufferedWriter.java        |  267 ++
 .../log4j/layout/template/json/util/Uris.java      |  140 +
 .../src/main/resources/EcsLayout.json              |   49 +
 .../src/main/resources/GelfLayout.json             |   43 +
 .../src/main/resources/JsonLayout.json             |   83 +
 .../main/resources/LogstashJsonEventLayoutV1.json  |   60 +
 .../main/resources/StackTraceElementLayout.json    |   18 +
 .../src/site/manual/index.md                       |   32 +
 log4j-layout-template-json/src/site/site.xml       |   55 +
 .../json/BlackHoleByteBufferDestination.java       |   50 +
 .../log4j/layout/template/json/EcsLayoutTest.java  |  111 +
 .../log4j/layout/template/json/GelfLayoutTest.java |  120 +
 .../log4j/layout/template/json/JacksonFixture.java |   31 +
 .../log4j/layout/template/json/JsonLayoutTest.java |   87 +
 .../JsonTemplateLayoutAdditionalFieldJsonTest.java |   36 +
 ...emplateLayoutAdditionalFieldPropertiesTest.java |   36 +
 ...onTemplateLayoutAdditionalFieldTestHelpers.java |   69 +
 .../JsonTemplateLayoutAdditionalFieldXmlTest.java  |   36 +
 .../JsonTemplateLayoutAdditionalFieldYamlTest.java |   36 +
 .../JsonTemplateLayoutConcurrentEncodeTest.java    |  205 ++
 .../JsonTemplateLayoutNullEventDelimiterTest.java  |  150 +
 .../template/json/JsonTemplateLayoutTest.java      | 2385 +++++++++++++
 .../layout/template/json/LogEventFixture.java      |  153 +
 .../log4j/layout/template/json/LogstashIT.java     |  517 +++
 .../log4j/layout/template/json/TestHelpers.java    |   75 +
 .../json/resolver/CaseConverterResolverTest.java   |  125 +
 .../json/resolver/TimestampResolverTest.java       |   65 +
 .../layout/template/json/util/JsonReaderTest.java  |  388 +++
 .../layout/template/json/util/JsonWriterTest.java  |  900 +++++
 .../template/json/util/RecyclerFactoriesTest.java  |  139 +
 .../json/util/StringParameterParserTest.java       |  410 +++
 .../json/util/TruncatingBufferedWriterTest.java    |  244 ++
 .../log4j/layout/template/json/util/UrisTest.java  |   63 +
 ...onalFieldEnrichedJsonTemplateLayoutLogging.json |   42 +
 ...eldEnrichedJsonTemplateLayoutLogging.properties |   37 +
 ...ionalFieldEnrichedJsonTemplateLayoutLogging.xml |   34 +
 ...onalFieldEnrichedJsonTemplateLayoutLogging.yaml |   39 +
 ...nullEventDelimitedJsonTemplateLayoutLogging.xml |   38 +
 ...rFactoryCustomizedJsonTemplateLayoutLogging.xml |   30 +
 .../src/test/resources/testJsonTemplateLayout.json |   70 +
 log4j-liquibase/pom.xml                            |   21 +-
 log4j-liquibase/src/site/markdown/index.md         |    2 +-
 .../liquibase/ext/logging/log4j2/LoggingTest.java  |    2 +-
 log4j-mongodb2/pom.xml                             |  195 --
 log4j-mongodb2/revapi.json                         |   23 -
 .../logging/log4j/mongodb2/MongoDbConnection.java  |  103 -
 .../logging/log4j/mongodb2/MongoDbObject.java      |   66 -
 .../logging/log4j/mongodb2/MongoDbProvider.java    |  310 --
 .../logging/log4j/mongodb2/package-info.java       |   20 -
 log4j-mongodb2/src/site/markdown/index.md.vm       |   48 -
 log4j-mongodb2/src/site/site.xml                   |   52 -
 .../log4j/mongodb2/MongoDbAuthFailureTest.java     |   72 -
 .../logging/log4j/mongodb2/MongoDbCappedTest.java  |   72 -
 .../log4j/mongodb2/MongoDbMapMessageTest.java      |   78 -
 .../apache/logging/log4j/mongodb2/MongoDbTest.java |   71 -
 .../logging/log4j/mongodb2/MongoDbTestRule.java    |  184 -
 .../log4j/mongodb2/MongoDbTestTestRuleTest.java    |   71 -
 .../logging/log4j/mongodb2/TestConstants.java      |   24 -
 .../test/resources/log4j2-mongodb-auth-failure.xml |   31 -
 .../src/test/resources/log4j2-mongodb-capped.xml   |   31 -
 .../test/resources/log4j2-mongodb-map-message.xml  |   32 -
 .../src/test/resources/log4j2-mongodb.xml          |   31 -
 log4j-mongodb3/pom.xml                             |   32 +-
 .../apache/logging/log4j/mongodb3/LevelCodec.java  |   47 -
 .../logging/log4j/mongodb3/MongoDb3Connection.java |   98 +
 .../log4j/mongodb3/MongoDb3DocumentObject.java     |   58 +
 .../logging/log4j/mongodb3/MongoDb3LevelCodec.java |   54 +
 .../logging/log4j/mongodb3/MongoDb3Provider.java   |  329 ++
 .../logging/log4j/mongodb3/MongoDbConnection.java  |  113 -
 .../log4j/mongodb3/MongoDbDocumentObject.java      |   58 -
 .../logging/log4j/mongodb3/MongoDbProvider.java    |  325 --
 .../log4j/mongodb3/MongoDb3AuthFailureTest.java    |   72 +
 .../logging/log4j/mongodb3/MongoDb3CappedTest.java |   69 +
 .../log4j/mongodb3/MongoDb3MapMessageTest.java     |   76 +
 .../logging/log4j/mongodb3/MongoDb3Test.java       |   70 +
 .../log4j/mongodb3/MongoDb3TestConstants.java      |   24 +
 .../logging/log4j/mongodb3/MongoDb3TestRule.java   |  192 ++
 .../log4j/mongodb3/MongoDb3TestTestRuleTest.java   |   71 +
 .../log4j/mongodb3/MongoDbAuthFailureTest.java     |   72 -
 .../logging/log4j/mongodb3/MongoDbCappedTest.java  |   69 -
 .../log4j/mongodb3/MongoDbMapMessageTest.java      |   76 -
 .../apache/logging/log4j/mongodb3/MongoDbTest.java |   69 -
 .../logging/log4j/mongodb3/MongoDbTestRule.java    |  192 --
 .../log4j/mongodb3/MongoDbTestTestRuleTest.java    |   71 -
 .../logging/log4j/mongodb3/TestConstants.java      |   24 -
 log4j-mongodb4/pom.xml                             |  203 ++
 .../logging/log4j/mongodb4/MongoDb4Connection.java |  111 +
 .../log4j/mongodb4/MongoDb4DocumentObject.java     |   64 +
 .../logging/log4j/mongodb4/MongoDb4LevelCodec.java |   52 +
 .../logging/log4j/mongodb4/MongoDb4Provider.java   |  132 +
 .../logging/log4j/mongodb4/package-info.java       |   21 +
 log4j-mongodb4/src/site/markdown/index.md.vm       |   48 +
 log4j-mongodb4/src/site/site.xml                   |   52 +
 .../log4j/mongodb4/MongoDb4AuthFailureTest.java    |   72 +
 .../logging/log4j/mongodb4/MongoDb4CappedTest.java |   69 +
 .../log4j/mongodb4/MongoDb4MapMessageTest.java     |   76 +
 .../logging/log4j/mongodb4/MongoDb4Test.java       |   70 +
 .../log4j/mongodb4/MongoDb4TestConstants.java      |   24 +
 .../logging/log4j/mongodb4/MongoDb4TestRule.java   |  186 +
 .../log4j/mongodb4/MongoDb4TestTestRuleTest.java   |   73 +
 .../test/resources/log4j2-mongodb-auth-failure.xml |   31 +
 .../src/test/resources/log4j2-mongodb-capped.xml   |   33 +
 .../test/resources/log4j2-mongodb-map-message.xml  |   31 +
 .../src/test/resources/log4j2-mongodb.xml          |   30 +
 log4j-osgi/pom.xml                                 |   46 +-
 log4j-perf/pom.xml                                 |   63 +-
 .../template/json/JsonTemplateLayoutBenchmark.java |  185 +
 .../json/JsonTemplateLayoutBenchmarkReport.java    |  359 ++
 .../json/JsonTemplateLayoutBenchmarkState.java     |  212 ++
 .../logging/log4j/perf/jmh/ClocksBenchmark.java    |    2 +-
 .../log4j/perf/jmh/LoggerConfigBenchmark.java      |    2 +-
 .../jmh/ParameterizedMessageInliningBenchmark.java |    3 +-
 .../logging/log4j/perf/jmh/StackWalkBenchmark.java |  138 +
 .../log4j/perf/jmh/ThreadLocalVsPoolBenchmark.java |  252 +-
 .../log4j/perf/jmh/TimeFormatBenchmark.java        |    4 +-
 .../logging/log4j/perf/util/StackDriver.java       |   47 +
 log4j-plugins-java9/pom.xml                        |  157 -
 log4j-plugins-java9/src/assembly/java9.xml         |   41 -
 log4j-plugins-java9/src/main/java/module-info.java |   34 -
 .../org/apache/logging/log4j/plugins/Dummy.java    |   24 -
 .../apache/logging/log4j/plugins/bind/Dummy.java   |   24 -
 .../logging/log4j/plugins/convert/Dummy.java       |   24 -
 .../plugins/convert/plugins/Log4jPlugins.java      |   25 -
 .../apache/logging/log4j/plugins/inject/Dummy.java |   24 -
 .../apache/logging/log4j/plugins/name/Dummy.java   |   24 -
 .../log4j/plugins/processor/PluginService.java     |   24 -
 .../apache/logging/log4j/plugins/util/Dummy.java   |   24 -
 .../logging/log4j/plugins/validation/Dummy.java    |   24 -
 .../plugins/validation/constraints/Dummy.java      |   24 -
 .../log4j/plugins/validation/validators/Dummy.java |   24 -
 log4j-plugins/pom.xml                              |  280 +-
 .../org/apache/logging/log4j/plugins/Node.java     |    6 +-
 .../org/apache/logging/log4j/plugins/Plugin.java   |    9 +-
 .../logging/log4j/plugins/PluginAliases.java       |    1 +
 .../logging/log4j/plugins/PluginAttribute.java     |   12 +
 .../log4j/plugins/PluginBuilderAttribute.java      |    2 +
 .../logging/log4j/plugins/PluginElement.java       |    1 +
 .../apache/logging/log4j/plugins/PluginValue.java  |    1 +
 .../log4j/plugins/convert/HexConverter.java        |    2 +-
 .../plugins/convert/TypeConverterRegistry.java     |   59 +-
 .../log4j/plugins/convert/TypeConverters.java      |    1 +
 .../plugins/inject/PluginAttributeInjector.java    |    2 +-
 .../inject/PluginBuilderAttributeInjector.java     |    2 +-
 .../log4j/plugins/internal/util/BeanUtils.java     |   37 +
 .../plugins/name/AnnotatedElementNameProvider.java |    6 +-
 .../log4j/plugins/processor/PluginProcessor.java   |    8 +-
 .../log4j/plugins/processor/package-info.java      |    2 +-
 .../apache/logging/log4j/plugins/util/Builder.java |    1 -
 .../logging/log4j/plugins/util/PluginRegistry.java |   19 +
 .../logging/log4j/plugins/util/PluginType.java     |    9 +
 .../logging/log4j/plugins/util/PluginUtil.java     |   96 +
 .../logging/log4j/plugins/util/package-info.java   |    2 +-
 .../log4j/plugins/validation/Constraint.java       |    1 +
 .../plugins/validation/constraints/Required.java   |    1 +
 .../plugins/validation/constraints/ValidHost.java  |    1 +
 .../plugins/validation/constraints/ValidPort.java  |    1 +
 log4j-plugins/src/main/java9/module-info.java      |   37 +
 .../AbstractPluginWithGenericBuilder.java          |   59 +
 .../log4j/plugins/test/validation/HostAndPort.java |   53 +
 .../PluginWithGenericSubclassFoo1Builder.java      |   66 +
 .../plugins/test/validation/ValidatingPlugin.java  |   69 +
 .../ValidatingPluginWithGenericBuilder.java        |   68 +
 .../ValidatingPluginWithTypedBuilder.java          |   69 +
 log4j-plugins/src/test/java-test9/module-info.java |    8 +
 .../plugins/convert/TypeConverterRegistryTest.java |   82 +-
 .../plugins/processor/PluginProcessorTest.java     |    4 -
 .../util/ResolverUtilCustomProtocolTest.java       |    4 +-
 .../log4j/plugins/util/ResolverUtilTest.java       |    5 +-
 .../AbstractPluginWithGenericBuilder.java          |   59 -
 .../log4j/plugins/validation/HostAndPort.java      |   53 -
 .../PluginWithGenericSubclassFoo1Builder.java      |   66 -
 .../log4j/plugins/validation/ValidatingPlugin.java |   69 -
 .../ValidatingPluginWithGenericBuilder.java        |   68 -
 .../ValidatingPluginWithTypedBuilder.java          |   69 -
 log4j-plugins/src/test/java9/module-info.java      |   18 +
 log4j-redis/pom.xml                                |  179 +
 .../appender/LoggingRedisPoolConfiguration.java    |  148 +
 .../log4j/redis/appender/RedisAppender.java        |  255 ++
 .../logging/log4j/redis/appender/RedisManager.java |  123 +
 log4j-redis/src/site/manual/index.md               |   29 +
 log4j-redis/src/site/site.xml                      |   52 +
 .../log4j/redis/appender/RedisAppenderTest.java    |  192 ++
 .../log4j/redis/appender/RedisManagerTest.java     |  111 +
 log4j-samples/log4j-samples-configuration/pom.xml  |    1 +
 log4j-samples/log4j-samples-flume-common/pom.xml   |    1 +
 .../log4j/samples/app/LoggingController.java       |    2 +-
 log4j-samples/log4j-samples-flume-embedded/pom.xml |    9 +-
 log4j-samples/log4j-samples-flume-remote/pom.xml   |    9 +-
 .../log4j-samples-loggerProperties/pom.xml         |    1 +
 log4j-samples/pom.xml                              |    3 +-
 log4j-slf4j-impl/pom.xml                           |   24 +-
 .../apache/logging/slf4j/Log4jLoggerFactory.java   |    8 +-
 .../org/apache/logging/slf4j/Log4jMDCAdapter.java  |    4 +-
 .../logging/slf4j/CallerInformationTest.java       |    4 +-
 .../logging/slf4j/Log4j2_1482_Slf4jTest.java       |    2 +-
 .../java/org/apache/logging/slf4j/LoggerTest.java  |    4 +-
 .../org/apache/logging/slf4j/OptionalTest.java     |    4 +-
 .../org/apache/logging/slf4j/SerializeTest.java    |    4 +-
 log4j-slf4j18-impl/pom.xml                         |   24 +-
 .../apache/logging/slf4j/Log4jLoggerFactory.java   |    8 +-
 .../org/apache/logging/slf4j/Log4jMDCAdapter.java  |    4 +-
 .../logging/slf4j/CallerInformationTest.java       |    4 +-
 .../logging/slf4j/Log4j2_1482_Slf4jTest.java       |    2 +-
 .../java/org/apache/logging/slf4j/LoggerTest.java  |    4 +-
 .../org/apache/logging/slf4j/SerializeTest.java    |    4 +-
 log4j-smtp/pom.xml                                 |   22 +-
 .../logging/log4j/smtp/appender/SmtpAppender.java  |  281 +-
 .../logging/log4j/smtp/appender/SmtpManager.java   |   58 +-
 .../log4j/smtp/appender/SmtpAppenderAsyncTest.java |    4 +-
 .../log4j/smtp/appender/SmtpAppenderTest.java      |   25 +-
 log4j-spring-boot/pom.xml                          |  223 ++
 .../boot/Log4j2CloudConfigLoggingSystem.java       |  216 ++
 .../log4j/spring/boot/SpringEnvironmentHolder.java |   50 +
 .../logging/log4j/spring/boot/SpringLookup.java    |  135 +
 .../log4j/spring/boot/SpringProfileArbiter.java    |   97 +
 .../log4j/spring/boot/SpringPropertySource.java    |   54 +
 .../org.apache.logging.log4j.util.PropertySource   |   15 +
 .../src/main/resources/log4j2.system.properties    |   17 +
 log4j-spring-boot/src/site/markdown/index.md       |   60 +
 log4j-spring-boot/src/site/site.xml                |   52 +
 .../boot/Log4j2CloudConfigLoggingSystemTest.java   |   41 +
 .../log4j/spring/boot/SpringLookupTest.java        |   60 +
 .../log4j/spring/boot/SpringProfileTest.java       |   69 +
 .../src/test/resources/log4j2-springProfile.xml    |   41 +
 .../log4j-spring-cloud-config-client/pom.xml       |   38 +-
 .../client/Log4j2CloudConfigLoggingSystem.java     |  146 -
 .../cloud/config/client/Log4j2EventListener.java   |   21 +-
 .../config/client/SpringEnvironmentHolder.java     |   48 -
 .../spring/cloud/config/client/SpringLookup.java   |   47 -
 .../cloud/config/client/SpringPropertySource.java  |   54 -
 .../src/main/resources/META-INF/spring.factories   |   18 +-
 .../src/main/resources/log4j2.system.properties    |    1 -
 .../src/site/markdown/index.md                     |   12 +
 .../config/client/Log4j2EventListenerTest.java     |  114 +
 .../cloud/config/client/SpringConfiguration.java   |   26 +
 .../src/test/resources/log4j2-console.xml          |   31 +
 .../README.md                                      |    6 +-
 .../docker/app-compose.yml                         |    2 +-
 .../docker/combined-compose.yml                    |   86 +
 .../docker/restartApp.sh                           |    4 +-
 .../k8s/sampleapp-deployment.yaml                  |   33 +-
 .../pom.xml                                        |   52 +-
 .../cloud/config/sample/config/WebMvcConfig.java   |    4 +-
 .../config/sample/controller/K8SController.java    |   71 +
 .../config/sample/controller/SampleController.java |    8 +
 .../src/main/resources/EnhancedGelf.json           |   40 +
 .../src/main/resources/application.yml             |    2 +-
 .../pom.xml                                        |   49 +-
 .../src/main/config-repo/log4j2.xml                |   28 +-
 .../log4j-spring-cloud-config-samples/pom.xml      |   10 +-
 log4j-spring-cloud-config/pom.xml                  |   11 +-
 log4j-taglib/pom.xml                               |   29 +-
 .../logging/log4j/taglib/CatchingTagTest.java      |    4 +-
 .../apache/logging/log4j/taglib/EnterTagTest.java  |    4 +-
 .../apache/logging/log4j/taglib/ExitTagTest.java   |    4 +-
 .../logging/log4j/taglib/IfEnabledTagTest.java     |    2 +-
 .../log4j/taglib/LoggingMessageTagSupportTest.java |    4 +-
 log4j-to-slf4j/pom.xml                             |   18 +-
 .../org/apache/logging/slf4j/MDCContextMap.java    |    6 +-
 .../logging/slf4j/SLF4JLoggerContextFactory.java   |    6 +
 .../java/org/apache/logging/slf4j/LoggerTest.java  |   41 +-
 log4j-web/pom.xml                                  |   28 +-
 .../web/Log4jServletContainerInitializer.java      |    5 +-
 .../log4j/web/Log4jServletContextListener.java     |   27 +-
 .../Log4jShutdownOnContextDestroyedListener.java   |   80 +
 .../logging/log4j/web/Log4jWebInitializerImpl.java |    9 +-
 .../apache/logging/log4j/web/Log4jWebSupport.java  |    7 +
 .../logging/log4j/web/WebLoggerContextUtils.java   |   20 +-
 .../org/apache/logging/log4j/web/WebLookup.java    |   15 +
 .../web/Log4jServletContainerInitializerTest.java  |   60 +-
 .../log4j/web/Log4jServletContextListenerTest.java |   58 +-
 .../logging/log4j/web/Log4jServletFilterTest.java  |   23 +-
 ...og4jShutdownOnContextDestroyedListenerTest.java |   83 +
 .../log4j/web/Log4jWebInitializerImplTest.java     |  168 +-
 .../org/apache/logging/log4j/web/PropertyTest.java |   10 +-
 .../logging/log4j/web/ServletAppenderTest.java     |   12 +-
 .../apache/logging/log4j/web/WebLookupTest.java    |   43 +-
 log4j-web/src/test/resources/log4j2-combined.xml   |   31 +
 log4j-web/src/test/resources/log4j2-override.xml   |   23 +
 mvnw                                               |  156 +-
 mvnw.cmd                                           |   54 +-
 pom.xml                                            | 3625 ++++++++++----------
 src/changes/changes.xml                            |  471 ++-
 src/site/asciidoc/articles.adoc                    |   24 +
 src/site/asciidoc/download.adoc                    |   31 +-
 src/site/asciidoc/javadoc.adoc                     |    6 +-
 src/site/asciidoc/manual/appenders.adoc            |  203 +-
 src/site/asciidoc/manual/async.adoc                |   46 +-
 src/site/asciidoc/manual/configuration.adoc        |  261 +-
 src/site/asciidoc/manual/customconfig.adoc         |    6 +-
 src/site/asciidoc/manual/extending.adoc            |   69 +-
 src/site/asciidoc/manual/garbagefree.adoc          |    7 +
 .../asciidoc/manual/json-template-layout.adoc.vm   | 1843 ++++++++++
 src/site/asciidoc/manual/layouts.adoc              |  196 +-
 src/site/asciidoc/manual/lookups.adoc              |   21 +-
 src/site/asciidoc/manual/messages.adoc             |    4 +-
 src/site/asciidoc/manual/plugins.adoc              |    7 +-
 src/site/asciidoc/manual/webapp.adoc               |   13 +-
 src/site/asciidoc/runtime-dependencies.adoc        |    5 +-
 src/site/asciidoc/security.adoc                    |  137 +
 src/site/markdown/manual/cloud.md                  |  226 +-
 src/site/resources/images/kibana.png               |  Bin 0 -> 1823540 bytes
 src/site/site.xml                                  |   10 +-
 toolchains-docker.xml                              |   17 +-
 toolchains-jenkins-ibm.xml                         |   63 -
 toolchains-jenkins-ubuntu.xml                      |   71 -
 toolchains-jenkins-win.xml                         |   62 -
 toolchains-sample-linux.xml                        |   18 +-
 toolchains-sample-mac.xml                          |   20 +-
 toolchains-sample-win.xml                          |   20 +-
 1595 files changed, 55723 insertions(+), 39170 deletions(-)

[logging-log4j2] 06/06: Move DI SPI to log4j-core

Posted by ma...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

mattsicker pushed a commit to branch mean-bean-machine
in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git

commit c83c9a1cc810a46e7ab896489806e41f034e37c5
Author: Matt Sicker <bo...@gmail.com>
AuthorDate: Sun Jun 6 17:47:18 2021 -0500

    Move DI SPI to log4j-core
---
 .../core/config/di}/AmbiguousBeanException.java    |  4 +-
 .../log4j/core/config/di}/DefinitionException.java |  2 +-
 .../core/config/di}/IllegalProductException.java   |  2 +-
 .../core/config/di}/InitializationException.java   |  2 +-
 .../log4j/core/config/di}/InjectionException.java  |  2 +-
 .../log4j/core/config/di}/ResolutionException.java |  2 +-
 .../core/config/di}/UnsatisfiedBeanException.java  |  4 +-
 .../log4j/core/config/di}/ValidationException.java |  2 +-
 .../log4j/core/config/di/api}/bean/Bean.java       |  8 ++--
 .../core/config/di/api}/bean/BeanManager.java      | 14 +++---
 .../config/di/api}/bean/InitializationContext.java |  2 +-
 .../core/config/di/api}/bean/InjectionTarget.java  |  2 +-
 .../di/api}/bean/InjectionTargetFactory.java       |  2 +-
 .../log4j/core/config/di/api}/bean/Injector.java   | 10 ++---
 .../log4j/core/config/di/api}/bean/Producer.java   |  4 +-
 .../core/config/di/api}/bean/ProducerFactory.java  |  2 +-
 .../core/config/di/api}/bean/ProviderFactory.java  |  2 +-
 .../core/config/di/api}/bean/ScopeContext.java     |  2 +-
 .../core/config/di/api}/model/ElementManager.java  |  4 +-
 .../core/config/di/api}/model/InjectionPoint.java  |  4 +-
 .../core/config/di/api}/model/MetaAnnotation.java  |  2 +-
 .../di/api}/model/MetaAnnotationElement.java       |  2 +-
 .../log4j/core/config/di/api}/model/MetaClass.java |  2 +-
 .../core/config/di/api}/model/MetaConstructor.java |  2 +-
 .../core/config/di/api}/model/MetaElement.java     |  2 +-
 .../core/config/di/api}/model/MetaExecutable.java  |  2 +-
 .../log4j/core/config/di/api}/model/MetaField.java |  2 +-
 .../core/config/di/api}/model/MetaMember.java      |  2 +-
 .../core/config/di/api}/model/MetaMethod.java      |  2 +-
 .../core/config/di/api}/model/MetaParameter.java   |  2 +-
 .../core/config/di/api}/model/Qualifiers.java      |  2 +-
 .../log4j/core/config/di/api}/model/Variable.java  |  2 +-
 .../core/config/di/impl}/bean/AbstractBean.java    | 10 ++---
 .../config/di/impl}/bean/AbstractProducer.java     | 16 +++----
 .../di/impl}/bean/AbstractProducerFactory.java     | 12 ++---
 .../config/di/impl}/bean/DefaultBeanManager.java   | 52 +++++++++++-----------
 .../impl}/bean/DefaultInitializationContext.java   |  6 +--
 .../di/impl}/bean/DefaultInjectionTarget.java      | 20 ++++-----
 .../impl}/bean/DefaultInjectionTargetFactory.java  | 24 +++++-----
 .../core/config/di/impl}/bean/DefaultInjector.java | 18 ++++----
 .../config/di/impl}/bean/DefaultScopeContext.java  |  8 ++--
 .../di/impl}/bean/DependentScopeContext.java       |  8 ++--
 .../core/config/di/impl}/bean/FieldProducer.java   | 16 +++----
 .../config/di/impl}/bean/FieldProducerFactory.java | 14 +++---
 .../config/di/impl}/bean/InjectionTargetBean.java  | 16 +++----
 .../core/config/di/impl}/bean/MethodProducer.java  | 16 +++----
 .../di/impl}/bean/MethodProducerFactory.java       | 12 ++---
 .../core/config/di/impl}/bean/OptionalBean.java    | 12 ++---
 .../core/config/di/impl}/bean/ProducerBean.java    | 16 +++----
 .../core/config/di/impl}/bean/ProvidedBean.java    |  8 ++--
 .../core/config/di/impl}/bean/ProviderBean.java    |  8 ++--
 .../core/config/di/impl}/bean/SystemBean.java      | 14 +++---
 .../di/impl}/model/AbstractMetaExecutable.java     |  8 ++--
 .../config/di/impl}/model/AbstractMetaMember.java  |  8 ++--
 .../di/impl}/model/DefaultElementManager.java      | 28 ++++++------
 .../di/impl}/model/DefaultInjectionPoint.java      | 12 ++---
 .../di/impl}/model/DefaultMetaAnnotation.java      |  8 ++--
 .../impl}/model/DefaultMetaAnnotationElement.java  |  6 +--
 .../config/di/impl}/model/DefaultMetaClass.java    | 12 ++---
 .../di/impl}/model/DefaultMetaConstructor.java     |  8 ++--
 .../config/di/impl}/model/DefaultMetaField.java    |  8 ++--
 .../config/di/impl}/model/DefaultMetaMethod.java   |  8 ++--
 .../di/impl}/model/DefaultMetaParameter.java       |  8 ++--
 .../config/di/impl}/model/DefaultVariable.java     |  6 +--
 log4j-core/src/main/java9/module-info.java         |  5 +++
 .../log4j/core/test/junit}/BeanJUnit4Runner.java   | 30 ++++++-------
 .../logging/log4j/core/test/junit}/WithBeans.java  |  2 +-
 .../di/impl}/bean/DefaultBeanManagerTest.java      |  6 +--
 log4j-core/src/test/java9/module-info.java         |  1 +
 69 files changed, 289 insertions(+), 281 deletions(-)

diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/AmbiguousBeanException.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/AmbiguousBeanException.java
similarity index 90%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/AmbiguousBeanException.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/AmbiguousBeanException.java
index 1342920..55cab85 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/AmbiguousBeanException.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/AmbiguousBeanException.java
@@ -15,9 +15,9 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi;
+package org.apache.logging.log4j.core.config.di;
 
-import org.apache.logging.log4j.plugins.spi.bean.Bean;
+import org.apache.logging.log4j.core.config.di.api.bean.Bean;
 
 import java.util.Collection;
 
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/DefinitionException.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/DefinitionException.java
similarity index 95%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/DefinitionException.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/DefinitionException.java
index 3376a92..38b50ac 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/DefinitionException.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/DefinitionException.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi;
+package org.apache.logging.log4j.core.config.di;
 
 public class DefinitionException extends InjectionException {
     public DefinitionException(final String message) {
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/IllegalProductException.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/IllegalProductException.java
similarity index 95%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/IllegalProductException.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/IllegalProductException.java
index 5a12068..b054754 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/IllegalProductException.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/IllegalProductException.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi;
+package org.apache.logging.log4j.core.config.di;
 
 public class IllegalProductException extends InjectionException {
     public IllegalProductException(final String message) {
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/InitializationException.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/InitializationException.java
similarity index 95%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/InitializationException.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/InitializationException.java
index d547f8d..77aa66c 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/InitializationException.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/InitializationException.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi;
+package org.apache.logging.log4j.core.config.di;
 
 public class InitializationException extends InjectionException {
     public InitializationException(final String message, final Throwable cause) {
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/InjectionException.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/InjectionException.java
similarity index 95%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/InjectionException.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/InjectionException.java
index 1b7475f..c61f48d 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/InjectionException.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/InjectionException.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi;
+package org.apache.logging.log4j.core.config.di;
 
 public class InjectionException extends RuntimeException {
     protected InjectionException(final String message) {
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/ResolutionException.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/ResolutionException.java
similarity index 95%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/ResolutionException.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/ResolutionException.java
index 1158d23..b52c0a4 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/ResolutionException.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/ResolutionException.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi;
+package org.apache.logging.log4j.core.config.di;
 
 public class ResolutionException extends InjectionException {
     public ResolutionException(final String message) {
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/UnsatisfiedBeanException.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/UnsatisfiedBeanException.java
similarity index 90%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/UnsatisfiedBeanException.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/UnsatisfiedBeanException.java
index 2fc2dff..12f6ab3 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/UnsatisfiedBeanException.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/UnsatisfiedBeanException.java
@@ -15,9 +15,9 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi;
+package org.apache.logging.log4j.core.config.di;
 
-import org.apache.logging.log4j.plugins.spi.model.InjectionPoint;
+import org.apache.logging.log4j.core.config.di.api.model.InjectionPoint;
 
 import java.lang.reflect.Type;
 
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/ValidationException.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/ValidationException.java
similarity index 95%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/ValidationException.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/ValidationException.java
index 1498d1f..d0fe1a0 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/ValidationException.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/ValidationException.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi;
+package org.apache.logging.log4j.core.config.di;
 
 import java.util.List;
 
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/Bean.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/Bean.java
similarity index 87%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/Bean.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/Bean.java
index 4950ac8..b942e1c 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/Bean.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/Bean.java
@@ -15,11 +15,11 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi.bean;
+package org.apache.logging.log4j.core.config.di.api.bean;
 
-import org.apache.logging.log4j.plugins.spi.model.InjectionPoint;
-import org.apache.logging.log4j.plugins.spi.model.MetaClass;
-import org.apache.logging.log4j.plugins.spi.model.Variable;
+import org.apache.logging.log4j.core.config.di.api.model.InjectionPoint;
+import org.apache.logging.log4j.core.config.di.api.model.MetaClass;
+import org.apache.logging.log4j.core.config.di.api.model.Variable;
 
 import java.util.Collection;
 
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/BeanManager.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/BeanManager.java
similarity index 87%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/BeanManager.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/BeanManager.java
index 47731ae..c448a1d 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/BeanManager.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/BeanManager.java
@@ -15,11 +15,13 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi.bean;
+package org.apache.logging.log4j.core.config.di.api.bean;
 
-import org.apache.logging.log4j.plugins.spi.ValidationException;
-import org.apache.logging.log4j.plugins.spi.model.InjectionPoint;
-import org.apache.logging.log4j.plugins.spi.model.Qualifiers;
+import org.apache.logging.log4j.core.config.di.DefinitionException;
+import org.apache.logging.log4j.core.config.di.UnsatisfiedBeanException;
+import org.apache.logging.log4j.core.config.di.ValidationException;
+import org.apache.logging.log4j.core.config.di.api.model.InjectionPoint;
+import org.apache.logging.log4j.core.config.di.api.model.Qualifiers;
 
 import java.lang.reflect.Type;
 import java.util.Arrays;
@@ -64,8 +66,8 @@ public interface BeanManager extends AutoCloseable {
      * Validates the given injection point.
      *
      * @param point injection point to validate
-     * @throws org.apache.logging.log4j.plugins.spi.DefinitionException      if the injection point is improperly defined
-     * @throws org.apache.logging.log4j.plugins.spi.UnsatisfiedBeanException if no beans can satisfy the injection point
+     * @throws DefinitionException      if the injection point is improperly defined
+     * @throws UnsatisfiedBeanException if no beans can satisfy the injection point
      */
     void validateInjectionPoint(InjectionPoint point);
 
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/InitializationContext.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/InitializationContext.java
similarity index 97%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/InitializationContext.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/InitializationContext.java
index aae4dda..d1bc90e 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/InitializationContext.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/InitializationContext.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi.bean;
+package org.apache.logging.log4j.core.config.di.api.bean;
 
 import java.util.Optional;
 
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/InjectionTarget.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/InjectionTarget.java
similarity index 95%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/InjectionTarget.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/InjectionTarget.java
index 409d1d3..7faae9a 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/InjectionTarget.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/InjectionTarget.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi.bean;
+package org.apache.logging.log4j.core.config.di.api.bean;
 
 public interface InjectionTarget<T> extends Producer<T> {
     // sets values of injected fields and calls initializer methods
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/InjectionTargetFactory.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/InjectionTargetFactory.java
similarity index 94%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/InjectionTargetFactory.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/InjectionTargetFactory.java
index d5ee0df..512773a 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/InjectionTargetFactory.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/InjectionTargetFactory.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi.bean;
+package org.apache.logging.log4j.core.config.di.api.bean;
 
 public interface InjectionTargetFactory<T> {
     InjectionTarget<T> createInjectionTarget(final Bean<T> bean);
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/Injector.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/Injector.java
similarity index 83%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/Injector.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/Injector.java
index e803790..c56eb68 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/Injector.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/Injector.java
@@ -15,12 +15,12 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi.bean;
+package org.apache.logging.log4j.core.config.di.api.bean;
 
-import org.apache.logging.log4j.plugins.spi.model.InjectionPoint;
-import org.apache.logging.log4j.plugins.spi.model.MetaConstructor;
-import org.apache.logging.log4j.plugins.spi.model.MetaField;
-import org.apache.logging.log4j.plugins.spi.model.MetaMethod;
+import org.apache.logging.log4j.core.config.di.api.model.InjectionPoint;
+import org.apache.logging.log4j.core.config.di.api.model.MetaConstructor;
+import org.apache.logging.log4j.core.config.di.api.model.MetaField;
+import org.apache.logging.log4j.core.config.di.api.model.MetaMethod;
 
 import java.util.Collection;
 
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/Producer.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/Producer.java
similarity index 91%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/Producer.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/Producer.java
index b598f46..cc0ca49 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/Producer.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/Producer.java
@@ -15,9 +15,9 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi.bean;
+package org.apache.logging.log4j.core.config.di.api.bean;
 
-import org.apache.logging.log4j.plugins.spi.model.InjectionPoint;
+import org.apache.logging.log4j.core.config.di.api.model.InjectionPoint;
 
 import java.util.Collection;
 
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/ProducerFactory.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/ProducerFactory.java
similarity index 94%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/ProducerFactory.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/ProducerFactory.java
index 29e0684..2051102 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/ProducerFactory.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/ProducerFactory.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi.bean;
+package org.apache.logging.log4j.core.config.di.api.bean;
 
 public interface ProducerFactory {
     // only time bean is null is static @Produces potentially?
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/ProviderFactory.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/ProviderFactory.java
similarity index 94%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/ProviderFactory.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/ProviderFactory.java
index 487ffe7..11bc2f4 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/ProviderFactory.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/ProviderFactory.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi.bean;
+package org.apache.logging.log4j.core.config.di.api.bean;
 
 import org.apache.logging.log4j.plugins.api.Provider;
 
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/ScopeContext.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/ScopeContext.java
similarity index 97%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/ScopeContext.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/ScopeContext.java
index ac154ae..4e12f4f 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/bean/ScopeContext.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/bean/ScopeContext.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi.bean;
+package org.apache.logging.log4j.core.config.di.api.bean;
 
 import org.apache.logging.log4j.plugins.api.ScopeType;
 
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/ElementManager.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/ElementManager.java
similarity index 98%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/ElementManager.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/ElementManager.java
index 5c98901..5744396 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/ElementManager.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/ElementManager.java
@@ -15,14 +15,14 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi.model;
+package org.apache.logging.log4j.core.config.di.api.model;
 
 import org.apache.logging.log4j.plugins.api.Default;
 import org.apache.logging.log4j.plugins.api.Inject;
 import org.apache.logging.log4j.plugins.api.Named;
 import org.apache.logging.log4j.plugins.api.Produces;
 import org.apache.logging.log4j.plugins.api.QualifierType;
-import org.apache.logging.log4j.plugins.spi.bean.Bean;
+import org.apache.logging.log4j.core.config.di.api.bean.Bean;
 
 import java.lang.annotation.Annotation;
 import java.util.Collection;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/InjectionPoint.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/InjectionPoint.java
similarity index 93%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/InjectionPoint.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/InjectionPoint.java
index 05e09db..fa2d2f7 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/InjectionPoint.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/InjectionPoint.java
@@ -15,9 +15,9 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi.model;
+package org.apache.logging.log4j.core.config.di.api.model;
 
-import org.apache.logging.log4j.plugins.spi.bean.Bean;
+import org.apache.logging.log4j.core.config.di.api.bean.Bean;
 
 import java.lang.reflect.Type;
 import java.util.Optional;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaAnnotation.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaAnnotation.java
similarity index 94%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaAnnotation.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaAnnotation.java
index 0038f7d..a2627ed 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaAnnotation.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaAnnotation.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi.model;
+package org.apache.logging.log4j.core.config.di.api.model;
 
 import java.lang.annotation.Annotation;
 import java.util.Collection;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaAnnotationElement.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaAnnotationElement.java
similarity index 94%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaAnnotationElement.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaAnnotationElement.java
index 460d6b8..7d7af1e 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaAnnotationElement.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaAnnotationElement.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi.model;
+package org.apache.logging.log4j.core.config.di.api.model;
 
 public interface MetaAnnotationElement<T> extends MetaElement {
     T getValue();
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaClass.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaClass.java
similarity index 96%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaClass.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaClass.java
index 7d3b4d9..0ed3261 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaClass.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaClass.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi.model;
+package org.apache.logging.log4j.core.config.di.api.model;
 
 import java.lang.reflect.Constructor;
 import java.lang.reflect.Field;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaConstructor.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaConstructor.java
similarity index 93%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaConstructor.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaConstructor.java
index 4402259..f49ef3e 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaConstructor.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaConstructor.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi.model;
+package org.apache.logging.log4j.core.config.di.api.model;
 
 public interface MetaConstructor<T> extends MetaExecutable<T> {
     T construct(final Object... args);
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaElement.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaElement.java
similarity index 97%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaElement.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaElement.java
index 4ebe48c..6d2e726 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaElement.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaElement.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi.model;
+package org.apache.logging.log4j.core.config.di.api.model;
 
 import org.apache.logging.log4j.plugins.api.AnnotationAlias;
 import org.apache.logging.log4j.plugins.util.TypeUtil;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaExecutable.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaExecutable.java
similarity index 94%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaExecutable.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaExecutable.java
index 049cf21..650ffb6 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaExecutable.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaExecutable.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi.model;
+package org.apache.logging.log4j.core.config.di.api.model;
 
 import java.util.List;
 
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaField.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaField.java
similarity index 94%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaField.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaField.java
index a406a96..905d34a 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaField.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaField.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi.model;
+package org.apache.logging.log4j.core.config.di.api.model;
 
 public interface MetaField<D, T> extends MetaMember<D> {
     T get(final D target);
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaMember.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaMember.java
similarity index 93%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaMember.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaMember.java
index 4fc34a4..2170c81 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaMember.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaMember.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi.model;
+package org.apache.logging.log4j.core.config.di.api.model;
 
 public interface MetaMember<D> extends MetaElement {
     MetaClass<D> getDeclaringClass();
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaMethod.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaMethod.java
similarity index 93%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaMethod.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaMethod.java
index 7e79f89..c0c3c88 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaMethod.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaMethod.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi.model;
+package org.apache.logging.log4j.core.config.di.api.model;
 
 public interface MetaMethod<D, T> extends MetaExecutable<D> {
     T invoke(final D target, final Object... args);
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaParameter.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaParameter.java
similarity index 93%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaParameter.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaParameter.java
index 9ceaef0..7ad8223 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/MetaParameter.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/MetaParameter.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi.model;
+package org.apache.logging.log4j.core.config.di.api.model;
 
 public interface MetaParameter extends MetaElement {
 }
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/Qualifiers.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/Qualifiers.java
similarity index 98%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/Qualifiers.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/Qualifiers.java
index 4a3674c..8010540 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/Qualifiers.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/Qualifiers.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi.model;
+package org.apache.logging.log4j.core.config.di.api.model;
 
 import org.apache.logging.log4j.plugins.api.Default;
 import org.apache.logging.log4j.util.StringBuilders;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/Variable.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/Variable.java
similarity index 96%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/Variable.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/Variable.java
index 789c886..40eb33a 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/spi/model/Variable.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/api/model/Variable.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.spi.model;
+package org.apache.logging.log4j.core.config.di.api.model;
 
 import org.apache.logging.log4j.plugins.api.DependentScoped;
 import org.apache.logging.log4j.plugins.util.TypeUtil;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/AbstractBean.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/AbstractBean.java
similarity index 86%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/AbstractBean.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/AbstractBean.java
index 74f75c7..57554ed 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/AbstractBean.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/AbstractBean.java
@@ -15,12 +15,12 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.bean;
+package org.apache.logging.log4j.core.config.di.impl.bean;
 
-import org.apache.logging.log4j.plugins.spi.bean.Bean;
-import org.apache.logging.log4j.plugins.spi.model.MetaClass;
-import org.apache.logging.log4j.plugins.spi.model.Qualifiers;
-import org.apache.logging.log4j.plugins.spi.model.Variable;
+import org.apache.logging.log4j.core.config.di.api.bean.Bean;
+import org.apache.logging.log4j.core.config.di.api.model.MetaClass;
+import org.apache.logging.log4j.core.config.di.api.model.Qualifiers;
+import org.apache.logging.log4j.core.config.di.api.model.Variable;
 
 import java.lang.annotation.Annotation;
 import java.lang.reflect.Type;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/AbstractProducer.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/AbstractProducer.java
similarity index 83%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/AbstractProducer.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/AbstractProducer.java
index df73dc6..03fe913 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/AbstractProducer.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/AbstractProducer.java
@@ -15,15 +15,15 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.bean;
+package org.apache.logging.log4j.core.config.di.impl.bean;
 
-import org.apache.logging.log4j.plugins.spi.bean.Bean;
-import org.apache.logging.log4j.plugins.spi.bean.BeanManager;
-import org.apache.logging.log4j.plugins.spi.bean.InitializationContext;
-import org.apache.logging.log4j.plugins.spi.bean.Injector;
-import org.apache.logging.log4j.plugins.spi.bean.Producer;
-import org.apache.logging.log4j.plugins.spi.model.InjectionPoint;
-import org.apache.logging.log4j.plugins.spi.model.MetaMethod;
+import org.apache.logging.log4j.core.config.di.api.bean.Bean;
+import org.apache.logging.log4j.core.config.di.api.bean.BeanManager;
+import org.apache.logging.log4j.core.config.di.api.bean.InitializationContext;
+import org.apache.logging.log4j.core.config.di.api.bean.Injector;
+import org.apache.logging.log4j.core.config.di.api.bean.Producer;
+import org.apache.logging.log4j.core.config.di.api.model.InjectionPoint;
+import org.apache.logging.log4j.core.config.di.api.model.MetaMethod;
 
 import java.lang.reflect.Type;
 import java.util.Collection;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/AbstractProducerFactory.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/AbstractProducerFactory.java
similarity index 79%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/AbstractProducerFactory.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/AbstractProducerFactory.java
index 2ded1aa..f993c42 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/AbstractProducerFactory.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/AbstractProducerFactory.java
@@ -15,13 +15,13 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.bean;
+package org.apache.logging.log4j.core.config.di.impl.bean;
 
-import org.apache.logging.log4j.plugins.spi.bean.Bean;
-import org.apache.logging.log4j.plugins.spi.bean.ProducerFactory;
-import org.apache.logging.log4j.plugins.spi.model.InjectionPoint;
-import org.apache.logging.log4j.plugins.spi.model.MetaMember;
-import org.apache.logging.log4j.plugins.spi.model.MetaMethod;
+import org.apache.logging.log4j.core.config.di.api.bean.Bean;
+import org.apache.logging.log4j.core.config.di.api.bean.ProducerFactory;
+import org.apache.logging.log4j.core.config.di.api.model.InjectionPoint;
+import org.apache.logging.log4j.core.config.di.api.model.MetaMember;
+import org.apache.logging.log4j.core.config.di.api.model.MetaMethod;
 
 import java.util.Collection;
 import java.util.Objects;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultBeanManager.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultBeanManager.java
similarity index 91%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultBeanManager.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultBeanManager.java
index 166ddbd..d75ea9d 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultBeanManager.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultBeanManager.java
@@ -15,37 +15,37 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.bean;
-
+package org.apache.logging.log4j.core.config.di.impl.bean;
+
+import org.apache.logging.log4j.core.config.di.AmbiguousBeanException;
+import org.apache.logging.log4j.core.config.di.DefinitionException;
+import org.apache.logging.log4j.core.config.di.InjectionException;
+import org.apache.logging.log4j.core.config.di.ResolutionException;
+import org.apache.logging.log4j.core.config.di.UnsatisfiedBeanException;
+import org.apache.logging.log4j.core.config.di.ValidationException;
+import org.apache.logging.log4j.core.config.di.api.bean.Bean;
+import org.apache.logging.log4j.core.config.di.api.bean.BeanManager;
+import org.apache.logging.log4j.core.config.di.api.bean.InitializationContext;
+import org.apache.logging.log4j.core.config.di.api.bean.InjectionTargetFactory;
+import org.apache.logging.log4j.core.config.di.api.bean.Injector;
+import org.apache.logging.log4j.core.config.di.api.bean.ProducerFactory;
+import org.apache.logging.log4j.core.config.di.api.bean.ScopeContext;
+import org.apache.logging.log4j.core.config.di.api.model.ElementManager;
+import org.apache.logging.log4j.core.config.di.api.model.InjectionPoint;
+import org.apache.logging.log4j.core.config.di.api.model.MetaClass;
+import org.apache.logging.log4j.core.config.di.api.model.MetaElement;
+import org.apache.logging.log4j.core.config.di.api.model.MetaField;
+import org.apache.logging.log4j.core.config.di.api.model.MetaMember;
+import org.apache.logging.log4j.core.config.di.api.model.MetaMethod;
+import org.apache.logging.log4j.core.config.di.api.model.MetaParameter;
+import org.apache.logging.log4j.core.config.di.api.model.Qualifiers;
+import org.apache.logging.log4j.core.config.di.api.model.Variable;
+import org.apache.logging.log4j.core.config.di.impl.model.DefaultElementManager;
 import org.apache.logging.log4j.plugins.api.DependentScoped;
 import org.apache.logging.log4j.plugins.api.Disposes;
 import org.apache.logging.log4j.plugins.api.Produces;
 import org.apache.logging.log4j.plugins.api.Provider;
 import org.apache.logging.log4j.plugins.api.SingletonScoped;
-import org.apache.logging.log4j.plugins.defaults.model.DefaultElementManager;
-import org.apache.logging.log4j.plugins.spi.AmbiguousBeanException;
-import org.apache.logging.log4j.plugins.spi.DefinitionException;
-import org.apache.logging.log4j.plugins.spi.InjectionException;
-import org.apache.logging.log4j.plugins.spi.ResolutionException;
-import org.apache.logging.log4j.plugins.spi.UnsatisfiedBeanException;
-import org.apache.logging.log4j.plugins.spi.ValidationException;
-import org.apache.logging.log4j.plugins.spi.bean.Bean;
-import org.apache.logging.log4j.plugins.spi.bean.BeanManager;
-import org.apache.logging.log4j.plugins.spi.bean.InitializationContext;
-import org.apache.logging.log4j.plugins.spi.bean.InjectionTargetFactory;
-import org.apache.logging.log4j.plugins.spi.bean.Injector;
-import org.apache.logging.log4j.plugins.spi.bean.ProducerFactory;
-import org.apache.logging.log4j.plugins.spi.bean.ScopeContext;
-import org.apache.logging.log4j.plugins.spi.model.ElementManager;
-import org.apache.logging.log4j.plugins.spi.model.InjectionPoint;
-import org.apache.logging.log4j.plugins.spi.model.MetaClass;
-import org.apache.logging.log4j.plugins.spi.model.MetaElement;
-import org.apache.logging.log4j.plugins.spi.model.MetaField;
-import org.apache.logging.log4j.plugins.spi.model.MetaMember;
-import org.apache.logging.log4j.plugins.spi.model.MetaMethod;
-import org.apache.logging.log4j.plugins.spi.model.MetaParameter;
-import org.apache.logging.log4j.plugins.spi.model.Qualifiers;
-import org.apache.logging.log4j.plugins.spi.model.Variable;
 import org.apache.logging.log4j.plugins.util.LazyValue;
 import org.apache.logging.log4j.plugins.util.TypeUtil;
 
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultInitializationContext.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultInitializationContext.java
similarity index 96%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultInitializationContext.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultInitializationContext.java
index 7e54175..61200f3 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultInitializationContext.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultInitializationContext.java
@@ -15,10 +15,10 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.bean;
+package org.apache.logging.log4j.core.config.di.impl.bean;
 
-import org.apache.logging.log4j.plugins.spi.bean.Bean;
-import org.apache.logging.log4j.plugins.spi.bean.InitializationContext;
+import org.apache.logging.log4j.core.config.di.api.bean.Bean;
+import org.apache.logging.log4j.core.config.di.api.bean.InitializationContext;
 import org.apache.logging.log4j.plugins.util.TypeUtil;
 import org.apache.logging.log4j.plugins.util.Value;
 
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultInjectionTarget.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultInjectionTarget.java
similarity index 87%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultInjectionTarget.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultInjectionTarget.java
index ff56366..bf1ec0c 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultInjectionTarget.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultInjectionTarget.java
@@ -15,20 +15,20 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.bean;
+package org.apache.logging.log4j.core.config.di.impl.bean;
 
 import org.apache.logging.log4j.plugins.api.Disposes;
 import org.apache.logging.log4j.plugins.api.Inject;
 import org.apache.logging.log4j.plugins.api.Produces;
-import org.apache.logging.log4j.plugins.spi.bean.InitializationContext;
-import org.apache.logging.log4j.plugins.spi.bean.InjectionTarget;
-import org.apache.logging.log4j.plugins.spi.bean.Injector;
-import org.apache.logging.log4j.plugins.spi.model.InjectionPoint;
-import org.apache.logging.log4j.plugins.spi.model.MetaClass;
-import org.apache.logging.log4j.plugins.spi.model.MetaConstructor;
-import org.apache.logging.log4j.plugins.spi.model.MetaField;
-import org.apache.logging.log4j.plugins.spi.model.MetaMember;
-import org.apache.logging.log4j.plugins.spi.model.MetaMethod;
+import org.apache.logging.log4j.core.config.di.api.bean.InitializationContext;
+import org.apache.logging.log4j.core.config.di.api.bean.InjectionTarget;
+import org.apache.logging.log4j.core.config.di.api.bean.Injector;
+import org.apache.logging.log4j.core.config.di.api.model.InjectionPoint;
+import org.apache.logging.log4j.core.config.di.api.model.MetaClass;
+import org.apache.logging.log4j.core.config.di.api.model.MetaConstructor;
+import org.apache.logging.log4j.core.config.di.api.model.MetaField;
+import org.apache.logging.log4j.core.config.di.api.model.MetaMember;
+import org.apache.logging.log4j.core.config.di.api.model.MetaMethod;
 import org.apache.logging.log4j.plugins.util.TypeUtil;
 
 import java.util.Collection;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultInjectionTargetFactory.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultInjectionTargetFactory.java
similarity index 85%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultInjectionTargetFactory.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultInjectionTargetFactory.java
index edaf306..94f379c 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultInjectionTargetFactory.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultInjectionTargetFactory.java
@@ -15,22 +15,22 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.bean;
+package org.apache.logging.log4j.core.config.di.impl.bean;
 
 import org.apache.logging.log4j.plugins.api.Inject;
 import org.apache.logging.log4j.plugins.api.PostConstruct;
 import org.apache.logging.log4j.plugins.api.PreDestroy;
-import org.apache.logging.log4j.plugins.spi.DefinitionException;
-import org.apache.logging.log4j.plugins.spi.bean.Bean;
-import org.apache.logging.log4j.plugins.spi.bean.InjectionTarget;
-import org.apache.logging.log4j.plugins.spi.bean.InjectionTargetFactory;
-import org.apache.logging.log4j.plugins.spi.bean.Injector;
-import org.apache.logging.log4j.plugins.spi.model.ElementManager;
-import org.apache.logging.log4j.plugins.spi.model.InjectionPoint;
-import org.apache.logging.log4j.plugins.spi.model.MetaClass;
-import org.apache.logging.log4j.plugins.spi.model.MetaConstructor;
-import org.apache.logging.log4j.plugins.spi.model.MetaField;
-import org.apache.logging.log4j.plugins.spi.model.MetaMethod;
+import org.apache.logging.log4j.core.config.di.DefinitionException;
+import org.apache.logging.log4j.core.config.di.api.bean.Bean;
+import org.apache.logging.log4j.core.config.di.api.bean.InjectionTarget;
+import org.apache.logging.log4j.core.config.di.api.bean.InjectionTargetFactory;
+import org.apache.logging.log4j.core.config.di.api.bean.Injector;
+import org.apache.logging.log4j.core.config.di.api.model.ElementManager;
+import org.apache.logging.log4j.core.config.di.api.model.InjectionPoint;
+import org.apache.logging.log4j.core.config.di.api.model.MetaClass;
+import org.apache.logging.log4j.core.config.di.api.model.MetaConstructor;
+import org.apache.logging.log4j.core.config.di.api.model.MetaField;
+import org.apache.logging.log4j.core.config.di.api.model.MetaMethod;
 
 import java.util.ArrayList;
 import java.util.Collection;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultInjector.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultInjector.java
similarity index 85%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultInjector.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultInjector.java
index 6e228a8..e3473a1 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultInjector.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultInjector.java
@@ -15,17 +15,17 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.bean;
+package org.apache.logging.log4j.core.config.di.impl.bean;
 
 import org.apache.logging.log4j.plugins.api.Disposes;
-import org.apache.logging.log4j.plugins.spi.bean.BeanManager;
-import org.apache.logging.log4j.plugins.spi.bean.InitializationContext;
-import org.apache.logging.log4j.plugins.spi.bean.Injector;
-import org.apache.logging.log4j.plugins.spi.model.InjectionPoint;
-import org.apache.logging.log4j.plugins.spi.model.MetaConstructor;
-import org.apache.logging.log4j.plugins.spi.model.MetaField;
-import org.apache.logging.log4j.plugins.spi.model.MetaMethod;
-import org.apache.logging.log4j.plugins.spi.model.MetaParameter;
+import org.apache.logging.log4j.core.config.di.api.bean.BeanManager;
+import org.apache.logging.log4j.core.config.di.api.bean.InitializationContext;
+import org.apache.logging.log4j.core.config.di.api.bean.Injector;
+import org.apache.logging.log4j.core.config.di.api.model.InjectionPoint;
+import org.apache.logging.log4j.core.config.di.api.model.MetaConstructor;
+import org.apache.logging.log4j.core.config.di.api.model.MetaField;
+import org.apache.logging.log4j.core.config.di.api.model.MetaMethod;
+import org.apache.logging.log4j.core.config.di.api.model.MetaParameter;
 
 import java.util.Collection;
 import java.util.List;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultScopeContext.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultScopeContext.java
similarity index 89%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultScopeContext.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultScopeContext.java
index 42e46b0..b0904ae 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultScopeContext.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultScopeContext.java
@@ -15,11 +15,11 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.bean;
+package org.apache.logging.log4j.core.config.di.impl.bean;
 
-import org.apache.logging.log4j.plugins.spi.bean.Bean;
-import org.apache.logging.log4j.plugins.spi.bean.InitializationContext;
-import org.apache.logging.log4j.plugins.spi.bean.ScopeContext;
+import org.apache.logging.log4j.core.config.di.api.bean.Bean;
+import org.apache.logging.log4j.core.config.di.api.bean.InitializationContext;
+import org.apache.logging.log4j.core.config.di.api.bean.ScopeContext;
 import org.apache.logging.log4j.plugins.util.LazyValue;
 import org.apache.logging.log4j.plugins.util.TypeUtil;
 import org.apache.logging.log4j.plugins.util.Value;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DependentScopeContext.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DependentScopeContext.java
similarity index 86%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DependentScopeContext.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DependentScopeContext.java
index 09b4a7a..4fab1c0 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/DependentScopeContext.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/DependentScopeContext.java
@@ -15,12 +15,12 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.bean;
+package org.apache.logging.log4j.core.config.di.impl.bean;
 
 import org.apache.logging.log4j.plugins.api.DependentScoped;
-import org.apache.logging.log4j.plugins.spi.bean.Bean;
-import org.apache.logging.log4j.plugins.spi.bean.InitializationContext;
-import org.apache.logging.log4j.plugins.spi.bean.ScopeContext;
+import org.apache.logging.log4j.core.config.di.api.bean.Bean;
+import org.apache.logging.log4j.core.config.di.api.bean.InitializationContext;
+import org.apache.logging.log4j.core.config.di.api.bean.ScopeContext;
 
 import java.lang.annotation.Annotation;
 import java.util.Optional;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/FieldProducer.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/FieldProducer.java
similarity index 79%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/FieldProducer.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/FieldProducer.java
index 7529ee1..9f094e2 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/FieldProducer.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/FieldProducer.java
@@ -15,14 +15,14 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.bean;
-
-import org.apache.logging.log4j.plugins.spi.bean.Bean;
-import org.apache.logging.log4j.plugins.spi.bean.BeanManager;
-import org.apache.logging.log4j.plugins.spi.bean.InitializationContext;
-import org.apache.logging.log4j.plugins.spi.model.InjectionPoint;
-import org.apache.logging.log4j.plugins.spi.model.MetaField;
-import org.apache.logging.log4j.plugins.spi.model.MetaMethod;
+package org.apache.logging.log4j.core.config.di.impl.bean;
+
+import org.apache.logging.log4j.core.config.di.api.bean.Bean;
+import org.apache.logging.log4j.core.config.di.api.bean.BeanManager;
+import org.apache.logging.log4j.core.config.di.api.bean.InitializationContext;
+import org.apache.logging.log4j.core.config.di.api.model.InjectionPoint;
+import org.apache.logging.log4j.core.config.di.api.model.MetaField;
+import org.apache.logging.log4j.core.config.di.api.model.MetaMethod;
 
 import java.lang.reflect.Type;
 import java.util.Collection;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/FieldProducerFactory.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/FieldProducerFactory.java
similarity index 78%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/FieldProducerFactory.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/FieldProducerFactory.java
index f629a45..7c28286 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/FieldProducerFactory.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/FieldProducerFactory.java
@@ -15,14 +15,14 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.bean;
+package org.apache.logging.log4j.core.config.di.impl.bean;
 
-import org.apache.logging.log4j.plugins.spi.bean.Bean;
-import org.apache.logging.log4j.plugins.spi.bean.BeanManager;
-import org.apache.logging.log4j.plugins.spi.bean.Producer;
-import org.apache.logging.log4j.plugins.spi.model.InjectionPoint;
-import org.apache.logging.log4j.plugins.spi.model.MetaField;
-import org.apache.logging.log4j.plugins.spi.model.MetaMethod;
+import org.apache.logging.log4j.core.config.di.api.bean.Bean;
+import org.apache.logging.log4j.core.config.di.api.bean.BeanManager;
+import org.apache.logging.log4j.core.config.di.api.bean.Producer;
+import org.apache.logging.log4j.core.config.di.api.model.InjectionPoint;
+import org.apache.logging.log4j.core.config.di.api.model.MetaField;
+import org.apache.logging.log4j.core.config.di.api.model.MetaMethod;
 import org.apache.logging.log4j.plugins.util.TypeUtil;
 
 import java.util.Collection;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/InjectionTargetBean.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/InjectionTargetBean.java
similarity index 82%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/InjectionTargetBean.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/InjectionTargetBean.java
index 663ecd4..301bcb2 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/InjectionTargetBean.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/InjectionTargetBean.java
@@ -15,15 +15,15 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.bean;
+package org.apache.logging.log4j.core.config.di.impl.bean;
 
-import org.apache.logging.log4j.plugins.spi.IllegalProductException;
-import org.apache.logging.log4j.plugins.spi.bean.InitializationContext;
-import org.apache.logging.log4j.plugins.spi.bean.InjectionTarget;
-import org.apache.logging.log4j.plugins.spi.bean.InjectionTargetFactory;
-import org.apache.logging.log4j.plugins.spi.model.InjectionPoint;
-import org.apache.logging.log4j.plugins.spi.model.MetaClass;
-import org.apache.logging.log4j.plugins.spi.model.Variable;
+import org.apache.logging.log4j.core.config.di.IllegalProductException;
+import org.apache.logging.log4j.core.config.di.api.bean.InitializationContext;
+import org.apache.logging.log4j.core.config.di.api.bean.InjectionTarget;
+import org.apache.logging.log4j.core.config.di.api.bean.InjectionTargetFactory;
+import org.apache.logging.log4j.core.config.di.api.model.InjectionPoint;
+import org.apache.logging.log4j.core.config.di.api.model.MetaClass;
+import org.apache.logging.log4j.core.config.di.api.model.Variable;
 
 import java.util.Collection;
 import java.util.Objects;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/MethodProducer.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/MethodProducer.java
similarity index 82%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/MethodProducer.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/MethodProducer.java
index 8baf1c2..cfc37b2 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/MethodProducer.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/MethodProducer.java
@@ -15,14 +15,14 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.bean;
-
-import org.apache.logging.log4j.plugins.spi.DefinitionException;
-import org.apache.logging.log4j.plugins.spi.bean.Bean;
-import org.apache.logging.log4j.plugins.spi.bean.BeanManager;
-import org.apache.logging.log4j.plugins.spi.bean.InitializationContext;
-import org.apache.logging.log4j.plugins.spi.model.InjectionPoint;
-import org.apache.logging.log4j.plugins.spi.model.MetaMethod;
+package org.apache.logging.log4j.core.config.di.impl.bean;
+
+import org.apache.logging.log4j.core.config.di.DefinitionException;
+import org.apache.logging.log4j.core.config.di.api.bean.Bean;
+import org.apache.logging.log4j.core.config.di.api.bean.BeanManager;
+import org.apache.logging.log4j.core.config.di.api.bean.InitializationContext;
+import org.apache.logging.log4j.core.config.di.api.model.InjectionPoint;
+import org.apache.logging.log4j.core.config.di.api.model.MetaMethod;
 
 import java.lang.reflect.Type;
 import java.util.Collection;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/MethodProducerFactory.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/MethodProducerFactory.java
similarity index 82%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/MethodProducerFactory.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/MethodProducerFactory.java
index d503cea..c1cbf43 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/MethodProducerFactory.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/MethodProducerFactory.java
@@ -15,13 +15,13 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.bean;
+package org.apache.logging.log4j.core.config.di.impl.bean;
 
-import org.apache.logging.log4j.plugins.spi.bean.Bean;
-import org.apache.logging.log4j.plugins.spi.bean.BeanManager;
-import org.apache.logging.log4j.plugins.spi.bean.Producer;
-import org.apache.logging.log4j.plugins.spi.model.InjectionPoint;
-import org.apache.logging.log4j.plugins.spi.model.MetaMethod;
+import org.apache.logging.log4j.core.config.di.api.bean.Bean;
+import org.apache.logging.log4j.core.config.di.api.bean.BeanManager;
+import org.apache.logging.log4j.core.config.di.api.bean.Producer;
+import org.apache.logging.log4j.core.config.di.api.model.InjectionPoint;
+import org.apache.logging.log4j.core.config.di.api.model.MetaMethod;
 import org.apache.logging.log4j.plugins.util.TypeUtil;
 
 import java.util.Collection;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/OptionalBean.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/OptionalBean.java
similarity index 87%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/OptionalBean.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/OptionalBean.java
index a0d6feb..ee23a73 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/OptionalBean.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/OptionalBean.java
@@ -15,14 +15,14 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.bean;
+package org.apache.logging.log4j.core.config.di.impl.bean;
 
 import org.apache.logging.log4j.plugins.api.DependentScoped;
-import org.apache.logging.log4j.plugins.spi.bean.Bean;
-import org.apache.logging.log4j.plugins.spi.bean.InitializationContext;
-import org.apache.logging.log4j.plugins.spi.model.InjectionPoint;
-import org.apache.logging.log4j.plugins.spi.model.MetaClass;
-import org.apache.logging.log4j.plugins.spi.model.Qualifiers;
+import org.apache.logging.log4j.core.config.di.api.bean.Bean;
+import org.apache.logging.log4j.core.config.di.api.bean.InitializationContext;
+import org.apache.logging.log4j.core.config.di.api.model.InjectionPoint;
+import org.apache.logging.log4j.core.config.di.api.model.MetaClass;
+import org.apache.logging.log4j.core.config.di.api.model.Qualifiers;
 import org.apache.logging.log4j.plugins.util.TypeUtil;
 import org.apache.logging.log4j.plugins.util.Value;
 
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/ProducerBean.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/ProducerBean.java
similarity index 84%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/ProducerBean.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/ProducerBean.java
index a70f1fd..11b5608 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/ProducerBean.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/ProducerBean.java
@@ -15,15 +15,15 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.bean;
+package org.apache.logging.log4j.core.config.di.impl.bean;
 
-import org.apache.logging.log4j.plugins.spi.IllegalProductException;
-import org.apache.logging.log4j.plugins.spi.bean.InitializationContext;
-import org.apache.logging.log4j.plugins.spi.bean.Producer;
-import org.apache.logging.log4j.plugins.spi.bean.ProducerFactory;
-import org.apache.logging.log4j.plugins.spi.model.InjectionPoint;
-import org.apache.logging.log4j.plugins.spi.model.MetaClass;
-import org.apache.logging.log4j.plugins.spi.model.Variable;
+import org.apache.logging.log4j.core.config.di.IllegalProductException;
+import org.apache.logging.log4j.core.config.di.api.bean.InitializationContext;
+import org.apache.logging.log4j.core.config.di.api.bean.Producer;
+import org.apache.logging.log4j.core.config.di.api.bean.ProducerFactory;
+import org.apache.logging.log4j.core.config.di.api.model.InjectionPoint;
+import org.apache.logging.log4j.core.config.di.api.model.MetaClass;
+import org.apache.logging.log4j.core.config.di.api.model.Variable;
 
 import java.lang.reflect.Type;
 import java.util.Collection;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/ProvidedBean.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/ProvidedBean.java
similarity index 81%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/ProvidedBean.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/ProvidedBean.java
index fe9fea6..6a8b388 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/ProvidedBean.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/ProvidedBean.java
@@ -15,11 +15,11 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.bean;
+package org.apache.logging.log4j.core.config.di.impl.bean;
 
-import org.apache.logging.log4j.plugins.spi.bean.InitializationContext;
-import org.apache.logging.log4j.plugins.spi.bean.ProviderFactory;
-import org.apache.logging.log4j.plugins.spi.model.Variable;
+import org.apache.logging.log4j.core.config.di.api.bean.InitializationContext;
+import org.apache.logging.log4j.core.config.di.api.bean.ProviderFactory;
+import org.apache.logging.log4j.core.config.di.api.model.Variable;
 
 class ProvidedBean<T> extends SystemBean<T> {
     private final ProviderFactory<T> providerFactory;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/ProviderBean.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/ProviderBean.java
similarity index 82%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/ProviderBean.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/ProviderBean.java
index 47f4fc9..77bd7b0 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/ProviderBean.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/ProviderBean.java
@@ -15,12 +15,12 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.bean;
+package org.apache.logging.log4j.core.config.di.impl.bean;
 
 import org.apache.logging.log4j.plugins.api.Provider;
-import org.apache.logging.log4j.plugins.spi.bean.InitializationContext;
-import org.apache.logging.log4j.plugins.spi.bean.ProviderFactory;
-import org.apache.logging.log4j.plugins.spi.model.Variable;
+import org.apache.logging.log4j.core.config.di.api.bean.InitializationContext;
+import org.apache.logging.log4j.core.config.di.api.bean.ProviderFactory;
+import org.apache.logging.log4j.core.config.di.api.model.Variable;
 
 class ProviderBean<T> extends SystemBean<Provider<T>> {
     private final ProviderFactory<T> providerFactory;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/SystemBean.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/SystemBean.java
similarity index 79%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/SystemBean.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/SystemBean.java
index c00eab6..5906f0c 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/bean/SystemBean.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/bean/SystemBean.java
@@ -15,14 +15,14 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.bean;
+package org.apache.logging.log4j.core.config.di.impl.bean;
 
-import org.apache.logging.log4j.plugins.spi.bean.Bean;
-import org.apache.logging.log4j.plugins.spi.bean.InitializationContext;
-import org.apache.logging.log4j.plugins.spi.model.InjectionPoint;
-import org.apache.logging.log4j.plugins.spi.model.MetaClass;
-import org.apache.logging.log4j.plugins.spi.model.Qualifiers;
-import org.apache.logging.log4j.plugins.spi.model.Variable;
+import org.apache.logging.log4j.core.config.di.api.bean.Bean;
+import org.apache.logging.log4j.core.config.di.api.bean.InitializationContext;
+import org.apache.logging.log4j.core.config.di.api.model.InjectionPoint;
+import org.apache.logging.log4j.core.config.di.api.model.MetaClass;
+import org.apache.logging.log4j.core.config.di.api.model.Qualifiers;
+import org.apache.logging.log4j.core.config.di.api.model.Variable;
 
 import java.lang.annotation.Annotation;
 import java.lang.reflect.Type;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/AbstractMetaExecutable.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/AbstractMetaExecutable.java
similarity index 85%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/AbstractMetaExecutable.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/AbstractMetaExecutable.java
index e34a5cc..4060dec 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/AbstractMetaExecutable.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/AbstractMetaExecutable.java
@@ -15,11 +15,11 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.model;
+package org.apache.logging.log4j.core.config.di.impl.model;
 
-import org.apache.logging.log4j.plugins.spi.model.MetaClass;
-import org.apache.logging.log4j.plugins.spi.model.MetaExecutable;
-import org.apache.logging.log4j.plugins.spi.model.MetaParameter;
+import org.apache.logging.log4j.core.config.di.api.model.MetaClass;
+import org.apache.logging.log4j.core.config.di.api.model.MetaExecutable;
+import org.apache.logging.log4j.core.config.di.api.model.MetaParameter;
 
 import java.lang.reflect.Executable;
 import java.lang.reflect.Parameter;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/AbstractMetaMember.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/AbstractMetaMember.java
similarity index 89%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/AbstractMetaMember.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/AbstractMetaMember.java
index a7cecdc..4a5d72b 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/AbstractMetaMember.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/AbstractMetaMember.java
@@ -15,11 +15,11 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.model;
+package org.apache.logging.log4j.core.config.di.impl.model;
 
-import org.apache.logging.log4j.plugins.spi.model.MetaAnnotation;
-import org.apache.logging.log4j.plugins.spi.model.MetaClass;
-import org.apache.logging.log4j.plugins.spi.model.MetaMember;
+import org.apache.logging.log4j.core.config.di.api.model.MetaAnnotation;
+import org.apache.logging.log4j.core.config.di.api.model.MetaClass;
+import org.apache.logging.log4j.core.config.di.api.model.MetaMember;
 
 import java.lang.reflect.AnnotatedElement;
 import java.lang.reflect.Member;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultElementManager.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultElementManager.java
similarity index 89%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultElementManager.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultElementManager.java
index c80a920..705c3cc 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultElementManager.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultElementManager.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.model;
+package org.apache.logging.log4j.core.config.di.impl.model;
 
 import org.apache.logging.log4j.plugins.api.AnnotationAlias;
 import org.apache.logging.log4j.plugins.api.Default;
@@ -25,19 +25,19 @@ import org.apache.logging.log4j.plugins.api.Named;
 import org.apache.logging.log4j.plugins.api.QualifierType;
 import org.apache.logging.log4j.plugins.api.ScopeType;
 import org.apache.logging.log4j.plugins.internal.util.BeanUtils;
-import org.apache.logging.log4j.plugins.spi.bean.Bean;
-import org.apache.logging.log4j.plugins.spi.model.ElementManager;
-import org.apache.logging.log4j.plugins.spi.model.InjectionPoint;
-import org.apache.logging.log4j.plugins.spi.model.MetaAnnotation;
-import org.apache.logging.log4j.plugins.spi.model.MetaAnnotationElement;
-import org.apache.logging.log4j.plugins.spi.model.MetaClass;
-import org.apache.logging.log4j.plugins.spi.model.MetaElement;
-import org.apache.logging.log4j.plugins.spi.model.MetaExecutable;
-import org.apache.logging.log4j.plugins.spi.model.MetaField;
-import org.apache.logging.log4j.plugins.spi.model.MetaMethod;
-import org.apache.logging.log4j.plugins.spi.model.MetaParameter;
-import org.apache.logging.log4j.plugins.spi.model.Qualifiers;
-import org.apache.logging.log4j.plugins.spi.model.Variable;
+import org.apache.logging.log4j.core.config.di.api.bean.Bean;
+import org.apache.logging.log4j.core.config.di.api.model.ElementManager;
+import org.apache.logging.log4j.core.config.di.api.model.InjectionPoint;
+import org.apache.logging.log4j.core.config.di.api.model.MetaAnnotation;
+import org.apache.logging.log4j.core.config.di.api.model.MetaAnnotationElement;
+import org.apache.logging.log4j.core.config.di.api.model.MetaClass;
+import org.apache.logging.log4j.core.config.di.api.model.MetaElement;
+import org.apache.logging.log4j.core.config.di.api.model.MetaExecutable;
+import org.apache.logging.log4j.core.config.di.api.model.MetaField;
+import org.apache.logging.log4j.core.config.di.api.model.MetaMethod;
+import org.apache.logging.log4j.core.config.di.api.model.MetaParameter;
+import org.apache.logging.log4j.core.config.di.api.model.Qualifiers;
+import org.apache.logging.log4j.core.config.di.api.model.Variable;
 import org.apache.logging.log4j.plugins.util.Cache;
 import org.apache.logging.log4j.plugins.util.TypeUtil;
 import org.apache.logging.log4j.plugins.util.WeakCache;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultInjectionPoint.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultInjectionPoint.java
similarity index 87%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultInjectionPoint.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultInjectionPoint.java
index eba0996..0ecefe8 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultInjectionPoint.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultInjectionPoint.java
@@ -15,13 +15,13 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.model;
+package org.apache.logging.log4j.core.config.di.impl.model;
 
-import org.apache.logging.log4j.plugins.spi.bean.Bean;
-import org.apache.logging.log4j.plugins.spi.model.InjectionPoint;
-import org.apache.logging.log4j.plugins.spi.model.MetaElement;
-import org.apache.logging.log4j.plugins.spi.model.MetaMember;
-import org.apache.logging.log4j.plugins.spi.model.Qualifiers;
+import org.apache.logging.log4j.core.config.di.api.bean.Bean;
+import org.apache.logging.log4j.core.config.di.api.model.InjectionPoint;
+import org.apache.logging.log4j.core.config.di.api.model.MetaElement;
+import org.apache.logging.log4j.core.config.di.api.model.MetaMember;
+import org.apache.logging.log4j.core.config.di.api.model.Qualifiers;
 
 import java.lang.reflect.Type;
 import java.util.Objects;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaAnnotation.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaAnnotation.java
similarity index 94%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaAnnotation.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaAnnotation.java
index 0751817..aa01a25 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaAnnotation.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaAnnotation.java
@@ -15,13 +15,13 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.model;
+package org.apache.logging.log4j.core.config.di.impl.model;
 
 import org.apache.logging.log4j.plugins.api.AnnotationAlias;
 import org.apache.logging.log4j.plugins.api.Named;
-import org.apache.logging.log4j.plugins.spi.InitializationException;
-import org.apache.logging.log4j.plugins.spi.model.MetaAnnotation;
-import org.apache.logging.log4j.plugins.spi.model.MetaAnnotationElement;
+import org.apache.logging.log4j.core.config.di.InitializationException;
+import org.apache.logging.log4j.core.config.di.api.model.MetaAnnotation;
+import org.apache.logging.log4j.core.config.di.api.model.MetaAnnotationElement;
 
 import java.lang.annotation.Annotation;
 import java.lang.reflect.InvocationTargetException;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaAnnotationElement.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaAnnotationElement.java
similarity index 91%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaAnnotationElement.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaAnnotationElement.java
index ce436c0..266be71 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaAnnotationElement.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaAnnotationElement.java
@@ -15,10 +15,10 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.model;
+package org.apache.logging.log4j.core.config.di.impl.model;
 
-import org.apache.logging.log4j.plugins.spi.model.MetaAnnotation;
-import org.apache.logging.log4j.plugins.spi.model.MetaAnnotationElement;
+import org.apache.logging.log4j.core.config.di.api.model.MetaAnnotation;
+import org.apache.logging.log4j.core.config.di.api.model.MetaAnnotationElement;
 
 import java.lang.reflect.Type;
 import java.util.Collection;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaClass.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaClass.java
similarity index 91%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaClass.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaClass.java
index 219ff77..3f956cc 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaClass.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaClass.java
@@ -15,13 +15,13 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.model;
+package org.apache.logging.log4j.core.config.di.impl.model;
 
-import org.apache.logging.log4j.plugins.spi.model.MetaAnnotation;
-import org.apache.logging.log4j.plugins.spi.model.MetaClass;
-import org.apache.logging.log4j.plugins.spi.model.MetaConstructor;
-import org.apache.logging.log4j.plugins.spi.model.MetaField;
-import org.apache.logging.log4j.plugins.spi.model.MetaMethod;
+import org.apache.logging.log4j.core.config.di.api.model.MetaAnnotation;
+import org.apache.logging.log4j.core.config.di.api.model.MetaClass;
+import org.apache.logging.log4j.core.config.di.api.model.MetaConstructor;
+import org.apache.logging.log4j.core.config.di.api.model.MetaField;
+import org.apache.logging.log4j.core.config.di.api.model.MetaMethod;
 import org.apache.logging.log4j.plugins.util.LazyValue;
 import org.apache.logging.log4j.plugins.util.TypeUtil;
 import org.apache.logging.log4j.plugins.util.Value;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaConstructor.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaConstructor.java
similarity index 86%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaConstructor.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaConstructor.java
index 53bc32a..b118b52 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaConstructor.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaConstructor.java
@@ -15,11 +15,11 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.model;
+package org.apache.logging.log4j.core.config.di.impl.model;
 
-import org.apache.logging.log4j.plugins.spi.InitializationException;
-import org.apache.logging.log4j.plugins.spi.model.MetaClass;
-import org.apache.logging.log4j.plugins.spi.model.MetaConstructor;
+import org.apache.logging.log4j.core.config.di.InitializationException;
+import org.apache.logging.log4j.core.config.di.api.model.MetaClass;
+import org.apache.logging.log4j.core.config.di.api.model.MetaConstructor;
 
 import java.lang.reflect.Constructor;
 import java.lang.reflect.InvocationTargetException;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaField.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaField.java
similarity index 87%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaField.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaField.java
index 81f2e47..5031219 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaField.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaField.java
@@ -15,11 +15,11 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.model;
+package org.apache.logging.log4j.core.config.di.impl.model;
 
-import org.apache.logging.log4j.plugins.spi.InitializationException;
-import org.apache.logging.log4j.plugins.spi.model.MetaClass;
-import org.apache.logging.log4j.plugins.spi.model.MetaField;
+import org.apache.logging.log4j.core.config.di.InitializationException;
+import org.apache.logging.log4j.core.config.di.api.model.MetaClass;
+import org.apache.logging.log4j.core.config.di.api.model.MetaField;
 import org.apache.logging.log4j.plugins.util.TypeUtil;
 
 import java.lang.reflect.Field;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaMethod.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaMethod.java
similarity index 87%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaMethod.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaMethod.java
index c92fac6..dbe7b35 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaMethod.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaMethod.java
@@ -15,11 +15,11 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.model;
+package org.apache.logging.log4j.core.config.di.impl.model;
 
-import org.apache.logging.log4j.plugins.spi.InitializationException;
-import org.apache.logging.log4j.plugins.spi.model.MetaClass;
-import org.apache.logging.log4j.plugins.spi.model.MetaMethod;
+import org.apache.logging.log4j.core.config.di.InitializationException;
+import org.apache.logging.log4j.core.config.di.api.model.MetaClass;
+import org.apache.logging.log4j.core.config.di.api.model.MetaMethod;
 import org.apache.logging.log4j.plugins.util.TypeUtil;
 
 import java.lang.reflect.InvocationTargetException;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaParameter.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaParameter.java
similarity index 87%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaParameter.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaParameter.java
index e581fa4..b85f41f 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultMetaParameter.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultMetaParameter.java
@@ -15,11 +15,11 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.model;
+package org.apache.logging.log4j.core.config.di.impl.model;
 
-import org.apache.logging.log4j.plugins.spi.model.MetaAnnotation;
-import org.apache.logging.log4j.plugins.spi.model.MetaClass;
-import org.apache.logging.log4j.plugins.spi.model.MetaParameter;
+import org.apache.logging.log4j.core.config.di.api.model.MetaAnnotation;
+import org.apache.logging.log4j.core.config.di.api.model.MetaClass;
+import org.apache.logging.log4j.core.config.di.api.model.MetaParameter;
 
 import java.lang.reflect.Parameter;
 import java.lang.reflect.Type;
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultVariable.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultVariable.java
similarity index 92%
rename from log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultVariable.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultVariable.java
index cc7cf4a..f527f09 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/defaults/model/DefaultVariable.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/di/impl/model/DefaultVariable.java
@@ -15,10 +15,10 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.model;
+package org.apache.logging.log4j.core.config.di.impl.model;
 
-import org.apache.logging.log4j.plugins.spi.model.Qualifiers;
-import org.apache.logging.log4j.plugins.spi.model.Variable;
+import org.apache.logging.log4j.core.config.di.api.model.Qualifiers;
+import org.apache.logging.log4j.core.config.di.api.model.Variable;
 
 import java.lang.annotation.Annotation;
 import java.lang.reflect.Type;
diff --git a/log4j-core/src/main/java9/module-info.java b/log4j-core/src/main/java9/module-info.java
index 9133d77..b78bddf 100644
--- a/log4j-core/src/main/java9/module-info.java
+++ b/log4j-core/src/main/java9/module-info.java
@@ -29,6 +29,11 @@ module org.apache.logging.log4j.core {
     exports org.apache.logging.log4j.core.config.builder.api;
     exports org.apache.logging.log4j.core.config.builder.impl;
     exports org.apache.logging.log4j.core.config.composite;
+    exports org.apache.logging.log4j.core.config.di;
+    exports org.apache.logging.log4j.core.config.di.api.bean;
+    exports org.apache.logging.log4j.core.config.di.api.model;
+    exports org.apache.logging.log4j.core.config.di.impl.bean;
+    exports org.apache.logging.log4j.core.config.di.impl.model;
     exports org.apache.logging.log4j.core.config.json;
     exports org.apache.logging.log4j.core.config.plugins;
     exports org.apache.logging.log4j.core.config.plugins.convert;
diff --git a/log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/test/BeanJUnit4Runner.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/BeanJUnit4Runner.java
similarity index 83%
rename from log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/test/BeanJUnit4Runner.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/BeanJUnit4Runner.java
index 2a8459f..151ea3f 100644
--- a/log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/test/BeanJUnit4Runner.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/BeanJUnit4Runner.java
@@ -15,22 +15,22 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.test;
+package org.apache.logging.log4j.core.test.junit;
 
-import org.apache.logging.log4j.plugins.defaults.bean.DefaultBeanManager;
-import org.apache.logging.log4j.plugins.defaults.bean.DefaultInjector;
-import org.apache.logging.log4j.plugins.defaults.model.DefaultElementManager;
-import org.apache.logging.log4j.plugins.spi.DefinitionException;
-import org.apache.logging.log4j.plugins.spi.UnsatisfiedBeanException;
-import org.apache.logging.log4j.plugins.spi.bean.Bean;
-import org.apache.logging.log4j.plugins.spi.bean.BeanManager;
-import org.apache.logging.log4j.plugins.spi.bean.InitializationContext;
-import org.apache.logging.log4j.plugins.spi.bean.Injector;
-import org.apache.logging.log4j.plugins.spi.model.ElementManager;
-import org.apache.logging.log4j.plugins.spi.model.InjectionPoint;
-import org.apache.logging.log4j.plugins.spi.model.MetaClass;
-import org.apache.logging.log4j.plugins.spi.model.MetaMethod;
-import org.apache.logging.log4j.plugins.spi.model.Qualifiers;
+import org.apache.logging.log4j.core.config.di.DefinitionException;
+import org.apache.logging.log4j.core.config.di.UnsatisfiedBeanException;
+import org.apache.logging.log4j.core.config.di.api.bean.Bean;
+import org.apache.logging.log4j.core.config.di.api.bean.BeanManager;
+import org.apache.logging.log4j.core.config.di.api.bean.InitializationContext;
+import org.apache.logging.log4j.core.config.di.api.bean.Injector;
+import org.apache.logging.log4j.core.config.di.api.model.ElementManager;
+import org.apache.logging.log4j.core.config.di.api.model.InjectionPoint;
+import org.apache.logging.log4j.core.config.di.api.model.MetaClass;
+import org.apache.logging.log4j.core.config.di.api.model.MetaMethod;
+import org.apache.logging.log4j.core.config.di.api.model.Qualifiers;
+import org.apache.logging.log4j.core.config.di.impl.bean.DefaultBeanManager;
+import org.apache.logging.log4j.core.config.di.impl.bean.DefaultInjector;
+import org.apache.logging.log4j.core.config.di.impl.model.DefaultElementManager;
 import org.apache.logging.log4j.plugins.util.TypeUtil;
 import org.junit.Test;
 import org.junit.runners.BlockJUnit4ClassRunner;
diff --git a/log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/test/WithBeans.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/WithBeans.java
similarity index 96%
rename from log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/test/WithBeans.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/WithBeans.java
index fcaef5e..694ccc0 100644
--- a/log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/test/WithBeans.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/WithBeans.java
@@ -15,7 +15,7 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.test;
+package org.apache.logging.log4j.core.test.junit;
 
 import java.lang.annotation.Documented;
 import java.lang.annotation.ElementType;
diff --git a/log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultBeanManagerTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultBeanManagerTest.java
similarity index 98%
rename from log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultBeanManagerTest.java
rename to log4j-core/src/test/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultBeanManagerTest.java
index 0d30f17..2cee816 100644
--- a/log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/defaults/bean/DefaultBeanManagerTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/di/impl/bean/DefaultBeanManagerTest.java
@@ -15,8 +15,10 @@
  * limitations under the license.
  */
 
-package org.apache.logging.log4j.plugins.defaults.bean;
+package org.apache.logging.log4j.core.config.di.impl.bean;
 
+import org.apache.logging.log4j.core.test.junit.BeanJUnit4Runner;
+import org.apache.logging.log4j.core.test.junit.WithBeans;
 import org.apache.logging.log4j.plugins.api.Default;
 import org.apache.logging.log4j.plugins.api.Inject;
 import org.apache.logging.log4j.plugins.api.Named;
@@ -25,8 +27,6 @@ import org.apache.logging.log4j.plugins.api.Produces;
 import org.apache.logging.log4j.plugins.api.Provider;
 import org.apache.logging.log4j.plugins.api.QualifierType;
 import org.apache.logging.log4j.plugins.api.SingletonScoped;
-import org.apache.logging.log4j.plugins.test.BeanJUnit4Runner;
-import org.apache.logging.log4j.plugins.test.WithBeans;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 
diff --git a/log4j-core/src/test/java9/module-info.java b/log4j-core/src/test/java9/module-info.java
index 72544e2..b7d1787 100644
--- a/log4j-core/src/test/java9/module-info.java
+++ b/log4j-core/src/test/java9/module-info.java
@@ -27,6 +27,7 @@ open module org.apache.logging.log4j.core {
     exports org.apache.logging.log4j.core.config;
     exports org.apache.logging.log4j.core.config.arbiters;
     exports org.apache.logging.log4j.core.config.builder;
+    exports org.apache.logging.log4j.core.config.di.impl.bean;
     exports org.apache.logging.log4j.core.config.plugins;
     exports org.apache.logging.log4j.core.config.plugins.convert;
     exports org.apache.logging.log4j.core.config.plugins.util;