You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aurora.apache.org by ke...@apache.org on 2014/09/23 02:27:39 UTC

git commit: use javax.inject.Qualifier instead of @BindingAnnotation

Repository: incubator-aurora
Updated Branches:
  refs/heads/master db88bd413 -> d1d089afc


use javax.inject.Qualifier instead of @BindingAnnotation

See https://github.com/google/guice/wiki/JSR330

Testing Done:
./gradlew -Pq build

Reviewed at https://reviews.apache.org/r/25914/


Project: http://git-wip-us.apache.org/repos/asf/incubator-aurora/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-aurora/commit/d1d089af
Tree: http://git-wip-us.apache.org/repos/asf/incubator-aurora/tree/d1d089af
Diff: http://git-wip-us.apache.org/repos/asf/incubator-aurora/diff/d1d089af

Branch: refs/heads/master
Commit: d1d089afc81cffdf4d43be42b2a5fa5b86821223
Parents: db88bd4
Author: Kevin Sweeney <ke...@apache.org>
Authored: Mon Sep 22 17:27:10 2014 -0700
Committer: Kevin Sweeney <ke...@apache.org>
Committed: Mon Sep 22 17:27:10 2014 -0700

----------------------------------------------------------------------
 src/main/java/org/apache/aurora/GuiceUtils.java              | 5 +++--
 .../java/org/apache/aurora/scheduler/async/AsyncModule.java  | 4 ++--
 .../java/org/apache/aurora/scheduler/async/Preemptor.java    | 4 ++--
 .../aurora/scheduler/async/RandomJitterReturnDelay.java      | 1 -
 .../org/apache/aurora/scheduler/async/TaskScheduler.java     | 4 ++--
 .../aurora/scheduler/events/NotifyingSchedulingFilter.java   | 5 ++---
 .../java/org/apache/aurora/scheduler/log/mesos/MesosLog.java | 8 ++++----
 src/main/java/org/apache/aurora/scheduler/sla/SlaModule.java | 4 ++--
 .../org/apache/aurora/scheduler/state/StateManagerImpl.java  | 1 -
 .../apache/aurora/scheduler/state/TaskLimitValidator.java    | 1 -
 .../org/apache/aurora/scheduler/stats/AsyncStatsModule.java  | 4 ++--
 .../aurora/scheduler/storage/CallOrderEnforcingStorage.java  | 4 ++--
 .../java/org/apache/aurora/scheduler/storage/Storage.java    | 5 +++--
 .../aurora/scheduler/storage/backup/StorageBackup.java       | 4 ++--
 .../org/apache/aurora/scheduler/storage/log/Entries.java     | 1 -
 .../org/apache/aurora/scheduler/storage/log/LogManager.java  | 6 +++---
 .../org/apache/aurora/scheduler/storage/log/LogStorage.java  | 8 ++++----
 .../aurora/scheduler/storage/log/WriteAheadStorage.java      | 1 -
 .../org/apache/aurora/scheduler/storage/mem/MemStorage.java  | 4 ++--
 .../apache/aurora/scheduler/quota/QuotaManagerImplTest.java  | 1 -
 .../aurora/scheduler/storage/log/SnapshotStoreImplTest.java  | 1 -
 .../aurora/scheduler/thrift/aop/MockDecoratedThrift.java     | 4 ++--
 22 files changed, 37 insertions(+), 43 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-aurora/blob/d1d089af/src/main/java/org/apache/aurora/GuiceUtils.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/GuiceUtils.java b/src/main/java/org/apache/aurora/GuiceUtils.java
index a27243c..5d0af1e 100644
--- a/src/main/java/org/apache/aurora/GuiceUtils.java
+++ b/src/main/java/org/apache/aurora/GuiceUtils.java
@@ -20,6 +20,8 @@ import java.util.Set;
 import java.util.logging.Level;
 import java.util.logging.Logger;
 
+import javax.inject.Qualifier;
+
 import com.google.common.base.Function;
 import com.google.common.base.Preconditions;
 import com.google.common.base.Predicate;
@@ -31,7 +33,6 @@ import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableSet;
 import com.google.common.collect.Iterables;
 import com.google.inject.Binder;
-import com.google.inject.BindingAnnotation;
 import com.google.inject.matcher.AbstractMatcher;
 import com.google.inject.matcher.Matcher;
 import com.google.inject.matcher.Matchers;
@@ -52,7 +53,7 @@ public final class GuiceUtils {
 
   // Method annotation that allows a trapped interface to whitelist methods that may throw
   // unchecked exceptions.
-  @BindingAnnotation
+  @Qualifier
   @Target(METHOD) @Retention(RUNTIME)
   public @interface AllowUnchecked { }
 

http://git-wip-us.apache.org/repos/asf/incubator-aurora/blob/d1d089af/src/main/java/org/apache/aurora/scheduler/async/AsyncModule.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/async/AsyncModule.java b/src/main/java/org/apache/aurora/scheduler/async/AsyncModule.java
index e72961a..aa45d27 100644
--- a/src/main/java/org/apache/aurora/scheduler/async/AsyncModule.java
+++ b/src/main/java/org/apache/aurora/scheduler/async/AsyncModule.java
@@ -20,6 +20,7 @@ import java.util.concurrent.ScheduledExecutorService;
 import java.util.concurrent.ScheduledThreadPoolExecutor;
 import java.util.logging.Logger;
 
+import javax.inject.Qualifier;
 import javax.inject.Singleton;
 
 import com.google.common.annotations.VisibleForTesting;
@@ -27,7 +28,6 @@ import com.google.common.base.Optional;
 import com.google.common.util.concurrent.RateLimiter;
 import com.google.inject.AbstractModule;
 import com.google.inject.Binder;
-import com.google.inject.BindingAnnotation;
 import com.google.inject.Key;
 import com.google.inject.PrivateModule;
 import com.google.inject.TypeLiteral;
@@ -165,7 +165,7 @@ public class AsyncModule extends AbstractModule {
   private static final Arg<Amount<Long, Time>> RESERVATION_DURATION =
       Arg.create(Amount.of(3L, Time.MINUTES));
 
-  @BindingAnnotation
+  @Qualifier
   @Target({ FIELD, PARAMETER, METHOD }) @Retention(RUNTIME)
   private @interface PreemptionBinding { }
 

http://git-wip-us.apache.org/repos/asf/incubator-aurora/blob/d1d089af/src/main/java/org/apache/aurora/scheduler/async/Preemptor.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/async/Preemptor.java b/src/main/java/org/apache/aurora/scheduler/async/Preemptor.java
index 4088559..e9f2515 100644
--- a/src/main/java/org/apache/aurora/scheduler/async/Preemptor.java
+++ b/src/main/java/org/apache/aurora/scheduler/async/Preemptor.java
@@ -22,6 +22,7 @@ import java.util.Set;
 import java.util.concurrent.atomic.AtomicLong;
 
 import javax.inject.Inject;
+import javax.inject.Qualifier;
 
 import com.google.common.annotations.VisibleForTesting;
 import com.google.common.base.Function;
@@ -36,7 +37,6 @@ import com.google.common.collect.Multimap;
 import com.google.common.collect.Multimaps;
 import com.google.common.collect.Ordering;
 import com.google.common.collect.Sets;
-import com.google.inject.BindingAnnotation;
 import com.twitter.common.quantity.Amount;
 import com.twitter.common.quantity.Time;
 import com.twitter.common.stats.Stats;
@@ -92,7 +92,7 @@ public interface Preemptor {
      * Binding annotation for the time interval after which a pending task becomes eligible to
      * preempt other tasks.
      */
-    @BindingAnnotation
+    @Qualifier
     @Target({ FIELD, PARAMETER, METHOD }) @Retention(RUNTIME)
     @interface PreemptionDelay { }
 

http://git-wip-us.apache.org/repos/asf/incubator-aurora/blob/d1d089af/src/main/java/org/apache/aurora/scheduler/async/RandomJitterReturnDelay.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/async/RandomJitterReturnDelay.java b/src/main/java/org/apache/aurora/scheduler/async/RandomJitterReturnDelay.java
index 1a65a34..d15d9e6 100644
--- a/src/main/java/org/apache/aurora/scheduler/async/RandomJitterReturnDelay.java
+++ b/src/main/java/org/apache/aurora/scheduler/async/RandomJitterReturnDelay.java
@@ -16,7 +16,6 @@ package org.apache.aurora.scheduler.async;
 import java.util.Objects;
 
 import com.google.common.annotations.VisibleForTesting;
-
 import com.twitter.common.quantity.Amount;
 import com.twitter.common.quantity.Time;
 import com.twitter.common.util.Random;

http://git-wip-us.apache.org/repos/asf/incubator-aurora/blob/d1d089af/src/main/java/org/apache/aurora/scheduler/async/TaskScheduler.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/async/TaskScheduler.java b/src/main/java/org/apache/aurora/scheduler/async/TaskScheduler.java
index d9c4c02..1189ed0 100644
--- a/src/main/java/org/apache/aurora/scheduler/async/TaskScheduler.java
+++ b/src/main/java/org/apache/aurora/scheduler/async/TaskScheduler.java
@@ -21,6 +21,7 @@ import java.util.logging.Level;
 import java.util.logging.Logger;
 
 import javax.inject.Inject;
+import javax.inject.Qualifier;
 
 import com.google.common.annotations.VisibleForTesting;
 import com.google.common.base.Function;
@@ -33,7 +34,6 @@ import com.google.common.cache.CacheBuilder;
 import com.google.common.collect.ImmutableSet;
 import com.google.common.collect.Iterables;
 import com.google.common.eventbus.Subscribe;
-import com.google.inject.BindingAnnotation;
 import com.twitter.common.inject.TimedInterceptor.Timed;
 import com.twitter.common.quantity.Amount;
 import com.twitter.common.quantity.Time;
@@ -91,7 +91,7 @@ public interface TaskScheduler extends EventSubscriber {
     /**
      * Binding annotation for the time duration of reservations.
      */
-    @BindingAnnotation
+    @Qualifier
     @Target({ FIELD, PARAMETER, METHOD }) @Retention(RUNTIME)
     @interface ReservationDuration { }
 

http://git-wip-us.apache.org/repos/asf/incubator-aurora/blob/d1d089af/src/main/java/org/apache/aurora/scheduler/events/NotifyingSchedulingFilter.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/events/NotifyingSchedulingFilter.java b/src/main/java/org/apache/aurora/scheduler/events/NotifyingSchedulingFilter.java
index 5cb0b2d..283f7e1 100644
--- a/src/main/java/org/apache/aurora/scheduler/events/NotifyingSchedulingFilter.java
+++ b/src/main/java/org/apache/aurora/scheduler/events/NotifyingSchedulingFilter.java
@@ -18,8 +18,7 @@ import java.lang.annotation.Target;
 import java.util.Set;
 
 import javax.inject.Inject;
-
-import com.google.inject.BindingAnnotation;
+import javax.inject.Qualifier;
 
 import org.apache.aurora.scheduler.ResourceSlot;
 import org.apache.aurora.scheduler.events.PubsubEvent.Vetoed;
@@ -41,7 +40,7 @@ class NotifyingSchedulingFilter implements SchedulingFilter {
   /**
    * Binding annotation that the underlying {@link SchedulingFilter} must be bound with.
    */
-  @BindingAnnotation
+  @Qualifier
   @Target({FIELD, PARAMETER, METHOD}) @Retention(RUNTIME)
   public @interface NotifyDelegate { }
 

http://git-wip-us.apache.org/repos/asf/incubator-aurora/blob/d1d089af/src/main/java/org/apache/aurora/scheduler/log/mesos/MesosLog.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/log/mesos/MesosLog.java b/src/main/java/org/apache/aurora/scheduler/log/mesos/MesosLog.java
index fd08be1..5a24cc5 100644
--- a/src/main/java/org/apache/aurora/scheduler/log/mesos/MesosLog.java
+++ b/src/main/java/org/apache/aurora/scheduler/log/mesos/MesosLog.java
@@ -27,6 +27,7 @@ import java.util.logging.Logger;
 import javax.annotation.Nullable;
 import javax.inject.Inject;
 import javax.inject.Provider;
+import javax.inject.Qualifier;
 
 import com.google.common.annotations.VisibleForTesting;
 import com.google.common.base.Optional;
@@ -34,7 +35,6 @@ import com.google.common.base.Preconditions;
 import com.google.common.collect.Iterables;
 import com.google.common.collect.UnmodifiableIterator;
 import com.google.common.primitives.Longs;
-import com.google.inject.BindingAnnotation;
 import com.twitter.common.application.Lifecycle;
 import com.twitter.common.base.Function;
 import com.twitter.common.base.MorePreconditions;
@@ -63,7 +63,7 @@ public class MesosLog implements org.apache.aurora.scheduler.log.Log {
   /**
    * Binding annotation for the opaque value of a log noop entry.
    */
-  @BindingAnnotation
+  @Qualifier
   @Retention(RUNTIME)
   @Target({ PARAMETER, METHOD })
   public @interface NoopEntry { }
@@ -71,7 +71,7 @@ public class MesosLog implements org.apache.aurora.scheduler.log.Log {
   /**
    * Binding annotation for log read timeouts.
    */
-  @BindingAnnotation
+  @Qualifier
   @Retention(RUNTIME)
   @Target({ PARAMETER, METHOD })
   public @interface ReadTimeout { }
@@ -79,7 +79,7 @@ public class MesosLog implements org.apache.aurora.scheduler.log.Log {
   /**
    * Binding annotation for log write timeouts - used for truncates and appends.
    */
-  @BindingAnnotation
+  @Qualifier
   @Retention(RUNTIME)
   @Target({ PARAMETER, METHOD })
   public @interface WriteTimeout { }

http://git-wip-us.apache.org/repos/asf/incubator-aurora/blob/d1d089af/src/main/java/org/apache/aurora/scheduler/sla/SlaModule.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/sla/SlaModule.java b/src/main/java/org/apache/aurora/scheduler/sla/SlaModule.java
index 05417ca..b5c8533 100644
--- a/src/main/java/org/apache/aurora/scheduler/sla/SlaModule.java
+++ b/src/main/java/org/apache/aurora/scheduler/sla/SlaModule.java
@@ -20,11 +20,11 @@ import java.util.concurrent.TimeUnit;
 import java.util.logging.Logger;
 
 import javax.inject.Inject;
+import javax.inject.Qualifier;
 
 import com.google.common.annotations.VisibleForTesting;
 import com.google.common.eventbus.Subscribe;
 import com.google.inject.AbstractModule;
-import com.google.inject.BindingAnnotation;
 import com.google.inject.Singleton;
 import com.twitter.common.application.modules.LifecycleModule;
 import com.twitter.common.args.Arg;
@@ -59,7 +59,7 @@ public class SlaModule extends AbstractModule {
       Arg.create(Amount.of(1L, Time.MINUTES));
 
   @VisibleForTesting
-  @BindingAnnotation
+  @Qualifier
   @Target({ FIELD, PARAMETER, METHOD }) @Retention(RUNTIME)
   @interface SlaExecutor { }
 

http://git-wip-us.apache.org/repos/asf/incubator-aurora/blob/d1d089af/src/main/java/org/apache/aurora/scheduler/state/StateManagerImpl.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/state/StateManagerImpl.java b/src/main/java/org/apache/aurora/scheduler/state/StateManagerImpl.java
index 085454c..58b94c2 100644
--- a/src/main/java/org/apache/aurora/scheduler/state/StateManagerImpl.java
+++ b/src/main/java/org/apache/aurora/scheduler/state/StateManagerImpl.java
@@ -39,7 +39,6 @@ import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
 import com.google.common.collect.Ordering;
 import com.google.common.collect.Sets;
-
 import com.twitter.common.util.Clock;
 
 import org.apache.aurora.gen.AssignedTask;

http://git-wip-us.apache.org/repos/asf/incubator-aurora/blob/d1d089af/src/main/java/org/apache/aurora/scheduler/state/TaskLimitValidator.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/state/TaskLimitValidator.java b/src/main/java/org/apache/aurora/scheduler/state/TaskLimitValidator.java
index 779e925..7033373 100644
--- a/src/main/java/org/apache/aurora/scheduler/state/TaskLimitValidator.java
+++ b/src/main/java/org/apache/aurora/scheduler/state/TaskLimitValidator.java
@@ -17,7 +17,6 @@ import javax.inject.Inject;
 
 import com.google.common.annotations.VisibleForTesting;
 import com.google.common.collect.ImmutableMap;
-
 import com.twitter.common.args.Arg;
 import com.twitter.common.args.CmdLine;
 import com.twitter.common.args.constraints.Positive;

http://git-wip-us.apache.org/repos/asf/incubator-aurora/blob/d1d089af/src/main/java/org/apache/aurora/scheduler/stats/AsyncStatsModule.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/stats/AsyncStatsModule.java b/src/main/java/org/apache/aurora/scheduler/stats/AsyncStatsModule.java
index c4435cb..fc0f496 100644
--- a/src/main/java/org/apache/aurora/scheduler/stats/AsyncStatsModule.java
+++ b/src/main/java/org/apache/aurora/scheduler/stats/AsyncStatsModule.java
@@ -20,12 +20,12 @@ import java.util.concurrent.TimeUnit;
 import java.util.logging.Logger;
 
 import javax.inject.Inject;
+import javax.inject.Qualifier;
 import javax.inject.Singleton;
 
 import com.google.common.base.Function;
 import com.google.common.collect.FluentIterable;
 import com.google.inject.AbstractModule;
-import com.google.inject.BindingAnnotation;
 import com.twitter.common.application.modules.LifecycleModule;
 import com.twitter.common.args.Arg;
 import com.twitter.common.args.CmdLine;
@@ -67,7 +67,7 @@ public class AsyncStatsModule extends AbstractModule {
   private static final Arg<Amount<Long, Time>> SLOT_STAT_INTERVAL =
       Arg.create(Amount.of(1L, Time.MINUTES));
 
-  @BindingAnnotation
+  @Qualifier
   @Target({ FIELD, PARAMETER, METHOD }) @Retention(RUNTIME)
   private @interface StatExecutor { }
 

http://git-wip-us.apache.org/repos/asf/incubator-aurora/blob/d1d089af/src/main/java/org/apache/aurora/scheduler/storage/CallOrderEnforcingStorage.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/storage/CallOrderEnforcingStorage.java b/src/main/java/org/apache/aurora/scheduler/storage/CallOrderEnforcingStorage.java
index fc3eaf6..671dbd1 100644
--- a/src/main/java/org/apache/aurora/scheduler/storage/CallOrderEnforcingStorage.java
+++ b/src/main/java/org/apache/aurora/scheduler/storage/CallOrderEnforcingStorage.java
@@ -19,9 +19,9 @@ import java.lang.annotation.RetentionPolicy;
 import java.lang.annotation.Target;
 
 import javax.inject.Inject;
+import javax.inject.Qualifier;
 import javax.inject.Singleton;
 
-import com.google.inject.BindingAnnotation;
 import com.google.inject.Module;
 import com.google.inject.PrivateModule;
 import com.twitter.common.util.StateMachine;
@@ -46,7 +46,7 @@ public class CallOrderEnforcingStorage implements NonVolatileStorage {
    */
   @Retention(RetentionPolicy.RUNTIME)
   @Target({ ElementType.PARAMETER, ElementType.METHOD })
-  @BindingAnnotation
+  @Qualifier
   private @interface EnforceOrderOn { }
 
   private final NonVolatileStorage wrapped;

http://git-wip-us.apache.org/repos/asf/incubator-aurora/blob/d1d089af/src/main/java/org/apache/aurora/scheduler/storage/Storage.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/storage/Storage.java b/src/main/java/org/apache/aurora/scheduler/storage/Storage.java
index f83a71a..775564e 100644
--- a/src/main/java/org/apache/aurora/scheduler/storage/Storage.java
+++ b/src/main/java/org/apache/aurora/scheduler/storage/Storage.java
@@ -18,8 +18,9 @@ import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
 import java.lang.annotation.Target;
 
+import javax.inject.Qualifier;
+
 import com.google.common.collect.ImmutableSet;
-import com.google.inject.BindingAnnotation;
 
 import org.apache.aurora.scheduler.base.Query;
 import org.apache.aurora.scheduler.base.SchedulerException;
@@ -248,7 +249,7 @@ public interface Storage {
    */
   @Retention(RetentionPolicy.RUNTIME)
   @Target({ ElementType.PARAMETER, ElementType.METHOD })
-  @BindingAnnotation
+  @Qualifier
   public @interface Volatile { }
 
   /**

http://git-wip-us.apache.org/repos/asf/incubator-aurora/blob/d1d089af/src/main/java/org/apache/aurora/scheduler/storage/backup/StorageBackup.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/storage/backup/StorageBackup.java b/src/main/java/org/apache/aurora/scheduler/storage/backup/StorageBackup.java
index 4bfb44d..69521d3 100644
--- a/src/main/java/org/apache/aurora/scheduler/storage/backup/StorageBackup.java
+++ b/src/main/java/org/apache/aurora/scheduler/storage/backup/StorageBackup.java
@@ -28,13 +28,13 @@ import java.util.logging.Level;
 import java.util.logging.Logger;
 
 import javax.inject.Inject;
+import javax.inject.Qualifier;
 
 import com.google.common.annotations.VisibleForTesting;
 import com.google.common.base.Function;
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.Ordering;
 import com.google.common.io.Files;
-import com.google.inject.BindingAnnotation;
 import com.twitter.common.quantity.Amount;
 import com.twitter.common.quantity.Time;
 import com.twitter.common.stats.Stats;
@@ -91,7 +91,7 @@ public interface StorageBackup {
     /**
      * Binding annotation that the underlying {@link SnapshotStore} must be bound with.
      */
-    @BindingAnnotation
+    @Qualifier
     @Target({FIELD, PARAMETER, METHOD}) @Retention(RUNTIME)
     @interface SnapshotDelegate { }
 

http://git-wip-us.apache.org/repos/asf/incubator-aurora/blob/d1d089af/src/main/java/org/apache/aurora/scheduler/storage/log/Entries.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/storage/log/Entries.java b/src/main/java/org/apache/aurora/scheduler/storage/log/Entries.java
index 6f94af5..548b5e7 100644
--- a/src/main/java/org/apache/aurora/scheduler/storage/log/Entries.java
+++ b/src/main/java/org/apache/aurora/scheduler/storage/log/Entries.java
@@ -19,7 +19,6 @@ import com.google.common.base.Preconditions;
 
 import org.apache.aurora.codec.ThriftBinaryCodec;
 import org.apache.aurora.codec.ThriftBinaryCodec.CodingException;
-
 import org.apache.aurora.gen.storage.LogEntry;
 import org.apache.aurora.gen.storage.LogEntry._Fields;
 

http://git-wip-us.apache.org/repos/asf/incubator-aurora/blob/d1d089af/src/main/java/org/apache/aurora/scheduler/storage/log/LogManager.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/storage/log/LogManager.java b/src/main/java/org/apache/aurora/scheduler/storage/log/LogManager.java
index 87bd657..156cc80 100644
--- a/src/main/java/org/apache/aurora/scheduler/storage/log/LogManager.java
+++ b/src/main/java/org/apache/aurora/scheduler/storage/log/LogManager.java
@@ -31,6 +31,7 @@ import java.util.logging.Logger;
 
 import javax.annotation.Nullable;
 import javax.inject.Inject;
+import javax.inject.Qualifier;
 
 import com.google.common.annotations.VisibleForTesting;
 import com.google.common.base.Preconditions;
@@ -38,7 +39,6 @@ import com.google.common.collect.ImmutableSet;
 import com.google.common.collect.Iterables;
 import com.google.common.collect.Maps;
 import com.google.common.primitives.Bytes;
-import com.google.inject.BindingAnnotation;
 import com.twitter.common.base.Closure;
 import com.twitter.common.inject.TimedInterceptor.Timed;
 import com.twitter.common.quantity.Amount;
@@ -78,7 +78,7 @@ public class LogManager {
    */
   @Retention(RetentionPolicy.RUNTIME)
   @Target({ ElementType.PARAMETER, ElementType.METHOD })
-  @BindingAnnotation
+  @Qualifier
   public @interface MaxEntrySize { }
 
   /**
@@ -86,7 +86,7 @@ public class LogManager {
    */
   @Retention(RetentionPolicy.RUNTIME)
   @Target({ ElementType.PARAMETER, ElementType.METHOD })
-  @BindingAnnotation
+  @Qualifier
   public @interface SnapshotSetting { }
 
   private static final Logger LOG = Logger.getLogger(LogManager.class.getName());

http://git-wip-us.apache.org/repos/asf/incubator-aurora/blob/d1d089af/src/main/java/org/apache/aurora/scheduler/storage/log/LogStorage.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/storage/log/LogStorage.java b/src/main/java/org/apache/aurora/scheduler/storage/log/LogStorage.java
index 816f450..06e2e8d 100644
--- a/src/main/java/org/apache/aurora/scheduler/storage/log/LogStorage.java
+++ b/src/main/java/org/apache/aurora/scheduler/storage/log/LogStorage.java
@@ -25,10 +25,10 @@ import java.util.logging.Level;
 import java.util.logging.Logger;
 
 import javax.inject.Inject;
+import javax.inject.Qualifier;
 
 import com.google.common.annotations.VisibleForTesting;
 import com.google.common.base.Optional;
-import com.google.inject.BindingAnnotation;
 import com.twitter.common.application.ShutdownRegistry;
 import com.twitter.common.base.Closure;
 import com.twitter.common.inject.TimedInterceptor.Timed;
@@ -201,7 +201,7 @@ public class LogStorage implements NonVolatileStorage, DistributedSnapshotStore
    */
   @Retention(RetentionPolicy.RUNTIME)
   @Target({ ElementType.PARAMETER, ElementType.METHOD })
-  @BindingAnnotation
+  @Qualifier
   public @interface ShutdownGracePeriod { }
 
   /**
@@ -209,7 +209,7 @@ public class LogStorage implements NonVolatileStorage, DistributedSnapshotStore
    */
   @Retention(RetentionPolicy.RUNTIME)
   @Target({ ElementType.PARAMETER, ElementType.METHOD })
-  @BindingAnnotation
+  @Qualifier
   public @interface SnapshotInterval { }
 
   /**
@@ -218,7 +218,7 @@ public class LogStorage implements NonVolatileStorage, DistributedSnapshotStore
    */
   @Retention(RetentionPolicy.RUNTIME)
   @Target({ ElementType.PARAMETER, ElementType.METHOD })
-  @BindingAnnotation
+  @Qualifier
   public @interface WriteBehind { }
 
   @Inject

http://git-wip-us.apache.org/repos/asf/incubator-aurora/blob/d1d089af/src/main/java/org/apache/aurora/scheduler/storage/log/WriteAheadStorage.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/storage/log/WriteAheadStorage.java b/src/main/java/org/apache/aurora/scheduler/storage/log/WriteAheadStorage.java
index ce42ad2..66c9164 100644
--- a/src/main/java/org/apache/aurora/scheduler/storage/log/WriteAheadStorage.java
+++ b/src/main/java/org/apache/aurora/scheduler/storage/log/WriteAheadStorage.java
@@ -23,7 +23,6 @@ import com.google.common.base.Optional;
 import com.google.common.base.Preconditions;
 import com.google.common.collect.ImmutableSet;
 import com.google.common.collect.Maps;
-
 import com.twitter.common.base.MorePreconditions;
 import com.twitter.common.inject.TimedInterceptor.Timed;
 

http://git-wip-us.apache.org/repos/asf/incubator-aurora/blob/d1d089af/src/main/java/org/apache/aurora/scheduler/storage/mem/MemStorage.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/aurora/scheduler/storage/mem/MemStorage.java b/src/main/java/org/apache/aurora/scheduler/storage/mem/MemStorage.java
index 186bc46..31498fa 100644
--- a/src/main/java/org/apache/aurora/scheduler/storage/mem/MemStorage.java
+++ b/src/main/java/org/apache/aurora/scheduler/storage/mem/MemStorage.java
@@ -20,9 +20,9 @@ import java.lang.annotation.Target;
 import java.util.concurrent.atomic.AtomicLong;
 
 import javax.inject.Inject;
+import javax.inject.Qualifier;
 
 import com.google.common.annotations.VisibleForTesting;
-import com.google.inject.BindingAnnotation;
 import com.google.inject.Guice;
 import com.google.inject.Injector;
 import com.google.inject.Key;
@@ -76,7 +76,7 @@ public class MemStorage implements Storage {
    */
   @Retention(RetentionPolicy.RUNTIME)
   @Target({ ElementType.PARAMETER, ElementType.METHOD })
-  @BindingAnnotation
+  @Qualifier
   public @interface Delegated { }
 
   @Inject

http://git-wip-us.apache.org/repos/asf/incubator-aurora/blob/d1d089af/src/test/java/org/apache/aurora/scheduler/quota/QuotaManagerImplTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/aurora/scheduler/quota/QuotaManagerImplTest.java b/src/test/java/org/apache/aurora/scheduler/quota/QuotaManagerImplTest.java
index 49770e5..8381e21 100644
--- a/src/test/java/org/apache/aurora/scheduler/quota/QuotaManagerImplTest.java
+++ b/src/test/java/org/apache/aurora/scheduler/quota/QuotaManagerImplTest.java
@@ -15,7 +15,6 @@ package org.apache.aurora.scheduler.quota;
 
 import com.google.common.base.Optional;
 import com.google.common.collect.ImmutableMap;
-
 import com.twitter.common.testing.easymock.EasyMockTest;
 
 import org.apache.aurora.gen.AssignedTask;

http://git-wip-us.apache.org/repos/asf/incubator-aurora/blob/d1d089af/src/test/java/org/apache/aurora/scheduler/storage/log/SnapshotStoreImplTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/aurora/scheduler/storage/log/SnapshotStoreImplTest.java b/src/test/java/org/apache/aurora/scheduler/storage/log/SnapshotStoreImplTest.java
index d07220a..ab0d501 100644
--- a/src/test/java/org/apache/aurora/scheduler/storage/log/SnapshotStoreImplTest.java
+++ b/src/test/java/org/apache/aurora/scheduler/storage/log/SnapshotStoreImplTest.java
@@ -20,7 +20,6 @@ import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableMap;
 import com.google.common.collect.ImmutableSet;
 import com.google.common.collect.Iterables;
-
 import com.twitter.common.testing.easymock.EasyMockTest;
 import com.twitter.common.util.testing.FakeClock;
 

http://git-wip-us.apache.org/repos/asf/incubator-aurora/blob/d1d089af/src/test/java/org/apache/aurora/scheduler/thrift/aop/MockDecoratedThrift.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/aurora/scheduler/thrift/aop/MockDecoratedThrift.java b/src/test/java/org/apache/aurora/scheduler/thrift/aop/MockDecoratedThrift.java
index 52ff464..52fe0ea 100644
--- a/src/test/java/org/apache/aurora/scheduler/thrift/aop/MockDecoratedThrift.java
+++ b/src/test/java/org/apache/aurora/scheduler/thrift/aop/MockDecoratedThrift.java
@@ -19,9 +19,9 @@ import java.lang.annotation.RetentionPolicy;
 import java.lang.annotation.Target;
 
 import javax.inject.Inject;
+import javax.inject.Qualifier;
 
 import com.google.inject.Binder;
-import com.google.inject.BindingAnnotation;
 
 import org.apache.aurora.gen.AuroraAdmin;
 import org.apache.aurora.scheduler.thrift.auth.DecoratedThrift;
@@ -37,7 +37,7 @@ class MockDecoratedThrift extends ForwardingThrift {
 
   @Retention(RetentionPolicy.RUNTIME)
   @Target({ElementType.PARAMETER, ElementType.METHOD})
-  @BindingAnnotation
+  @Qualifier
   private @interface MockThrift { }
 
   @Inject