|
|
Mozy Online Backup: 2GB Free. Automatic. Secure.
Subject: [picocontainer-scm] [2328] java/picocontainer/trunk/container/src/test/org/picocontainer/tck/AbstractPicoContainerTestCase.java: make it more clear that caching makes this possible - msg#00238
List: java.picocontainer.cvs
Revision 2328
Author paul
Date 2005-08-27 18:29:01 -0400 (Sat, 27 Aug 2005)
Log Message
make it more clear that caching makes this possible
Modified Paths
Diff
Modified: java/picocontainer/trunk/container/src/test/org/picocontainer/tck/AbstractPicoContainerTestCase.java (2327 => 2328)
--- java/picocontainer/trunk/container/src/test/org/picocontainer/tck/AbstractPicoContainerTestCase.java 2005-08-27 22:28:01 UTC (rev 2327)
+++ java/picocontainer/trunk/container/src/test/org/picocontainer/tck/AbstractPicoContainerTestCase.java 2005-08-27 22:29:01 UTC (rev 2328)
@@ -349,7 +349,7 @@
}
}
- public void testSameInstanceCanBeUsedAsDifferentType() {
+ public void testSameInstanceCanBeUsedAsDifferentTypeWhenCaching() {
MutablePicoContainer pico = createPicoContainer(null);
pico.registerComponentImplementation("wt", WashableTouchable.class);
pico.registerComponentImplementation("nw", NeedsWashable.class);
Was this page helpful?
Thread at a glance:
Previous Message by Date:
click to view message preview
[picocontainer-scm] [2327] java/picocontainer/trunk/container/src/java/org/picocontainer/defaults/CachingComponentAdapter.java: caches should have a flush method right ?
Revision 2327
Author paul
Date 2005-08-27 18:28:01 -0400 (Sat, 27 Aug 2005)
Log Message
caches should have a flush method right ?
Modified Paths
java/picocontainer/trunk/container/src/java/org/picocontainer/defaults/CachingComponentAdapter.java
Diff
Modified: java/picocontainer/trunk/container/src/java/org/picocontainer/defaults/CachingComponentAdapter.java (2326 => 2327)
--- java/picocontainer/trunk/container/src/java/org/picocontainer/defaults/CachingComponentAdapter.java 2005-08-27 22:27:25 UTC (rev 2326)
+++ java/picocontainer/trunk/container/src/java/org/picocontainer/defaults/CachingComponentAdapter.java 2005-08-27 22:28:01 UTC (rev 2327)
@@ -39,4 +39,9 @@
}
return instanceReference.get();
}
+
+ public void flush() {
+ instanceReference.set(null);
+ }
+
}
Next Message by Date:
click to view message preview
[picocontainer-scm] [2329] java/nanocontainer/trunk: moved boot to booter and taken out of sandbox
Revision 2329
Author paul
Date 2005-08-28 11:22:40 -0400 (Sun, 28 Aug 2005)
Log Message
moved boot to booter and taken out of sandbox
Modified Paths
java/picocontainer/trunk/container/src/java/org/picocontainer/alternatives/CachingPicoContainer.java
Added Paths
java/nanocontainer/trunk/booter/
Removed Paths
java/nanocontainer-sandbox/trunk/boot/
Diff
Copied: java/nanocontainer/trunk/booter (from rev 2328, java/nanocontainer-sandbox/trunk/boot)
Modified: java/picocontainer/trunk/container/src/java/org/picocontainer/alternatives/CachingPicoContainer.java (2328 => 2329)
--- java/picocontainer/trunk/container/src/java/org/picocontainer/alternatives/CachingPicoContainer.java 2005-08-27 22:29:01 UTC (rev 2328)
+++ java/picocontainer/trunk/container/src/java/org/picocontainer/alternatives/CachingPicoContainer.java 2005-08-28 15:22:40 UTC (rev 2329)
@@ -12,11 +12,7 @@
import org.picocontainer.MutablePicoContainer;
import org.picocontainer.PicoContainer;
import org.picocontainer.LifecycleManager;
-import org.picocontainer.defaults.CachingComponentAdapterFactory;
-import org.picocontainer.defaults.ComponentAdapterFactory;
-import org.picocontainer.defaults.DefaultComponentAdapterFactory;
-import org.picocontainer.defaults.DefaultPicoContainer;
-import org.picocontainer.defaults.DefaultLifecycleManager;
+import org.picocontainer.defaults.*;
import java.io.Serializable;
@@ -30,47 +26,52 @@
*/
public class CachingPicoContainer extends AbstractDelegatingMutablePicoContainer implements Serializable {
private LifecycleManager lifecycleManager;
- private CachingComponentAdapterFactory caf;
/**
* Creates a new container with a parent container.
*/
- public CachingPicoContainer(CachingComponentAdapterFactory caf, PicoContainer parent, LifecycleManager lifecycleManager) {
- super(new DefaultPicoContainer(caf, parent, lifecycleManager));
+ public CachingPicoContainer(ComponentAdapterFactory caf, PicoContainer parent, LifecycleManager lifecycleManager) {
+ super(new DefaultPicoContainer(makeComponentAdapterFactory(caf), parent, lifecycleManager));
this.lifecycleManager = lifecycleManager;
- this.caf = caf;
}
/**
* Creates a new container with a parent container.
*/
- public CachingPicoContainer(CachingComponentAdapterFactory caf, PicoContainer parent) {
+ private CachingPicoContainer(CachingComponentAdapterFactory caf, PicoContainer parent) {
this(caf, parent, new DefaultLifecycleManager());
}
+ private static CachingComponentAdapterFactory makeComponentAdapterFactory(ComponentAdapterFactory caf) {
+ if (caf instanceof CachingComponentAdapterFactory) {
+ return (CachingComponentAdapterFactory) caf;
+ }
+ return new CachingComponentAdapterFactory(caf);
+ }
+
public CachingPicoContainer(ComponentAdapterFactory caf, PicoContainer parent) {
- this(new CachingComponentAdapterFactory(caf), parent);
+ this(makeComponentAdapterFactory(caf), parent);
}
/**
* Creates a new container with a parent container.
*/
public CachingPicoContainer(PicoContainer parent) {
- this(new DefaultComponentAdapterFactory(), parent);
+ this(makeComponentAdapterFactory(new ConstructorInjectionComponentAdapterFactory()), parent);
}
/**
* Creates a new container with a parent container.
*/
public CachingPicoContainer(PicoContainer parent, LifecycleManager lifecycleManager) {
- this(new CachingComponentAdapterFactory(new DefaultComponentAdapterFactory()), parent, lifecycleManager);
+ this(makeComponentAdapterFactory(new ConstructorInjectionComponentAdapterFactory()), parent, lifecycleManager);
}
/**
* Creates a new container with a parent container.
*/
public CachingPicoContainer(ComponentAdapterFactory caf) {
- this(caf, null);
+ this(makeComponentAdapterFactory(caf), null);
}
Previous Message by Thread:
click to view message preview
[picocontainer-scm] [2327] java/picocontainer/trunk/container/src/java/org/picocontainer/defaults/CachingComponentAdapter.java: caches should have a flush method right ?
Revision 2327
Author paul
Date 2005-08-27 18:28:01 -0400 (Sat, 27 Aug 2005)
Log Message
caches should have a flush method right ?
Modified Paths
java/picocontainer/trunk/container/src/java/org/picocontainer/defaults/CachingComponentAdapter.java
Diff
Modified: java/picocontainer/trunk/container/src/java/org/picocontainer/defaults/CachingComponentAdapter.java (2326 => 2327)
--- java/picocontainer/trunk/container/src/java/org/picocontainer/defaults/CachingComponentAdapter.java 2005-08-27 22:27:25 UTC (rev 2326)
+++ java/picocontainer/trunk/container/src/java/org/picocontainer/defaults/CachingComponentAdapter.java 2005-08-27 22:28:01 UTC (rev 2327)
@@ -39,4 +39,9 @@
}
return instanceReference.get();
}
+
+ public void flush() {
+ instanceReference.set(null);
+ }
+
}
Next Message by Thread:
click to view message preview
[picocontainer-scm] [2329] java/nanocontainer/trunk: moved boot to booter and taken out of sandbox
Revision 2329
Author paul
Date 2005-08-28 11:22:40 -0400 (Sun, 28 Aug 2005)
Log Message
moved boot to booter and taken out of sandbox
Modified Paths
java/picocontainer/trunk/container/src/java/org/picocontainer/alternatives/CachingPicoContainer.java
Added Paths
java/nanocontainer/trunk/booter/
Removed Paths
java/nanocontainer-sandbox/trunk/boot/
Diff
Copied: java/nanocontainer/trunk/booter (from rev 2328, java/nanocontainer-sandbox/trunk/boot)
Modified: java/picocontainer/trunk/container/src/java/org/picocontainer/alternatives/CachingPicoContainer.java (2328 => 2329)
--- java/picocontainer/trunk/container/src/java/org/picocontainer/alternatives/CachingPicoContainer.java 2005-08-27 22:29:01 UTC (rev 2328)
+++ java/picocontainer/trunk/container/src/java/org/picocontainer/alternatives/CachingPicoContainer.java 2005-08-28 15:22:40 UTC (rev 2329)
@@ -12,11 +12,7 @@
import org.picocontainer.MutablePicoContainer;
import org.picocontainer.PicoContainer;
import org.picocontainer.LifecycleManager;
-import org.picocontainer.defaults.CachingComponentAdapterFactory;
-import org.picocontainer.defaults.ComponentAdapterFactory;
-import org.picocontainer.defaults.DefaultComponentAdapterFactory;
-import org.picocontainer.defaults.DefaultPicoContainer;
-import org.picocontainer.defaults.DefaultLifecycleManager;
+import org.picocontainer.defaults.*;
import java.io.Serializable;
@@ -30,47 +26,52 @@
*/
public class CachingPicoContainer extends AbstractDelegatingMutablePicoContainer implements Serializable {
private LifecycleManager lifecycleManager;
- private CachingComponentAdapterFactory caf;
/**
* Creates a new container with a parent container.
*/
- public CachingPicoContainer(CachingComponentAdapterFactory caf, PicoContainer parent, LifecycleManager lifecycleManager) {
- super(new DefaultPicoContainer(caf, parent, lifecycleManager));
+ public CachingPicoContainer(ComponentAdapterFactory caf, PicoContainer parent, LifecycleManager lifecycleManager) {
+ super(new DefaultPicoContainer(makeComponentAdapterFactory(caf), parent, lifecycleManager));
this.lifecycleManager = lifecycleManager;
- this.caf = caf;
}
/**
* Creates a new container with a parent container.
*/
- public CachingPicoContainer(CachingComponentAdapterFactory caf, PicoContainer parent) {
+ private CachingPicoContainer(CachingComponentAdapterFactory caf, PicoContainer parent) {
this(caf, parent, new DefaultLifecycleManager());
}
+ private static CachingComponentAdapterFactory makeComponentAdapterFactory(ComponentAdapterFactory caf) {
+ if (caf instanceof CachingComponentAdapterFactory) {
+ return (CachingComponentAdapterFactory) caf;
+ }
+ return new CachingComponentAdapterFactory(caf);
+ }
+
public CachingPicoContainer(ComponentAdapterFactory caf, PicoContainer parent) {
- this(new CachingComponentAdapterFactory(caf), parent);
+ this(makeComponentAdapterFactory(caf), parent);
}
/**
* Creates a new container with a parent container.
*/
public CachingPicoContainer(PicoContainer parent) {
- this(new DefaultComponentAdapterFactory(), parent);
+ this(makeComponentAdapterFactory(new ConstructorInjectionComponentAdapterFactory()), parent);
}
/**
* Creates a new container with a parent container.
*/
public CachingPicoContainer(PicoContainer parent, LifecycleManager lifecycleManager) {
- this(new CachingComponentAdapterFactory(new DefaultComponentAdapterFactory()), parent, lifecycleManager);
+ this(makeComponentAdapterFactory(new ConstructorInjectionComponentAdapterFactory()), parent, lifecycleManager);
}
/**
* Creates a new container with a parent container.
*/
public CachingPicoContainer(ComponentAdapterFactory caf) {
- this(caf, null);
+ this(makeComponentAdapterFactory(caf), null);
}
|
|