aboutsummaryrefslogtreecommitdiff
path: root/android/guava/src/com/google/common/util/concurrent/ServiceManager.java
diff options
context:
space:
mode:
Diffstat (limited to 'android/guava/src/com/google/common/util/concurrent/ServiceManager.java')
-rw-r--r--android/guava/src/com/google/common/util/concurrent/ServiceManager.java40
1 files changed, 23 insertions, 17 deletions
diff --git a/android/guava/src/com/google/common/util/concurrent/ServiceManager.java b/android/guava/src/com/google/common/util/concurrent/ServiceManager.java
index dd4828cb8..38727f504 100644
--- a/android/guava/src/com/google/common/util/concurrent/ServiceManager.java
+++ b/android/guava/src/com/google/common/util/concurrent/ServiceManager.java
@@ -62,7 +62,6 @@ import java.util.concurrent.Executor;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.TimeoutException;
import java.util.logging.Level;
-import java.util.logging.Logger;
/**
* A manager for monitoring and controlling a set of {@linkplain Service services}. This class
@@ -122,7 +121,7 @@ import java.util.logging.Logger;
@GwtIncompatible
@ElementTypesAreNonnullByDefault
public final class ServiceManager implements ServiceManagerBridge {
- private static final Logger logger = Logger.getLogger(ServiceManager.class.getName());
+ private static final LazyLogger logger = new LazyLogger(ServiceManager.class);
private static final ListenerCallQueue.Event<Listener> HEALTHY_EVENT =
new ListenerCallQueue.Event<Listener>() {
@Override
@@ -205,10 +204,13 @@ public final class ServiceManager implements ServiceManagerBridge {
if (copy.isEmpty()) {
// Having no services causes the manager to behave strangely. Notably, listeners are never
// fired. To avoid this we substitute a placeholder service.
- logger.log(
- Level.WARNING,
- "ServiceManager configured with no services. Is your application configured properly?",
- new EmptyServiceManagerWarning());
+ logger
+ .get()
+ .log(
+ Level.WARNING,
+ "ServiceManager configured with no services. Is your application configured"
+ + " properly?",
+ new EmptyServiceManagerWarning());
copy = ImmutableList.<Service>of(new NoOpService());
}
this.state = new ServiceManagerState(copy);
@@ -275,7 +277,7 @@ public final class ServiceManager implements ServiceManagerBridge {
// service or listener). Our contract says it is safe to call this method if
// all services were NEW when it was called, and this has already been verified above, so we
// don't propagate the exception.
- logger.log(Level.WARNING, "Unable to start Service " + service, e);
+ logger.get().log(Level.WARNING, "Unable to start Service " + service, e);
}
}
return this;
@@ -661,7 +663,7 @@ public final class ServiceManager implements ServiceManagerBridge {
// N.B. if we miss the STARTING event then we may never record a startup time.
stopwatch.stop();
if (!(service instanceof NoOpService)) {
- logger.log(Level.FINE, "Started {0} in {1}.", new Object[] {service, stopwatch});
+ logger.get().log(Level.FINE, "Started {0} in {1}.", new Object[] {service, stopwatch});
}
}
// Queue our listeners
@@ -750,7 +752,7 @@ public final class ServiceManager implements ServiceManagerBridge {
if (state != null) {
state.transitionService(service, NEW, STARTING);
if (!(service instanceof NoOpService)) {
- logger.log(Level.FINE, "Starting {0}.", service);
+ logger.get().log(Level.FINE, "Starting {0}.", service);
}
}
}
@@ -776,10 +778,12 @@ public final class ServiceManager implements ServiceManagerBridge {
ServiceManagerState state = this.state.get();
if (state != null) {
if (!(service instanceof NoOpService)) {
- logger.log(
- Level.FINE,
- "Service {0} has terminated. Previous state was: {1}",
- new Object[] {service, from});
+ logger
+ .get()
+ .log(
+ Level.FINE,
+ "Service {0} has terminated. Previous state was: {1}",
+ new Object[] {service, from});
}
state.transitionService(service, from, TERMINATED);
}
@@ -793,10 +797,12 @@ public final class ServiceManager implements ServiceManagerBridge {
// there is a higher likelihood that the cause will be in the logs.
boolean log = !(service instanceof NoOpService);
if (log) {
- logger.log(
- Level.SEVERE,
- "Service " + service + " has failed in the " + from + " state.",
- failure);
+ logger
+ .get()
+ .log(
+ Level.SEVERE,
+ "Service " + service + " has failed in the " + from + " state.",
+ failure);
}
state.transitionService(service, from, FAILED);
}