Redesigned scopes to enable custom implementations. Renamed DependencyException to ConfigurationException. Cleaned up Container's interface. It now returns a Factory instead of a direct instance so clients don't have to keep passing in the paramters resulting in a map lookup. Added support for injecting Factory<T> where T is any bound type.
git-svn-id: https://google-guice.googlecode.com/svn/trunk@17 d779f126-a31b-0410-b53b-1d3aecad763e
diff --git a/src/com/google/inject/InternalContext.java b/src/com/google/inject/InternalContext.java
index 322e065..d79b5d6 100644
--- a/src/com/google/inject/InternalContext.java
+++ b/src/com/google/inject/InternalContext.java
@@ -30,12 +30,10 @@
final ContainerImpl container;
final Map<Object, ConstructionContext<?>> constructionContexts =
new HashMap<Object, ConstructionContext<?>>();
- final Scope.Strategy scopeStrategy;
ExternalContext<?> externalContext;
- InternalContext(ContainerImpl container, Scope.Strategy scopeStrategy) {
+ InternalContext(ContainerImpl container) {
this.container = container;
- this.scopeStrategy = scopeStrategy;
}
public Container getContainer() {
@@ -46,15 +44,6 @@
return container;
}
- Scope.Strategy getScopeStrategy() {
- if (scopeStrategy == null) {
- throw new IllegalStateException("Scope strategy not set. "
- + "Please call Container.setScopeStrategy().");
- }
-
- return scopeStrategy;
- }
-
@SuppressWarnings("unchecked")
<T> ConstructionContext<T> getConstructionContext(Object key) {
ConstructionContext<T> constructionContext =