Cleanup after the big errors refactoring.
SourceProviders are now used a lot at bind time, but not afterwards, when the injector is actually being built. We might be able to make this class non-static if we attach it to the Binder.
Renamed ResolveFailedException to ErrorsException.
git-svn-id: https://google-guice.googlecode.com/svn/trunk@521 d779f126-a31b-0410-b53b-1d3aecad763e
diff --git a/src/com/google/inject/RequestStaticInjectionCommandProcessor.java b/src/com/google/inject/RequestStaticInjectionCommandProcessor.java
index e883cd6..a2ba1a3 100644
--- a/src/com/google/inject/RequestStaticInjectionCommandProcessor.java
+++ b/src/com/google/inject/RequestStaticInjectionCommandProcessor.java
@@ -20,8 +20,7 @@
import com.google.inject.InjectorImpl.SingleMemberInjector;
import com.google.inject.commands.RequestStaticInjectionCommand;
import com.google.inject.internal.Errors;
-import com.google.inject.internal.ResolveFailedException;
-import com.google.inject.spi.SourceProviders;
+import com.google.inject.internal.ErrorsException;
import java.util.List;
/**
@@ -69,14 +68,15 @@
}
void validate(final InjectorImpl injector) {
- SourceProviders.withDefault(source, new Runnable() {
- public void run() {
- injector.addSingleInjectorsForFields(
- type.getDeclaredFields(), true, memberInjectors, errors);
- injector.addSingleInjectorsForMethods(
- type.getDeclaredMethods(), true, memberInjectors, errors);
- }
- });
+ errors.pushSource(source);
+ try {
+ injector.addSingleInjectorsForFields(
+ type.getDeclaredFields(), true, memberInjectors, errors);
+ injector.addSingleInjectorsForMethods(
+ type.getDeclaredMethods(), true, memberInjectors, errors);
+ } finally {
+ errors.popSource(source);
+ }
}
void injectMembers(InjectorImpl injector) {
@@ -89,7 +89,7 @@
return null;
}
});
- } catch (ResolveFailedException e) {
+ } catch (ErrorsException e) {
throw new AssertionError();
}
}