You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by jb...@apache.org on 2007/03/19 05:32:33 UTC
svn commit: r519835 - in /incubator/tuscany/java/sca/kernel:
core/src/main/java/org/apache/tuscany/core/component/
core/src/main/java/org/apache/tuscany/core/component/instancefactory/impl/
core/src/main/java/org/apache/tuscany/core/component/scope/ co...
Author: jboynes
Date: Sun Mar 18 21:32:31 2007
New Revision: 519835
URL: http://svn.apache.org/viewvc?view=rev&rev=519835
Log:
implement WireAttacher for system components
clean up optimized wiring
Added:
incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/ComponentObjectFactory.java (with props)
incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/model/SystemPhysicalWireSourceDefinition.java (with props)
incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/model/SystemPhysicalWireTargetDefinition.java (with props)
Removed:
incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/scope/RequestScopeObjectFactory.java
Modified:
incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/SystemSingletonAtomicComponent.java
incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/instancefactory/impl/ReflectiveIFProviderBuilder.java
incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/PojoComponent.java
incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/java/JavaPhysicalComponentBuilder.java
incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/builder/SystemPhysicalComponentBuilder.java
incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/component/AtomicComponent.java
incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/AtomicComponentExtension.java
Added: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/ComponentObjectFactory.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/ComponentObjectFactory.java?view=auto&rev=519835
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/ComponentObjectFactory.java (added)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/ComponentObjectFactory.java Sun Mar 18 21:32:31 2007
@@ -0,0 +1,46 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.tuscany.core.component;
+
+import org.apache.tuscany.spi.ObjectFactory;
+import org.apache.tuscany.spi.ObjectCreationException;
+import org.apache.tuscany.spi.component.ScopeContainer;
+import org.apache.tuscany.spi.component.AtomicComponent;
+import org.apache.tuscany.spi.component.TargetResolutionException;
+
+/**
+ * @version $Rev$ $Date$
+ */
+public class ComponentObjectFactory<T, CONTEXT> implements ObjectFactory<T> {
+ private final AtomicComponent<T> component;
+ private final ScopeContainer<CONTEXT> scopeContainer;
+
+ public ComponentObjectFactory(AtomicComponent<T> component, ScopeContainer<CONTEXT> scopeContainer) {
+ this.component = component;
+ this.scopeContainer = scopeContainer;
+ }
+
+ public T getInstance() throws ObjectCreationException {
+ try {
+ return scopeContainer.getWrapper(component, null).getInstance();
+ } catch (TargetResolutionException e) {
+ throw new ObjectCreationException(e);
+ }
+ }
+}
Propchange: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/ComponentObjectFactory.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/ComponentObjectFactory.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/SystemSingletonAtomicComponent.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/SystemSingletonAtomicComponent.java?view=diff&rev=519835&r1=519834&r2=519835
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/SystemSingletonAtomicComponent.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/SystemSingletonAtomicComponent.java Sun Mar 18 21:32:31 2007
@@ -22,19 +22,19 @@
import java.util.ArrayList;
import java.util.List;
+import org.apache.tuscany.core.injection.SingletonObjectFactory;
import org.apache.tuscany.spi.ObjectCreationException;
-import org.apache.tuscany.spi.idl.java.JavaServiceContract;
+import org.apache.tuscany.spi.ObjectFactory;
import org.apache.tuscany.spi.component.AtomicComponent;
-import org.apache.tuscany.spi.component.TargetResolutionException;
-import org.apache.tuscany.spi.component.TargetInvokerCreationException;
import org.apache.tuscany.spi.component.InstanceWrapper;
+import org.apache.tuscany.spi.component.TargetInvokerCreationException;
+import org.apache.tuscany.spi.component.TargetResolutionException;
import org.apache.tuscany.spi.extension.AbstractComponentExtension;
+import org.apache.tuscany.spi.idl.java.JavaServiceContract;
import org.apache.tuscany.spi.model.Operation;
import org.apache.tuscany.spi.model.Scope;
import org.apache.tuscany.spi.model.ServiceContract;
import org.apache.tuscany.spi.model.physical.PhysicalOperationDefinition;
-import org.apache.tuscany.spi.model.physical.PhysicalWireSourceDefinition;
-import org.apache.tuscany.spi.model.physical.PhysicalWireTargetDefinition;
import org.apache.tuscany.spi.wire.TargetInvoker;
import org.apache.tuscany.spi.wire.Wire;
@@ -44,7 +44,7 @@
* @version $$Rev$$ $$Date$$
*/
public class SystemSingletonAtomicComponent<S, T extends S> extends AbstractComponentExtension
- implements AtomicComponent {
+ implements AtomicComponent<T> {
private T instance;
private List<ServiceContract> serviceContracts = new ArrayList<ServiceContract>();
@@ -98,8 +98,12 @@
throw new UnsupportedOperationException();
}
- public InstanceWrapper<?> createInstanceWrapper() throws ObjectCreationException {
+ public InstanceWrapper<T> createInstanceWrapper() throws ObjectCreationException {
throw new UnsupportedOperationException();
+ }
+
+ public ObjectFactory<T> createObjectFactory() {
+ return new SingletonObjectFactory<T>(instance);
}
public boolean isOptimizable() {
Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/instancefactory/impl/ReflectiveIFProviderBuilder.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/instancefactory/impl/ReflectiveIFProviderBuilder.java?view=diff&rev=519835&r1=519834&r2=519835
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/instancefactory/impl/ReflectiveIFProviderBuilder.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/instancefactory/impl/ReflectiveIFProviderBuilder.java Sun Mar 18 21:32:31 2007
@@ -127,7 +127,7 @@
List<String> argNames = ifpd.getConstructorArguments();
Class[] ctrArgs = new Class[argNames.size()];
for (int i = 0; i < ctrArgs.length; i++) {
- ctrArgs[i++] = cl.loadClass(argNames.get(i));
+ ctrArgs[i] = cl.loadClass(argNames.get(i));
}
return implClass.getDeclaredConstructor(ctrArgs);
}
Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/PojoComponent.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/PojoComponent.java?view=diff&rev=519835&r1=519834&r2=519835
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/PojoComponent.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/PojoComponent.java Sun Mar 18 21:32:31 2007
@@ -45,6 +45,7 @@
import org.apache.tuscany.core.component.InstanceFactory;
import org.apache.tuscany.core.component.InstanceFactoryProvider;
+import org.apache.tuscany.core.component.ComponentObjectFactory;
import org.apache.tuscany.core.model.physical.instancefactory.InjectionSource;
/**
@@ -117,6 +118,10 @@
public InstanceWrapper<T> createInstanceWrapper() {
return instanceFactory.newInstance();
+ }
+
+ public ObjectFactory<T> createObjectFactory() {
+ return new ComponentObjectFactory(this, scopeContainer);
}
public TargetInvoker createTargetInvoker(String targetName, PhysicalOperationDefinition operation)
Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/java/JavaPhysicalComponentBuilder.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/java/JavaPhysicalComponentBuilder.java?view=diff&rev=519835&r1=519834&r2=519835
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/java/JavaPhysicalComponentBuilder.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/java/JavaPhysicalComponentBuilder.java Sun Mar 18 21:32:31 2007
@@ -64,8 +64,8 @@
* @version $Rev$ $Date$
* @param <T> the implementation class for the defined component
*/
-@Service(interfaces={PhysicalComponentBuilder.class, WireAttacher.class})
@EagerInit
+@Service(interfaces={PhysicalComponentBuilder.class, WireAttacher.class})
public class JavaPhysicalComponentBuilder<T>
extends POJOPhysicalComponentBuilder<JavaPhysicalComponentDefinition<T>, JavaComponent<T>>
implements WireAttacher<JavaComponent, JavaPhysicalWireSourceDefinition, JavaPhysicalWireTargetDefinition> {
@@ -119,10 +119,8 @@
InjectionSource referenceSource = new InjectionSource(REFERENCE, sourceUri.getFragment());
Class<?> type = source.getMemberType(referenceSource);
if (definition.isOptimizable()) {
- // FIXME if possible, this is not clean
assert target instanceof AtomicComponent;
- ScopeContainer container = target.getScopeContainer();
- ObjectFactory<?> factory = new InstanceObjectFactory((AtomicComponent) target, container);
+ ObjectFactory<?> factory = ((AtomicComponent<?>)target).createObjectFactory();
source.setObjectFactory(referenceSource, factory);
} else {
ObjectFactory<?> factory = new WireObjectFactory2(type, definition.isConversational(), wire, proxyService);
Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/builder/SystemPhysicalComponentBuilder.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/builder/SystemPhysicalComponentBuilder.java?view=diff&rev=519835&r1=519834&r2=519835
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/builder/SystemPhysicalComponentBuilder.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/builder/SystemPhysicalComponentBuilder.java Sun Mar 18 21:32:31 2007
@@ -22,26 +22,43 @@
import org.osoa.sca.annotations.EagerInit;
import org.osoa.sca.annotations.Reference;
+import org.osoa.sca.annotations.Service;
import org.apache.tuscany.core.component.InstanceFactoryProvider;
import org.apache.tuscany.core.component.instancefactory.IFProviderBuilderRegistry;
import org.apache.tuscany.core.implementation.POJOPhysicalComponentBuilder;
+import org.apache.tuscany.core.implementation.java.JavaComponent;
import org.apache.tuscany.core.implementation.system.component.SystemComponent;
import org.apache.tuscany.core.implementation.system.model.SystemPhysicalComponentDefinition;
+import org.apache.tuscany.core.implementation.system.model.SystemPhysicalWireTargetDefinition;
+import org.apache.tuscany.core.implementation.system.model.SystemPhysicalWireSourceDefinition;
+import org.apache.tuscany.core.model.physical.java.JavaPhysicalWireSourceDefinition;
+import org.apache.tuscany.core.model.physical.java.JavaPhysicalWireTargetDefinition;
+import org.apache.tuscany.core.model.physical.instancefactory.InjectionSource;
+import static org.apache.tuscany.core.model.physical.instancefactory.InjectionSource.ValueSourceType.REFERENCE;
import org.apache.tuscany.spi.builder.BuilderException;
+import org.apache.tuscany.spi.builder.WiringException;
+import org.apache.tuscany.spi.builder.physical.PhysicalComponentBuilder;
import org.apache.tuscany.spi.builder.physical.PhysicalComponentBuilderRegistry;
+import org.apache.tuscany.spi.builder.physical.WireAttacher;
import org.apache.tuscany.spi.component.ScopeContainer;
import org.apache.tuscany.spi.component.ScopeRegistry;
-import org.apache.tuscany.spi.model.physical.InstanceFactoryProviderDefinition;
+import org.apache.tuscany.spi.component.Component;
+import org.apache.tuscany.spi.component.AtomicComponent;
import org.apache.tuscany.spi.model.Scope;
+import org.apache.tuscany.spi.model.physical.InstanceFactoryProviderDefinition;
import org.apache.tuscany.spi.services.classloading.ClassLoaderRegistry;
+import org.apache.tuscany.spi.wire.Wire;
+import org.apache.tuscany.spi.ObjectFactory;
/**
* @version $Rev$ $Date$
*/
@EagerInit
+@Service(interfaces = {PhysicalComponentBuilder.class, WireAttacher.class})
public class SystemPhysicalComponentBuilder<T>
- extends POJOPhysicalComponentBuilder<SystemPhysicalComponentDefinition<T>, SystemComponent<T>> {
+ extends POJOPhysicalComponentBuilder<SystemPhysicalComponentDefinition<T>, SystemComponent<T>>
+ implements WireAttacher<SystemComponent, SystemPhysicalWireSourceDefinition, SystemPhysicalWireTargetDefinition> {
public SystemPhysicalComponentBuilder(
@Reference(name = "builderRegistry")PhysicalComponentBuilderRegistry builderRegistry,
@@ -66,5 +83,23 @@
InstanceFactoryProvider<T> provider = providerBuilders.build(providerDefinition, classLoader);
return new SystemComponent<T>(componentId, provider, scopeContainer, groupId, initLevel, -1, -1);
+ }
+
+ public void attach(SystemComponent source,
+ Component target,
+ Wire wire,
+ SystemPhysicalWireSourceDefinition definition) throws WiringException {
+ assert target instanceof AtomicComponent;
+ AtomicComponent<?> targetComponent = (AtomicComponent<?>) target;
+ URI sourceUri = definition.getUri();
+ InjectionSource referenceSource = new InjectionSource(REFERENCE, sourceUri.getFragment());
+ ObjectFactory<?> factory = targetComponent.createObjectFactory();
+ source.setObjectFactory(referenceSource, factory);
+ }
+
+ public void attach(SystemComponent component,
+ Wire wire,
+ SystemPhysicalWireTargetDefinition definition) throws WiringException {
+ // nothing to do here as the wire will always be optimized
}
}
Added: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/model/SystemPhysicalWireSourceDefinition.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/model/SystemPhysicalWireSourceDefinition.java?view=auto&rev=519835
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/model/SystemPhysicalWireSourceDefinition.java (added)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/model/SystemPhysicalWireSourceDefinition.java Sun Mar 18 21:32:31 2007
@@ -0,0 +1,30 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.tuscany.core.implementation.system.model;
+
+import org.apache.tuscany.spi.model.physical.PhysicalWireSourceDefinition;
+
+/**
+ * Models a System physical wire source definition.
+ *
+ * @version $Revision$ $Date: 2007-02-28 06:29:37 +0000 (Wed, 28 Feb
+ * 2007) $
+ */
+public class SystemPhysicalWireSourceDefinition extends PhysicalWireSourceDefinition {
+}
Propchange: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/model/SystemPhysicalWireSourceDefinition.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/model/SystemPhysicalWireSourceDefinition.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/model/SystemPhysicalWireTargetDefinition.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/model/SystemPhysicalWireTargetDefinition.java?view=auto&rev=519835
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/model/SystemPhysicalWireTargetDefinition.java (added)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/model/SystemPhysicalWireTargetDefinition.java Sun Mar 18 21:32:31 2007
@@ -0,0 +1,31 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.tuscany.core.implementation.system.model;
+
+import org.apache.tuscany.spi.model.physical.PhysicalWireTargetDefinition;
+
+/**
+ * Models a Java physical wire target definition.
+ *
+ * @version $Revision$ $Date: 2007-02-28 06:29:37 +0000 (Wed, 28 Feb
+ * 2007) $
+ */
+public class SystemPhysicalWireTargetDefinition extends PhysicalWireTargetDefinition {
+
+}
Propchange: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/model/SystemPhysicalWireTargetDefinition.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/model/SystemPhysicalWireTargetDefinition.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Modified: incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/component/AtomicComponent.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/component/AtomicComponent.java?view=diff&rev=519835&r1=519834&r2=519835
==============================================================================
--- incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/component/AtomicComponent.java (original)
+++ incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/component/AtomicComponent.java Sun Mar 18 21:32:31 2007
@@ -19,6 +19,7 @@
package org.apache.tuscany.spi.component;
import org.apache.tuscany.spi.ObjectCreationException;
+import org.apache.tuscany.spi.ObjectFactory;
/**
* The runtime instantiation of an SCA atomic, or leaf-type, component
@@ -65,6 +66,13 @@
* @throws ObjectCreationException if there was a problem instantiating the implementation
*/
InstanceWrapper<T> createInstanceWrapper() throws ObjectCreationException;
+
+ /**
+ * Create an ObjectFactory that returns an instance of this AtomicComponent.
+ *
+ * @return an ObjectFactory that returns an instance of this AtomicComponent
+ */
+ ObjectFactory<T> createObjectFactory();
/**
* Creates a new implementation instance, generally used as a callback by a {@link
Modified: incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/AtomicComponentExtension.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/AtomicComponentExtension.java?view=diff&rev=519835&r1=519834&r2=519835
==============================================================================
--- incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/AtomicComponentExtension.java (original)
+++ incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/AtomicComponentExtension.java Sun Mar 18 21:32:31 2007
@@ -21,6 +21,7 @@
import java.net.URI;
import org.apache.tuscany.spi.CoreRuntimeException;
+import org.apache.tuscany.spi.ObjectFactory;
import org.apache.tuscany.spi.component.AtomicComponent;
import org.apache.tuscany.spi.component.ComponentException;
import org.apache.tuscany.spi.component.ScopeContainer;
@@ -108,4 +109,7 @@
scopeContainer.remove(this);
}
+ public ObjectFactory createObjectFactory() {
+ throw new UnsupportedOperationException();
+ }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org