You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by gg...@apache.org on 2016/04/13 04:08:34 UTC
logging-log4j2 git commit: Use a Switch on String instead of
cascading if-else's.
Repository: logging-log4j2
Updated Branches:
refs/heads/master 437238fcf -> 90adca7a5
Use a Switch on String instead of cascading if-else's.
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/90adca7a
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/90adca7a
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/90adca7a
Branch: refs/heads/master
Commit: 90adca7a54299955c72332c79c0546be536528b8
Parents: 437238f
Author: ggregory <gg...@apache.org>
Authored: Tue Apr 12 19:08:30 2016 -0700
Committer: ggregory <gg...@apache.org>
Committed: Tue Apr 12 19:08:30 2016 -0700
----------------------------------------------------------------------
.../logging/log4j/core/async/DisruptorUtil.java | 32 +++++++++++---------
1 file changed, 17 insertions(+), 15 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/90adca7a/log4j-core/src/main/java/org/apache/logging/log4j/core/async/DisruptorUtil.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/async/DisruptorUtil.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/async/DisruptorUtil.java
index 99c3ba8..8fb00c4 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/async/DisruptorUtil.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/async/DisruptorUtil.java
@@ -17,6 +17,7 @@
package org.apache.logging.log4j.core.async;
+import java.util.Locale;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Future;
@@ -55,22 +56,23 @@ final class DisruptorUtil {
}
static WaitStrategy createWaitStrategy(final String propertyName, final long timeoutMillis) {
- final String strategy = PropertiesUtil.getProperties().getStringProperty(propertyName);
- if (strategy != null) {
- LOGGER.trace("property {}={}", propertyName, strategy);
- if ("Sleep".equalsIgnoreCase(strategy)) {
- return new SleepingWaitStrategy();
- } else if ("Yield".equalsIgnoreCase(strategy)) {
- return new YieldingWaitStrategy();
- } else if ("Block".equalsIgnoreCase(strategy)) {
- return new BlockingWaitStrategy();
- } else if ("BusySpin".equalsIgnoreCase(strategy)) {
- return new BusySpinWaitStrategy();
- } else if ("Timeout".equalsIgnoreCase(strategy)) {
- return new TimeoutBlockingWaitStrategy(timeoutMillis, TimeUnit.MILLISECONDS);
- }
+ final String strategy = PropertiesUtil.getProperties().getStringProperty(propertyName, "TIMEOUT");
+ LOGGER.trace("property {}={}", propertyName, strategy);
+ final String strategyUp = strategy.toUpperCase(Locale.ROOT); // TODO Refactor into Strings.toRootUpperCase(String)
+ switch (strategyUp) { // TODO Define a DisruptorWaitStrategy enum?
+ case "SLEEP":
+ return new SleepingWaitStrategy();
+ case "YIELD":
+ return new YieldingWaitStrategy();
+ case "BLOCK":
+ return new BlockingWaitStrategy();
+ case "BUSYSPIN":
+ return new BusySpinWaitStrategy();
+ case "TIMEOUT":
+ return new TimeoutBlockingWaitStrategy(timeoutMillis, TimeUnit.MILLISECONDS);
+ default:
+ return new TimeoutBlockingWaitStrategy(timeoutMillis, TimeUnit.MILLISECONDS);
}
- return new TimeoutBlockingWaitStrategy(timeoutMillis, TimeUnit.MILLISECONDS);
}
static int calculateRingBufferSize(final String propertyName) {