Merge remote-tracking branch 'origin/master' into feature/LOG4J2-1430
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/41ea561f Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/41ea561f Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/41ea561f Branch: refs/heads/master Commit: 41ea561fb817c39d83a8dc95be5676a0ab8cc30a Parents: 849fdb8 1dc04f8 Author: Matt Sicker <boa...@gmail.com> Authored: Thu Sep 1 11:32:26 2016 -0500 Committer: Matt Sicker <boa...@gmail.com> Committed: Thu Sep 1 11:32:26 2016 -0500 ---------------------------------------------------------------------- .gitignore | 14 +- README.md | 8 + log4j-1.2-api/.gitignore | 5 - log4j-1.2-api/pom.xml | 1 + .../config/Log4j1ConfigurationConverter.java | 41 + .../config/Log4j1ConfigurationFactory.java | 280 +-- .../log4j/config/Log4j1ConfigurationParser.java | 329 ++++ .../apache/log4j/layout/Log4j1XmlLayout.java | 161 ++ .../pattern/Log4j1MdcPatternConverter.java | 91 + .../pattern/Log4j1NdcPatternConverter.java | 63 + .../apache/log4j/BasicConfigurationFactory.java | 13 +- .../config/Log4j1ConfigurationFactoryTest.java | 64 +- .../log4j/layout/Log4j1XmlLayoutTest.java | 84 + .../pattern/Log4j1MdcPatternConverterTest.java | 79 + .../pattern/Log4j1NdcPatternConverterTest.java | 74 + ...g4j-console-EnhancedPatternLayout.properties | 3 +- .../log4j-console-HtmlLayout.properties | 3 +- .../log4j-console-PatternLayout.properties | 1 - .../log4j-console-SimpleLayout.properties | 1 - .../log4j-console-TTCCLayout.properties | 3 +- .../log4j-console-XmlLayout.properties | 5 +- .../log4j-file-SimpleLayout.properties | 17 + log4j-api-scala_2.10/pom.xml | 150 ++ .../org/apache/logging/log4j/scala/Logger.scala | 592 ++++++ .../logging/log4j/scala/LoggerMacro.scala | 425 +++++ .../apache/logging/log4j/scala/Logging.scala | 30 + .../apache/logging/log4j/scala/LoggerTest.scala | 550 ++++++ log4j-api-scala_2.11/pom.xml | 150 ++ .../org/apache/logging/log4j/scala/Logger.scala | 592 ++++++ .../logging/log4j/scala/LoggerMacro.scala | 425 +++++ .../apache/logging/log4j/scala/Logging.scala | 30 + .../apache/logging/log4j/scala/LoggerTest.scala | 550 ++++++ log4j-api/.gitignore | 5 - .../logging/log4j/CloseableThreadContext.java | 2 +- .../java/org/apache/logging/log4j/Logger.java | 20 + .../org/apache/logging/log4j/ThreadContext.java | 66 +- .../logging/log4j/message/ObjectMessage.java | 10 + .../log4j/message/ReusableObjectMessage.java | 10 + .../log4j/spi/DefaultThreadContextMap.java | 18 +- .../logging/log4j/spi/ThreadContextMap.java | 63 +- .../logging/log4j/spi/ThreadContextMap2.java | 40 + .../logging/log4j/spi/ThreadContextStack.java | 1 + .../apache/logging/log4j/util/Constants.java | 1 + .../apache/logging/log4j/util/LoaderUtil.java | 28 +- .../org/apache/logging/log4j/util/Strings.java | 63 + .../org/apache/logging/log4j/util/Unbox.java | 1 + .../log4j/CloseableThreadContextTest.java | 11 +- .../org/apache/logging/log4j/LoggerTest.java | 2 +- .../logging/log4j/ThreadContextHolder.java | 79 + .../apache/logging/log4j/ThreadContextTest.java | 21 + .../apache/logging/log4j/TraceLoggingTest.java | 1 - .../logging/log4j/junit/BundleTestInfo.java | 137 +- .../apache/logging/log4j/junit/OsgiRule.java | 141 +- .../log4j/junit/ThreadContextMapRule.java | 37 + .../logging/log4j/junit/ThreadContextRule.java | 78 + .../log4j/junit/ThreadContextStackRule.java | 37 + .../log4j/spi/DefaultThreadContextMapTest.java | 26 +- log4j-bom/.gitignore | 3 - log4j-bom/pom.xml | 12 + log4j-core/.gitignore | 5 - log4j-core/pom.xml | 22 +- .../logging/log4j/core/AbstractLifeCycle.java | 8 + .../apache/logging/log4j/core/LifeCycle.java | 13 + .../logging/log4j/core/LoggerContext.java | 153 +- .../log4j/core/appender/AbstractAppender.java | 58 + .../log4j/core/appender/AbstractManager.java | 60 +- .../appender/AbstractOutputStreamAppender.java | 23 +- .../core/appender/AbstractWriterAppender.java | 2 +- .../log4j/core/appender/AsyncAppender.java | 3 +- .../core/appender/ConfigurationFactoryData.java | 50 + .../log4j/core/appender/ConsoleAppender.java | 84 +- .../log4j/core/appender/FileAppender.java | 292 ++- .../log4j/core/appender/FileManager.java | 101 +- .../core/appender/MemoryMappedFileManager.java | 8 +- .../core/appender/OutputStreamManager.java | 75 +- .../core/appender/RandomAccessFileAppender.java | 2 +- .../core/appender/RandomAccessFileManager.java | 31 +- .../core/appender/RollingFileAppender.java | 597 ++++-- .../RollingRandomAccessFileAppender.java | 2 +- .../log4j/core/appender/SyslogAppender.java | 3 +- .../log4j/core/appender/WriterManager.java | 6 +- .../appender/db/AbstractDatabaseAppender.java | 4 +- .../appender/db/AbstractDatabaseManager.java | 8 +- .../appender/db/jdbc/JdbcDatabaseManager.java | 4 +- .../appender/db/jpa/JpaDatabaseManager.java | 2 +- .../log4j/core/appender/mom/JmsAppender.java | 2 +- .../log4j/core/appender/mom/JmsManager.java | 4 +- .../appender/mom/jeromq/JeroMqAppender.java | 362 ++-- .../core/appender/mom/jeromq/JeroMqManager.java | 2 +- .../core/appender/mom/kafka/KafkaAppender.java | 9 +- .../core/appender/mom/kafka/KafkaManager.java | 185 +- .../rolling/DefaultRolloverStrategy.java | 10 +- .../log4j/core/appender/rolling/FileSize.java | 1 + .../appender/rolling/RollingFileManager.java | 74 +- .../rolling/RollingRandomAccessFileManager.java | 38 +- .../core/appender/rolling/TriggeringPolicy.java | 2 +- .../rolling/action/FileRenameAction.java | 1 - .../core/appender/routing/IdlePurgePolicy.java | 57 +- .../core/appender/routing/RoutingAppender.java | 35 +- .../core/async/AsyncLoggerConfigDisruptor.java | 3 +- .../log4j/core/async/AsyncLoggerDisruptor.java | 3 +- .../log4j/core/async/DaemonThreadFactory.java | 53 - .../log4j/core/async/RingBufferLogEvent.java | 6 +- .../core/config/AbstractConfiguration.java | 42 +- .../log4j/core/config/AppenderControl.java | 3 +- .../log4j/core/config/AppendersPlugin.java | 4 +- .../log4j/core/config/Configuration.java | 8 + .../log4j/core/config/ConfigurationFactory.java | 86 +- .../core/config/ConfigurationScheduler.java | 23 +- .../core/config/ConfiguratonFileWatcher.java | 10 +- .../logging/log4j/core/config/Configurator.java | 36 +- .../log4j/core/config/DefaultConfiguration.java | 2 +- .../logging/log4j/core/config/LoggerConfig.java | 36 +- .../log4j/core/config/NullConfiguration.java | 2 +- .../core/config/builder/api/Component.java | 4 +- .../builder/api/ConfigurationBuilder.java | 36 +- .../config/builder/impl/BuiltConfiguration.java | 5 +- .../builder/impl/DefaultComponentBuilder.java | 4 +- .../impl/DefaultConfigurationBuilder.java | 181 +- .../DefaultCustomLevelComponentBuilder.java | 2 +- .../composite/CompositeConfiguration.java | 4 +- .../config/composite/DefaultMergeStrategy.java | 7 +- .../core/config/json/JsonConfiguration.java | 14 +- .../config/json/JsonConfigurationFactory.java | 5 +- .../config/plugins/PluginBuilderFactory.java | 1 + .../config/plugins/PluginConfiguration.java | 1 + .../core/config/plugins/PluginFactory.java | 2 +- .../log4j/core/config/plugins/PluginNode.java | 1 + .../core/config/plugins/util/PluginBuilder.java | 6 +- .../config/plugins/util/PluginRegistry.java | 1 - .../core/config/plugins/util/ResolverUtil.java | 13 +- .../plugins/visitors/PluginValueVisitor.java | 5 +- .../properties/PropertiesConfiguration.java | 8 +- .../PropertiesConfigurationBuilder.java | 18 +- .../PropertiesConfigurationFactory.java | 13 +- .../log4j/core/config/xml/XmlConfiguration.java | 47 +- .../config/xml/XmlConfigurationFactory.java | 6 +- .../core/config/yaml/YamlConfiguration.java | 7 +- .../config/yaml/YamlConfigurationFactory.java | 5 +- .../log4j/core/filter/AbstractFilterable.java | 27 + .../core/filter/DynamicThresholdFilter.java | 85 +- .../log4j/core/impl/DefaultLogEventFactory.java | 7 +- .../log4j/core/impl/ExtendedClassInfo.java | 23 +- .../core/impl/ExtendedStackTraceElement.java | 46 +- .../log4j/core/impl/Log4jContextFactory.java | 6 +- .../log4j/core/impl/ThrowableFormatOptions.java | 541 +++--- .../logging/log4j/core/impl/ThrowableProxy.java | 1390 +++++++------- .../log4j/core/jackson/Initializers.java | 10 +- .../log4j/core/jackson/Log4jJsonModule.java | 9 +- .../core/jackson/Log4jJsonObjectMapper.java | 6 +- .../log4j/core/jackson/Log4jXmlModule.java | 6 +- .../core/jackson/Log4jXmlObjectMapper.java | 9 +- .../log4j/core/jackson/Log4jYamlModule.java | 9 +- .../core/jackson/Log4jYamlObjectMapper.java | 6 +- .../ThrowableProxyWithoutStacktraceMixIn.java | 77 + .../log4j/core/jmx/LoggerContextAdmin.java | 4 +- .../apache/logging/log4j/core/jmx/Server.java | 19 +- .../log4j/core/layout/AbstractCsvLayout.java | 10 +- .../log4j/core/layout/AbstractStringLayout.java | 57 +- .../logging/log4j/core/layout/HtmlLayout.java | 14 + .../log4j/core/layout/JacksonFactory.java | 22 +- .../logging/log4j/core/layout/JsonLayout.java | 14 +- .../log4j/core/layout/PatternLayout.java | 18 +- .../logging/log4j/core/layout/XmlLayout.java | 15 +- .../logging/log4j/core/layout/YamlLayout.java | 13 +- .../logging/log4j/core/lookup/JndiLookup.java | 2 +- .../logging/log4j/core/net/JndiManager.java | 2 +- .../logging/log4j/core/net/SmtpManager.java | 4 +- .../log4j/core/net/TcpSocketManager.java | 9 +- .../core/net/server/AbstractSocketServer.java | 7 +- .../log4j/core/net/server/JmsServer.java | 12 +- .../server/JsonInputStreamLogEventBridge.java | 2 +- .../log4j/core/net/server/TcpSocketServer.java | 2 +- .../core/pattern/DatePatternConverter.java | 2 +- .../ExtendedThrowablePatternConverter.java | 3 +- .../log4j/core/pattern/HighlightConverter.java | 38 +- .../log4j/core/pattern/HtmlMessageRenderer.java | 33 - .../log4j/core/pattern/HtmlTextRenderer.java | 38 + .../core/pattern/JAnsiMessageRenderer.java | 205 --- .../log4j/core/pattern/JAnsiTextRenderer.java | 332 ++++ .../core/pattern/MessagePatternConverter.java | 53 +- .../log4j/core/pattern/MessageRenderer.java | 32 - .../log4j/core/pattern/NameAbbreviator.java | 2 + .../log4j/core/pattern/PlainTextRenderer.java | 40 + .../pattern/RootThrowablePatternConverter.java | 2 +- .../log4j/core/pattern/StyleConverter.java | 24 +- .../log4j/core/pattern/TextRenderer.java | 46 + .../log4j/core/script/ScriptManager.java | 1 - .../core/selector/BasicContextSelector.java | 131 +- .../core/selector/CoreContextSelectors.java | 25 + .../core/selector/JndiContextSelector.java | 2 +- .../logging/log4j/core/util/ArrayUtils.java | 124 ++ .../apache/logging/log4j/core/util/Assert.java | 38 - .../logging/log4j/core/util/Constants.java | 11 - .../util/DefaultShutdownCallbackRegistry.java | 7 + .../apache/logging/log4j/core/util/Loader.java | 6 +- .../logging/log4j/core/util/Log4jThread.java | 138 +- .../log4j/core/util/Log4jThreadFactory.java | 99 + .../logging/log4j/core/util/TypeUtil.java | 21 + .../core/util/datetime/FastDateParser.java | 54 +- .../core/util/datetime/FixedDateFormat.java | 77 +- .../log4j/FormatterLoggerManualExample.java | 7 +- .../apache/logging/log4j/LogRolloverTest.java | 18 +- .../logging/log4j/MarkerMixInXmlTest.java | 2 +- .../log4j/core/BasicConfigurationFactory.java | 6 +- .../apache/logging/log4j/core/DeadlockTest.java | 2 +- .../logging/log4j/core/LoggerUpdateTest.java | 2 +- .../logging/log4j/core/StrictXmlConfigTest.java | 1 - .../ConsoleAppenderAnsiMessagesMain.java | 110 +- .../ConsoleAppenderAnsiStyleJira180Main.java | 119 +- .../ConsoleAppenderAnsiStyleJira272Main.java | 121 +- .../ConsoleAppenderAnsiStyleJira319Main.java | 123 +- .../ConsoleAppenderAnsiStyleLayoutMain.java | 149 +- .../ConsoleAppenderAnsiStyleNameLayoutMain.java | 11 +- ...nsoleAppenderDefaultSuppressedThrowable.java | 131 +- ...nsoleAppenderHighlightLayoutDefaultMain.java | 11 +- ...nsoleAppenderHighlightLayoutLogbackMain.java | 11 +- .../ConsoleAppenderHighlightLayoutMain.java | 11 +- .../ConsoleAppenderJAnsiMessageMain.java | 160 +- .../ConsoleAppenderJAnsiXExceptionMain.java | 76 + .../ConsoleAppenderNoAnsiStyleLayoutMain.java | 145 +- .../core/appender/ConsoleAppenderTest.java | 8 +- .../CsvJsonParameterLayoutFileAppenderTest.java | 117 ++ .../log4j/core/appender/FileAppenderTest.java | 306 ++-- .../log4j/core/appender/Jira739Test.java | 103 +- .../appender/JsonCompleteFileAppenderTest.java | 37 +- .../appender/MemoryMappedFileManagerTest.java | 25 +- .../core/appender/OutputStreamAppenderTest.java | 214 +-- .../core/appender/ProgressConsoleTest.java | 7 +- .../appender/RandomAccessFileAppenderTests.java | 2 +- .../appender/RandomAccessFileManagerTest.java | 18 +- .../appender/XmlCompleteFileAppenderTest.java | 68 +- .../db/AbstractDatabaseAppenderTest.java | 10 +- .../db/jdbc/AbstractJdbcAppenderTest.java | 14 +- .../db/jpa/AbstractJpaAppenderTest.java | 14 +- .../core/appender/db/jpa/JpaH2AppenderTest.java | 28 +- .../db/jpa/JpaHyperSqlAppenderTest.java | 28 +- .../ContextStackJsonAttributeConverterTest.java | 19 +- .../log4j/core/appender/mom/JmsAppenderIT.java | 2 +- .../appender/mom/jeromq/JeroMqAppenderTest.java | 10 +- .../core/appender/rolling/FileSizeTest.java | 4 +- .../rolling/OnStartupTriggeringPolicyTest.java | 43 +- .../RandomRollingAppenderOnStartupTest.java | 2 +- .../RollingAppenderCronOnceADayTest.java | 125 ++ .../rolling/RollingAppenderCronTest.java | 9 +- .../RollingAppenderCustomDeleteActionTest.java | 2 +- ...lingAppenderDeleteAccumulatedCount1Test.java | 2 +- ...lingAppenderDeleteAccumulatedCount2Test.java | 2 +- ...ollingAppenderDeleteAccumulatedSizeTest.java | 2 +- .../RollingAppenderDeleteMaxDepthTest.java | 2 +- .../RollingAppenderDeleteNestedTest.java | 2 +- .../RollingAppenderDeleteScriptFri13thTest.java | 2 +- .../RollingAppenderDeleteScriptTest.java | 2 +- ...ollingAppenderNoUnconditionalDeleteTest.java | 2 +- .../rolling/RollingAppenderOnStartupTest.java | 2 +- .../rolling/RollingAppenderSizeTest.java | 45 +- .../rolling/RollingAppenderTimeAndSizeTest.java | 4 +- .../rolling/RollingAppenderTimeTest.java | 2 +- .../rolling/RollingFileAppenderAccessTest.java | 56 +- ...RandomAccessFileManagerHeaderFooterTest.java | 3 +- .../RollingRandomAccessFileManagerTest.java | 24 +- .../routing/PropertiesRoutingAppenderTest.java | 2 +- .../appender/routing/RoutingAppenderTest.java | 2 +- .../routing/RoutingAppenderWithPurgingTest.java | 21 +- .../routing/RoutingDefaultAppenderTest.java | 2 +- .../core/async/RingBufferLogEventTest.java | 18 +- .../core/config/CompositeConfigurationTest.java | 51 +- .../log4j/core/config/ConfigurationTest.java | 8 +- .../log4j/core/config/ConfiguratorTest.java | 5 +- .../core/config/CustomConfigurationTest.java | 15 +- .../core/config/MissingRootLoggerTest.java | 2 +- .../log4j/core/config/TestConfigurator.java | 24 +- .../core/config/TestConfiguratorError.java | 13 +- .../logging/log4j/core/config/XIncludeTest.java | 2 +- .../builder/ConfigurationAssemblerTest.java | 36 +- .../builder/ConfigurationBuilderTest.java | 92 + .../builder/CustomConfigurationFactory.java | 18 +- .../plugins/util/PluginManagerPackagesTest.java | 12 +- .../util/ResolverUtilCustomProtocolTest.java | 208 +++ .../config/plugins/util/ResolverUtilTest.java | 126 +- .../AbstractPluginWithGenericBuilder.java | 59 + .../PluginWithGenericSubclassFoo1Builder.java | 55 + .../plugins/validation/ValidatingPlugin.java | 2 +- .../ValidatingPluginWithGenericBuilder.java | 75 + .../ValidatingPluginWithTypedBuilder.java | 70 + .../validators/RequiredValidatorTest.java | 1 + .../ValidatingPluginWithGenericBuilderTest.java | 66 + ...luginWithGenericSubclassFoo1BuilderTest.java | 68 + .../ValidatingPluginWithTypedBuilderTest.java | 71 + .../core/config/xml/XmlLoggerPropsTest.java | 8 +- .../core/filter/DynamicThresholdFilterTest.java | 47 +- .../core/impl/ThrowableFormatOptionsTest.java | 208 ++- .../log4j/core/jackson/LevelMixInJsonTest.java | 2 +- .../jackson/StackTraceElementMixInTest.java | 2 +- .../core/layout/CsvLogEventLayoutTest.java | 8 +- .../core/layout/CsvParameterLayoutTest.java | 73 +- .../log4j/core/layout/GelfLayoutTest.java | 12 +- .../log4j/core/layout/HtmlLayoutTest.java | 7 +- .../log4j/core/layout/JsonLayoutTest.java | 59 +- .../log4j/core/layout/Log4j2_1482_CoreTest.java | 20 + .../log4j/core/layout/Log4j2_1482_Test.java | 89 + .../log4j/core/layout/LogEventFixtures.java | 6 +- .../layout/PatternLayoutLookupDateTest.java | 28 + .../layout/PatternLayoutNoLookupDateTest.java | 26 + .../log4j/core/layout/PatternLayoutTest.java | 18 +- .../log4j/core/layout/Rfc5424LayoutTest.java | 21 +- .../log4j/core/layout/SerializedLayoutTest.java | 7 +- .../log4j/core/layout/SyslogLayoutTest.java | 9 +- .../log4j/core/layout/XmlLayoutTest.java | 66 +- .../log4j/core/layout/YamlLayoutTest.java | 55 +- .../lookup/MainInputArgumentsLookupTest.java | 11 +- .../net/server/AbstractSocketServerTest.java | 4 +- .../osgi/equinox/EquinoxLoadCoreBundleTest.java | 6 +- .../osgi/felix/FelixLoadCoreBundleTest.java | 4 + .../core/pattern/DatePatternConverterTest.java | 22 + .../core/pattern/HighlightConverterTest.java | 78 + .../core/pattern/MdcPatternConverterTest.java | 29 +- .../pattern/MessagePatternConverterTest.java | 197 +- .../core/pattern/NdcPatternConverterTest.java | 77 + .../core/pattern/RegexReplacementTest.java | 17 +- .../core/util/ShutdownCallbackRegistryTest.java | 2 +- .../core/util/datetime/FixedDateFormatTest.java | 35 +- .../junit/AbstractExternalFileCleaner.java | 232 ++- .../apache/logging/log4j/junit/CleanFiles.java | 38 +- .../logging/log4j/junit/CleanFolders.java | 59 +- .../logging/log4j/junit/LoggerContextRule.java | 51 +- .../junit/URLStreamHandlerFactoryRule.java | 96 + .../log4j/test/appender/InMemoryAppender.java | 7 +- log4j-core/src/test/resources/gcFreeLogging.xml | 11 +- .../resources/gcFreeMixedSyncAsyncLogging.xml | 10 +- .../log4j-comp-logger-attr-override.json | 38 + .../test/resources/log4j-comp-logger-root.xml | 44 + .../test/resources/log4j-comp-root-loggers.xml | 46 + .../test/resources/log4j-cvs-json-parameter.xml | 32 + .../src/test/resources/log4j-list-nolookups.xml | 29 + .../src/test/resources/log4j-loggerprops.xml | 4 +- .../test/resources/log4j-rolling-7z-lazy.xml | 59 + .../test/resources/log4j-rolling-bzip2-lazy.xml | 60 + .../resources/log4j-rolling-cron-once-a-day.xml | 47 + .../src/test/resources/log4j-rolling-cron.xml | 2 +- .../src/test/resources/log4j-rolling-cron2.xml | 2 +- .../resources/log4j-rolling-deflate-lazy.xml | 60 + .../test/resources/log4j-rolling-gz-lazy.xml | 59 + .../resources/log4j-rolling-pack200-lazy.xml | 60 + .../test/resources/log4j-rolling-xz-lazy.xml | 60 + .../test/resources/log4j-rolling-zip-lazy.xml | 60 + log4j-core/src/test/resources/log4j-style.xml | 4 +- log4j-core/src/test/resources/log4j2-1482.xml | 27 + .../log4j2-console-xex-ansi-custom.xml | 31 + .../resources/log4j2-console-xex-ansi-kirk.xml | 31 + .../test/resources/log4j2-console-xex-ansi.xml | 31 + .../test/resources/log4j2-properties.properties | 1 + log4j-distribution/.gitignore | 2 - log4j-flume-ng/.gitignore | 4 - log4j-flume-ng/pom.xml | 1 + .../flume/appender/AbstractFlumeManager.java | 2 +- .../log4j/flume/appender/FlumeAppender.java | 43 +- .../flume/appender/FlumePersistentManager.java | 1730 +++++++++--------- .../log4j/flume/appender/FlumeAppenderTest.java | 49 +- log4j-iostreams/.gitignore | Bin 69 -> 0 bytes log4j-jcl/.gitignore | 4 - log4j-jmx-gui/.gitignore | 4 - log4j-jmx-gui/pom.xml | 1 + log4j-jul/.gitignore | 3 - log4j-jul/pom.xml | 1 + log4j-liquibase/.gitignore | 3 - log4j-nosql/.gitignore | 4 - log4j-nosql/pom.xml | 6 + .../appender/NoSqlDatabaseManagerTest.java | 86 +- log4j-perf/.gitignore | 4 - .../log4j/perf/jmh/JdbcAppenderBenchmark.java | 4 +- .../log4j/perf/jmh/JpaAppenderBenchmark.java | 4 +- log4j-samples/.gitignore | 5 - .../configuration/CustomConfiguration.java | 13 +- .../CustomConfigurationFactory.java | 12 +- log4j-samples/pom.xml | 1 + log4j-samples/scala-api/.gitignore | 3 + log4j-samples/scala-api/pom.xml | 65 + .../scala-api/src/main/resources/log4j2.xml | 32 + .../logging/log4j/scalasample/LoggingApp.scala | 31 + log4j-slf4j-impl/.gitignore | 4 - log4j-slf4j-impl/pom.xml | 5 + .../org/apache/logging/slf4j/Log4j1222Test.java | 1 - .../logging/slf4j/Log4j2_1482_Slf4jTest.java | 41 + .../src/test/resources/log4j2-1482.xml | 27 + log4j-taglib/.gitignore | 4 - log4j-to-slf4j/.gitignore | 4 - .../org/apache/logging/slf4j/MDCContextMap.java | 12 +- log4j-web/.gitignore | 4 - log4j-web/pom.xml | 1 + .../org/apache/logging/log4j/web/WebLookup.java | 8 - pom.xml | 40 +- src/changes/announcement.vm | 15 +- src/changes/changes.xml | 184 +- src/site/site.xml | 3 + src/site/xdoc/manual/appenders.xml | 39 +- src/site/xdoc/manual/configuration.xml.vm | 6 +- src/site/xdoc/manual/customconfig.xml | 10 +- src/site/xdoc/manual/extending.xml | 22 +- src/site/xdoc/manual/garbagefree.xml | 10 +- src/site/xdoc/manual/layouts.xml.vm | 87 +- src/site/xdoc/manual/lookups.xml | 18 +- src/site/xdoc/manual/scala-api.xml | 91 + src/site/xdoc/maven-artifacts.xml.vm | 28 + src/site/xdoc/runtime-dependencies.xml | 7 + 405 files changed, 16044 insertions(+), 5920 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/41ea561f/log4j-api/src/main/java/org/apache/logging/log4j/util/LoaderUtil.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/41ea561f/log4j-core/pom.xml ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/41ea561f/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/AsyncAppender.java ---------------------------------------------------------------------- diff --cc log4j-core/src/main/java/org/apache/logging/log4j/core/appender/AsyncAppender.java index 200a5b4,7b6e985..d23116f --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/AsyncAppender.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/AsyncAppender.java @@@ -39,13 -37,13 +39,14 @@@ import org.apache.logging.log4j.core.co import org.apache.logging.log4j.core.config.ConfigurationException; import org.apache.logging.log4j.core.config.plugins.Plugin; import org.apache.logging.log4j.core.config.plugins.PluginAliases; -import org.apache.logging.log4j.core.config.plugins.PluginAttribute; +import org.apache.logging.log4j.core.config.plugins.PluginBuilderAttribute; +import org.apache.logging.log4j.core.config.plugins.PluginBuilderFactory; import org.apache.logging.log4j.core.config.plugins.PluginConfiguration; import org.apache.logging.log4j.core.config.plugins.PluginElement; -import org.apache.logging.log4j.core.config.plugins.PluginFactory; +import org.apache.logging.log4j.core.config.plugins.validation.constraints.Required; import org.apache.logging.log4j.core.impl.Log4jLogEvent; import org.apache.logging.log4j.core.util.Constants; + import org.apache.logging.log4j.core.util.Log4jThread; /** * Appends to one or more Appenders asynchronously. You can configure an AsyncAppender with one or more Appenders and an http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/41ea561f/log4j-core/src/main/java/org/apache/logging/log4j/core/util/Loader.java ---------------------------------------------------------------------- diff --cc log4j-core/src/main/java/org/apache/logging/log4j/core/util/Loader.java index e3c5140,dfaf78c..9e88c09 --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/util/Loader.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/util/Loader.java @@@ -308,6 -307,19 +307,11 @@@ public final class Loader * @return {@code true} if the class could be found or {@code false} otherwise. */ public static boolean isClassAvailable(final String className) { - try { - final Class<?> clazz = loadClass(className); - return clazz != null; - } catch (final ClassNotFoundException e) { - return false; - } catch (final Throwable e) { - LOGGER.trace("Unknown error checking for existence of class [{}].", className, e); - return false; - } + return LoaderUtil.isClassAvailable(className); } + + public static boolean isJansiAvailable() { + return isClassAvailable("org.fusesource.jansi.AnsiRenderer"); + } + } http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/41ea561f/log4j-core/src/test/java/org/apache/logging/log4j/junit/LoggerContextRule.java ---------------------------------------------------------------------- diff --cc log4j-core/src/test/java/org/apache/logging/log4j/junit/LoggerContextRule.java index 66f1801,b3ec1e0..dccebb4 --- a/log4j-core/src/test/java/org/apache/logging/log4j/junit/LoggerContextRule.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/junit/LoggerContextRule.java @@@ -16,6 -16,10 +16,8 @@@ */ package org.apache.logging.log4j.junit; -import static org.junit.Assert.assertNotNull; - + import java.util.concurrent.TimeUnit; + import org.apache.logging.log4j.Level; import org.apache.logging.log4j.core.Appender; import org.apache.logging.log4j.core.Logger; http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/41ea561f/pom.xml ---------------------------------------------------------------------- diff --cc pom.xml index ae5ac17,99ce0b8..b5eddd1 --- a/pom.xml +++ b/pom.xml @@@ -192,11 -192,10 +192,11 @@@ <slf4jVersion>1.7.21</slf4jVersion> <logbackVersion>1.1.7</logbackVersion> <jackson1Version>1.9.13</jackson1Version> - <jackson2Version>2.8.0</jackson2Version> + <jackson2Version>2.8.1</jackson2Version> <springVersion>3.2.13.RELEASE</springVersion> <flumeVersion>1.6.0</flumeVersion> - <disruptorVersion>3.3.4</disruptorVersion> + <disruptorVersion>3.3.5</disruptorVersion> + <conversantDisruptorVersion>1.2.7</conversantDisruptorVersion> <compiler.plugin.version>3.5.1</compiler.plugin.version> <pmd.plugin.version>3.6</pmd.plugin.version> <findbugs.plugin.version>3.0.3</findbugs.plugin.version> @@@ -222,10 -221,9 +222,10 @@@ <projectDir /> <commonsLoggingVersion>1.2</commonsLoggingVersion> <osgi.api.version>4.3.1</osgi.api.version> - <activemq.version>5.13.3</activemq.version> + <activemq.version>5.14.0</activemq.version> <!-- Allow Clirr severity to be overriden by the command-line option -DminSeverity=level --> <minSeverity>info</minSeverity> + <jctoolsVersion>1.2.1</jctoolsVersion> </properties> <pluginRepositories> <pluginRepository> @@@ -634,6 -632,12 +644,12 @@@ <scope>test</scope> </dependency> <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-utils</artifactId> + <version>3.0.24</version> + <scope>test</scope> - </dependency> ++ </dependency> + <dependency> <groupId>org.easymock</groupId> <artifactId>easymock</artifactId> <version>3.4</version> http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/41ea561f/src/site/xdoc/manual/appenders.xml ----------------------------------------------------------------------