You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by jm...@apache.org on 2007/01/05 12:51:10 UTC
svn commit: r492996 - in /incubator/tuscany/java/sca/kernel/core/src:
main/java/org/apache/tuscany/core/component/scope/
test/java/org/apache/tuscany/core/component/scope/
Author: jmarino
Date: Fri Jan 5 03:51:09 2007
New Revision: 492996
URL: http://svn.apache.org/viewvc?view=rev&rev=492996
Log:
remove eager initializatin for request scope components per SCA spec changes
Modified:
incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/scope/RequestScopeContainer.java
incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/RequestScopeInitDestroyErrorTestCase.java
incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/RequestScopeInstanceLifecycleTestCase.java
Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/scope/RequestScopeContainer.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/scope/RequestScopeContainer.java?view=diff&rev=492996&r1=492995&r2=492996
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/scope/RequestScopeContainer.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/scope/RequestScopeContainer.java Fri Jan 5 03:51:09 2007
@@ -24,7 +24,6 @@
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
-import org.apache.tuscany.spi.ObjectCreationException;
import org.apache.tuscany.spi.component.AtomicComponent;
import org.apache.tuscany.spi.component.ScopeContainerMonitor;
import org.apache.tuscany.spi.component.TargetDestructionException;
@@ -34,7 +33,6 @@
import org.apache.tuscany.spi.model.Scope;
import org.apache.tuscany.core.component.event.RequestEnd;
-import org.apache.tuscany.core.component.event.RequestStart;
/**
* A scope context which manages atomic component instances keyed on the current request context
@@ -57,19 +55,7 @@
public void onEvent(Event event) {
checkInit();
- if (event instanceof RequestStart) {
- for (Map.Entry<AtomicComponent, Map<Thread, InstanceWrapper>> entry : contexts.entrySet()) {
- if (entry.getKey().isEagerInit()) {
- try {
- getInstance(entry.getKey());
- } catch (TargetResolutionException e) {
- monitor.eagerInitializationError(e);
- } catch (ObjectCreationException e) {
- monitor.eagerInitializationError(e);
- }
- }
- }
- } else if (event instanceof RequestEnd) {
+ if (event instanceof RequestEnd) {
shutdownInstances(Thread.currentThread());
}
}
Modified: incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/RequestScopeInitDestroyErrorTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/RequestScopeInitDestroyErrorTestCase.java?view=diff&rev=492996&r1=492995&r2=492996
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/RequestScopeInitDestroyErrorTestCase.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/RequestScopeInitDestroyErrorTestCase.java Fri Jan 5 03:51:09 2007
@@ -35,24 +35,6 @@
*/
public class RequestScopeInitDestroyErrorTestCase extends TestCase {
- public void testInitializeErrorMonitor() throws Exception {
- ScopeContainerMonitor monitor;
- monitor = EasyMock.createMock(ScopeContainerMonitor.class);
- monitor.eagerInitializationError(EasyMock.isA(ObjectCreationException.class));
- EasyMock.replay(monitor);
- RequestScopeContainer scope = new RequestScopeContainer(new WorkContextImpl(), monitor);
- scope.start();
- AtomicComponent component = EasyMock.createMock(AtomicComponent.class);
- component.addListener(EasyMock.isA(RuntimeEventListener.class));
- EasyMock.expect(component.getName()).andReturn("foo").atLeastOnce();
- EasyMock.expect(component.createInstance()).andThrow(new ObjectCreationException(""));
- EasyMock.expect(component.isEagerInit()).andReturn(true);
- EasyMock.replay(component);
- scope.register(component);
- scope.onEvent(new RequestStart(this));
- EasyMock.verify(monitor);
- }
-
public void testDestroyErrorMonitor() throws Exception {
ScopeContainerMonitor monitor;
monitor = EasyMock.createMock(ScopeContainerMonitor.class);
@@ -64,13 +46,13 @@
component.addListener(EasyMock.isA(RuntimeEventListener.class));
EasyMock.expect(component.getName()).andReturn("foo").atLeastOnce();
EasyMock.expect(component.createInstance()).andReturn(new Object());
- EasyMock.expect(component.isEagerInit()).andReturn(true);
component.init(EasyMock.isA(Object.class));
component.destroy(EasyMock.isA(Object.class));
EasyMock.expectLastCall().andThrow(new TargetDestructionException("", ""));
EasyMock.replay(component);
scope.register(component);
scope.onEvent(new RequestStart(this));
+ scope.getInstance(component);
scope.onEvent(new RequestEnd(this));
EasyMock.verify(monitor);
}
Modified: incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/RequestScopeInstanceLifecycleTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/RequestScopeInstanceLifecycleTestCase.java?view=diff&rev=492996&r1=492995&r2=492996
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/RequestScopeInstanceLifecycleTestCase.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/RequestScopeInstanceLifecycleTestCase.java Fri Jan 5 03:51:09 2007
@@ -45,7 +45,6 @@
Foo comp = new Foo();
AtomicComponent component = EasyMock.createMock(AtomicComponent.class);
EasyMock.expect(component.createInstance()).andReturn(comp);
- EasyMock.expect(component.isEagerInit()).andReturn(false).atLeastOnce();
component.init(EasyMock.eq(comp));
component.destroy(EasyMock.eq(comp));
EasyMock.replay(component);
@@ -64,11 +63,11 @@
RequestScopeContainer scope = new RequestScopeContainer(ctx, null);
scope.start();
- AtomicComponent oneComponent = createComponent(false);
+ AtomicComponent oneComponent = createComponent();
scope.register(oneComponent);
- AtomicComponent twoComponent = createComponent(false);
+ AtomicComponent twoComponent = createComponent();
scope.register(twoComponent);
- AtomicComponent threeComponent = createComponent(false);
+ AtomicComponent threeComponent = createComponent();
scope.register(threeComponent);
scope.onEvent(new RequestStart(this));
@@ -95,35 +94,14 @@
EasyMock.verify(threeComponent);
}
- public void testEagerInitDestroyOrder() throws Exception {
- WorkContext ctx = new WorkContextImpl();
- RequestScopeContainer scope = new RequestScopeContainer(ctx, null);
- scope.start();
-
- AtomicComponent oneComponent = createComponent(true);
- scope.register(oneComponent);
- AtomicComponent twoComponent = createComponent(true);
- scope.register(twoComponent);
- AtomicComponent threeComponent = createComponent(true);
- scope.register(threeComponent);
-
- scope.onEvent(new RequestStart(this));
- scope.onEvent(new RequestEnd(this));
- scope.stop();
- EasyMock.verify(oneComponent);
- EasyMock.verify(twoComponent);
- EasyMock.verify(threeComponent);
- }
-
@SuppressWarnings("unchecked")
- private AtomicComponent createComponent(boolean init) throws TargetException {
+ private AtomicComponent createComponent() throws TargetException {
AtomicComponent component = EasyMock.createMock(AtomicComponent.class);
EasyMock.expect(component.createInstance()).andStubAnswer(new IAnswer() {
public Object answer() throws Throwable {
return new OrderedInitPojoImpl();
}
});
- EasyMock.expect(component.isEagerInit()).andReturn(init).atLeastOnce();
component.init(EasyMock.isA(OrderedInitPojoImpl.class));
EasyMock.expectLastCall().andAnswer(new IAnswer() {
public Object answer() throws Throwable {
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org