From f860c2f35b2f94e379d2ff7d5c13f54cd4a3132a Mon Sep 17 00:00:00 2001 From: lresende Date: Wed, 11 Nov 2009 23:06:42 +0000 Subject: Moving 1.x branches git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@835119 13f79535-47bb-0310-9956-ffa450edef68 --- .../spring/assembly/impl/BeanAssemblyFactory.java | 135 ------------- .../spring/assembly/impl/BeanComponentImpl.java | 211 --------------------- .../spring/assembly/impl/BeanReferenceImpl.java | 65 ------- .../sca/core/spring/context/ModelResolverImpl.java | 88 --------- .../sca/core/spring/context/SCADomainContext.java | 195 ------------------- .../java/impl/BeanBaseJavaImplementationImpl.java | 182 ------------------ .../java/impl/BeanJavaImplementationFactory.java | 43 ----- .../java/impl/BeanJavaImplementationImpl.java | 164 ---------------- .../java/impl/BeanJavaInterfaceContractImpl.java | 34 ---- .../java/impl/BeanJavaInterfaceFactory.java | 44 ----- .../java/impl/BeanJavaInterfaceImpl.java | 118 ------------ .../src/test/java/calculator/AddService.java | 25 --- .../src/test/java/calculator/AddServiceImpl.java | 35 ---- .../src/test/java/calculator/CalculatorClient.java | 41 ---- .../test/java/calculator/CalculatorService.java | 34 ---- .../java/calculator/CalculatorServiceImpl.java | 71 ------- .../src/test/java/calculator/DivideService.java | 25 --- .../test/java/calculator/DivideServiceImpl.java | 33 ---- .../src/test/java/calculator/MultiplyService.java | 25 --- .../test/java/calculator/MultiplyServiceImpl.java | 33 ---- .../java/calculator/NestedCalculatorClient.java | 44 ----- .../src/test/java/calculator/SubtractService.java | 25 --- .../test/java/calculator/SubtractServiceImpl.java | 33 ---- .../sca/core/spring/CalculatorTestCase.java | 54 ------ .../sca/core/spring/NestedCalculatorTestCase.java | 57 ------ .../tuscany/sca/core/spring/Calculator.composite | 52 ----- .../sca/core/spring/InnerCalculator.composite | 42 ---- .../sca/core/spring/InnerOperations.composite | 57 ------ .../sca/core/spring/OuterCalculator.composite | 41 ---- 29 files changed, 2006 deletions(-) delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/assembly/impl/BeanAssemblyFactory.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/assembly/impl/BeanComponentImpl.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/assembly/impl/BeanReferenceImpl.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/context/ModelResolverImpl.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/context/SCADomainContext.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/implementation/java/impl/BeanBaseJavaImplementationImpl.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/implementation/java/impl/BeanJavaImplementationFactory.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/implementation/java/impl/BeanJavaImplementationImpl.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/implementation/java/impl/BeanJavaInterfaceContractImpl.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/implementation/java/impl/BeanJavaInterfaceFactory.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/implementation/java/impl/BeanJavaInterfaceImpl.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/AddService.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/AddServiceImpl.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/CalculatorClient.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/CalculatorService.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/CalculatorServiceImpl.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/DivideService.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/DivideServiceImpl.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/MultiplyService.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/MultiplyServiceImpl.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/NestedCalculatorClient.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/SubtractService.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/SubtractServiceImpl.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/test/java/org/apache/tuscany/sca/core/spring/CalculatorTestCase.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/test/java/org/apache/tuscany/sca/core/spring/NestedCalculatorTestCase.java delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/test/resources/org/apache/tuscany/sca/core/spring/Calculator.composite delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/test/resources/org/apache/tuscany/sca/core/spring/InnerCalculator.composite delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/test/resources/org/apache/tuscany/sca/core/spring/InnerOperations.composite delete mode 100644 branches/sca-java-0.90/modules/core-spring/src/test/resources/org/apache/tuscany/sca/core/spring/OuterCalculator.composite (limited to 'branches/sca-java-0.90/modules/core-spring/src') diff --git a/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/assembly/impl/BeanAssemblyFactory.java b/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/assembly/impl/BeanAssemblyFactory.java deleted file mode 100644 index 5b04d9e363..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/assembly/impl/BeanAssemblyFactory.java +++ /dev/null @@ -1,135 +0,0 @@ -/* - * 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.sca.core.spring.assembly.impl; - -import org.apache.tuscany.sca.assembly.AbstractProperty; -import org.apache.tuscany.sca.assembly.AbstractReference; -import org.apache.tuscany.sca.assembly.AbstractService; -import org.apache.tuscany.sca.assembly.AssemblyFactory; -import org.apache.tuscany.sca.assembly.Callback; -import org.apache.tuscany.sca.assembly.Component; -import org.apache.tuscany.sca.assembly.ComponentProperty; -import org.apache.tuscany.sca.assembly.ComponentReference; -import org.apache.tuscany.sca.assembly.ComponentService; -import org.apache.tuscany.sca.assembly.ComponentType; -import org.apache.tuscany.sca.assembly.Composite; -import org.apache.tuscany.sca.assembly.CompositeReference; -import org.apache.tuscany.sca.assembly.CompositeService; -import org.apache.tuscany.sca.assembly.ConstrainingType; -import org.apache.tuscany.sca.assembly.DefaultAssemblyFactory; -import org.apache.tuscany.sca.assembly.Property; -import org.apache.tuscany.sca.assembly.Reference; -import org.apache.tuscany.sca.assembly.SCABinding; -import org.apache.tuscany.sca.assembly.Service; -import org.apache.tuscany.sca.assembly.Wire; -import org.apache.tuscany.sca.interfacedef.Operation; -import org.springframework.beans.factory.support.BeanDefinitionRegistry; - -/** - * An alternate implementation of the SCA assembly model factory that creates SCA - * assembly model objects backed by Spring bean definitions. - * - * @version $Rev$ $Date$ - */ -public class BeanAssemblyFactory implements AssemblyFactory { - - private AssemblyFactory defaultFactory; - private BeanDefinitionRegistry beanRegistry; - - public BeanAssemblyFactory(AssemblyFactory defaultFactory, BeanDefinitionRegistry beanRegistry) { - this.defaultFactory = defaultFactory; - this.beanRegistry = beanRegistry; - } - - public BeanAssemblyFactory(BeanDefinitionRegistry beanRegistry) { - this(new DefaultAssemblyFactory(), beanRegistry); - } - - public AbstractProperty createAbstractProperty() { - return defaultFactory.createAbstractProperty(); - } - - public AbstractReference createAbstractReference() { - return defaultFactory.createAbstractReference(); - } - - public AbstractService createAbstractService() { - return defaultFactory.createAbstractService(); - } - - public Callback createCallback() { - return defaultFactory.createCallback(); - } - - public Component createComponent() { - return new BeanComponentImpl(beanRegistry); - } - - public ComponentProperty createComponentProperty() { - return defaultFactory.createComponentProperty(); - } - - public ComponentReference createComponentReference() { - return defaultFactory.createComponentReference(); - } - - public ComponentService createComponentService() { - return defaultFactory.createComponentService(); - } - - public ComponentType createComponentType() { - return defaultFactory.createComponentType(); - } - - public Composite createComposite() { - return defaultFactory.createComposite(); - } - - public CompositeReference createCompositeReference() { - return defaultFactory.createCompositeReference(); - } - - public CompositeService createCompositeService() { - return defaultFactory.createCompositeService(); - } - - public ConstrainingType createConstrainingType() { - return defaultFactory.createConstrainingType(); - } - - public Property createProperty() { - return defaultFactory.createProperty(); - } - - public Reference createReference() { - return defaultFactory.createReference(); - } - - public Service createService() { - return defaultFactory.createService(); - } - - public Wire createWire() { - return defaultFactory.createWire(); - } - - public Operation createOperation() { - return defaultFactory.createOperation(); - } -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/assembly/impl/BeanComponentImpl.java b/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/assembly/impl/BeanComponentImpl.java deleted file mode 100644 index 85c5e7ec43..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/assembly/impl/BeanComponentImpl.java +++ /dev/null @@ -1,211 +0,0 @@ -/* - * 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.sca.core.spring.assembly.impl; - -import java.util.ArrayList; -import java.util.List; - -import org.apache.tuscany.sca.assembly.Component; -import org.apache.tuscany.sca.assembly.ComponentProperty; -import org.apache.tuscany.sca.assembly.ComponentReference; -import org.apache.tuscany.sca.assembly.ComponentService; -import org.apache.tuscany.sca.assembly.ConstrainingType; -import org.apache.tuscany.sca.assembly.Implementation; -import org.apache.tuscany.sca.assembly.Visitor; -import org.apache.tuscany.sca.policy.Intent; -import org.apache.tuscany.sca.policy.PolicySet; -import org.springframework.beans.factory.support.BeanDefinitionRegistry; -import org.springframework.beans.factory.support.ChildBeanDefinition; - -/** - * An implementation of the SCA assembly Component interface backed by a Spring - * Bean definition. - * - * @version $Rev$ $Date$ - */ -public class BeanComponentImpl extends ChildBeanDefinition implements Component, Cloneable { - private static final long serialVersionUID = 1L; - - private ConstrainingType constrainingType; - private Implementation implementation; - private String name; - private String uri; - private List services = new ArrayList(); - private List requiredIntents = new ArrayList(); - private List policySets = new ArrayList(); - private List extensions = new ArrayList(); - private boolean unresolved = false; - private BeanDefinitionRegistry beanRegistry; - - protected BeanComponentImpl(BeanDefinitionRegistry beanRegistry) { - super((String)""); - this.beanRegistry = beanRegistry; - } - - @Override - public Object clone() throws CloneNotSupportedException { - BeanComponentImpl clone = (BeanComponentImpl)super.clone(); - - clone.getProperties().clear(); - for (ComponentProperty property: getProperties()) { - clone.getProperties().add((ComponentProperty)property.clone()); - } - clone.getReferences().clear(); - for (ComponentReference reference: getReferences()) { - clone.getReferences().add((ComponentReference)reference.clone()); - } - clone.getServices().clear(); - for (ComponentService service: getServices()) { - clone.getServices().add((ComponentService)service.clone()); - } - return clone; - } - - public String getParentName() { - //TODO find a better name for bean definitions representing component types - return String.valueOf(System.identityHashCode(implementation)); - } - - public ConstrainingType getConstrainingType() { - return constrainingType; - } - - public Implementation getImplementation() { - return implementation; - } - - public String getURI() { - return uri; - } - - public void setURI(String uri) { - this.uri = uri; - - // Register this bean definition in the bean registry - this.beanRegistry.registerBeanDefinition(uri, this); - } - - public String getName() { - return name; - } - - //TODO use a better list implementation - private List properties = new ArrayList() { - private static final long serialVersionUID = 1L; - - // Add a property - public boolean add(ComponentProperty property) { - - // Add corresponding bean property value - getPropertyValues().addPropertyValue(property.getName(), property.getValue()); - - return super.add(property); - } - }; - - public List getProperties() { - return properties; - } - - //TODO use a better list implementation - private List references = new ArrayList() { - private static final long serialVersionUID = 1L; - - // Add a reference - public boolean add(ComponentReference reference) { - - // Add corresponding bean property value - if (!reference.getName().startsWith("$self$.")) { - BeanReferenceImpl beanReference = new BeanReferenceImpl(reference); - getPropertyValues().addPropertyValue(reference.getName(), beanReference); - } - return super.add(reference); - } - }; - - public List getReferences() { - return references; - } - - public List getServices() { - return services; - } - - public void setConstrainingType(ConstrainingType constrainingType) { - this.constrainingType = constrainingType; - } - - public void setImplementation(Implementation implementation) { - this.implementation = implementation; - } - - public void setName(String name) { - this.name = name; - } - - public List getRequiredIntents() { - return requiredIntents; - } - - public List getPolicySets() { - return policySets; - } - - public boolean isAutowire() { - return super.getAutowireMode() == AUTOWIRE_BY_TYPE; - } - - public void setAutowire(boolean autowire) { - super.setAutowireMode(autowire? AUTOWIRE_BY_TYPE:AUTOWIRE_NO); - } - - public List getExtensions() { - return extensions; - } - - public boolean isUnresolved() { - return unresolved; - } - - public void setUnresolved(boolean undefined) { - this.unresolved = undefined; - } - - public boolean accept(Visitor visitor) { - if (!visitor.visit(this)) { - return false; - } - for (ComponentProperty property : properties) { - if (!visitor.visit(property)) { - return false; - } - } - for (ComponentReference reference : references) { - if (!visitor.visit(reference)) { - return false; - } - } - for (ComponentService service : services) { - if (!visitor.visit(service)) { - return false; - } - } - return true; - } -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/assembly/impl/BeanReferenceImpl.java b/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/assembly/impl/BeanReferenceImpl.java deleted file mode 100644 index bc139a3ef3..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/assembly/impl/BeanReferenceImpl.java +++ /dev/null @@ -1,65 +0,0 @@ -/* - * 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.sca.core.spring.assembly.impl; - -import org.apache.tuscany.sca.assembly.ComponentService; -import org.apache.tuscany.sca.assembly.Reference; -import org.apache.tuscany.sca.assembly.SCABinding; -import org.springframework.beans.factory.config.RuntimeBeanReference; - -/** - * An implementation of RuntimeBeanReference wrappering an SCA assembly Reference - * - * @version $Rev$ $Date$ - */ -public class BeanReferenceImpl extends RuntimeBeanReference { - private Reference reference; - - protected BeanReferenceImpl(Reference reference) { - super("temp"); - this.reference = reference; - } - - public String getBeanName() { - //TODO handle multiplicity - ComponentService componentService = reference.getTargets().get(0); - if (!componentService.isUnresolved()) { - SCABinding binding = componentService.getBinding(SCABinding.class); - return binding.getComponent().getURI(); - } else { - return null; - } - } - - public boolean equals(Object other) { - if (this != other) { - if (other instanceof RuntimeBeanReference) { - RuntimeBeanReference br = (RuntimeBeanReference) other; - return (getBeanName().equals(br.getBeanName()) && this.isToParent() == br.isToParent()); - } else - return false; - } else - return true; - } - - public int hashCode() { - return getBeanName().hashCode() * 29 + (this.isToParent() ? 1 : 0); - } - -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/context/ModelResolverImpl.java b/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/context/ModelResolverImpl.java deleted file mode 100644 index ba2d5045f2..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/context/ModelResolverImpl.java +++ /dev/null @@ -1,88 +0,0 @@ -/* - * 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.sca.core.spring.context; - -import java.lang.ref.WeakReference; -import java.util.HashMap; -import java.util.Map; - -import org.apache.tuscany.sca.contribution.resolver.ClassReference; -import org.apache.tuscany.sca.contribution.resolver.ModelResolver; - - -/** - * A default implementation of an artifact resolver, based on a map. - * - * @version $Rev$ $Date$ - */ -public class ModelResolverImpl implements ModelResolver { - private static final long serialVersionUID = -7826976465762296634L; - - private Map map = new HashMap(); - - private WeakReference classLoader; - - public ModelResolverImpl(ClassLoader classLoader) { - this.classLoader = new WeakReference(classLoader); - } - - public T resolveModel(Class modelClass, T unresolved) { - Object resolved = map.get(unresolved); - if (resolved != null) { - - // Return the resolved object - return modelClass.cast(resolved); - - } else if (unresolved instanceof ClassReference) { - - // Load a class on demand - ClassReference classReference = (ClassReference)unresolved; - Class clazz; - try { - clazz = Class.forName(classReference.getClassName(), true, classLoader.get()); - } catch (ClassNotFoundException e) { - - // Return the unresolved object - return unresolved; - } - - // Store a new ClassReference wrappering the loaded class - resolved = new ClassReference(clazz); - map.put(resolved, resolved); - - // Return the resolved ClassReference - return modelClass.cast(resolved); - - } else { - - // Return the unresolved object - return unresolved; - } - } - - public void addModel(Object resolved) { - map.put(resolved, resolved); - } - - public Object removeModel(Object resolved) { - return map.remove(resolved); - } - -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/context/SCADomainContext.java b/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/context/SCADomainContext.java deleted file mode 100644 index 24bc719e6a..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/context/SCADomainContext.java +++ /dev/null @@ -1,195 +0,0 @@ -/* - * 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.sca.core.spring.context; - -import java.io.InputStream; -import java.util.ArrayList; -import java.util.List; - -import javax.xml.stream.XMLInputFactory; -import javax.xml.stream.XMLOutputFactory; - -import org.apache.tuscany.sca.assembly.AssemblyFactory; -import org.apache.tuscany.sca.assembly.Composite; -import org.apache.tuscany.sca.assembly.DefaultAssemblyFactory; -import org.apache.tuscany.sca.assembly.DefaultSCABindingFactory; -import org.apache.tuscany.sca.assembly.SCABindingFactory; -import org.apache.tuscany.sca.assembly.builder.CompositeBuilderException; -import org.apache.tuscany.sca.assembly.builder.CompositeBuilderMonitor; -import org.apache.tuscany.sca.assembly.builder.Problem; -import org.apache.tuscany.sca.assembly.builder.impl.CompositeBuilderImpl; -import org.apache.tuscany.sca.assembly.xml.ComponentTypeProcessor; -import org.apache.tuscany.sca.assembly.xml.CompositeProcessor; -import org.apache.tuscany.sca.assembly.xml.ConstrainingTypeProcessor; -import org.apache.tuscany.sca.contribution.processor.DefaultStAXArtifactProcessorExtensionPoint; -import org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactProcessor; -import org.apache.tuscany.sca.contribution.service.ContributionException; -import org.apache.tuscany.sca.core.spring.assembly.impl.BeanAssemblyFactory; -import org.apache.tuscany.sca.core.spring.implementation.java.impl.BeanJavaImplementationFactory; -import org.apache.tuscany.sca.implementation.java.JavaImplementationFactory; -import org.apache.tuscany.sca.implementation.java.introspect.DefaultJavaClassIntrospectorExtensionPoint; -import org.apache.tuscany.sca.implementation.java.introspect.ExtensibleJavaClassIntrospector; -import org.apache.tuscany.sca.implementation.java.introspect.JavaClassIntrospector; -import org.apache.tuscany.sca.implementation.java.introspect.JavaClassIntrospectorExtensionPoint; -import org.apache.tuscany.sca.implementation.java.introspect.JavaClassVisitor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.AllowsPassByReferenceProcessor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.BaseJavaClassVisitor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.ConstructorProcessor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.ContextProcessor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.ConversationProcessor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.DestroyProcessor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.EagerInitProcessor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.HeuristicPojoProcessor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.InitProcessor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.PolicyProcessor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.PropertyProcessor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.ReferenceProcessor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.ResourceProcessor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.ScopeProcessor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.ServiceProcessor; -import org.apache.tuscany.sca.implementation.java.xml.JavaImplementationProcessor; -import org.apache.tuscany.sca.interfacedef.InterfaceContractMapper; -import org.apache.tuscany.sca.interfacedef.impl.InterfaceContractMapperImpl; -import org.apache.tuscany.sca.interfacedef.java.DefaultJavaInterfaceFactory; -import org.apache.tuscany.sca.interfacedef.java.JavaInterfaceFactory; -import org.apache.tuscany.sca.interfacedef.java.introspect.DefaultJavaInterfaceIntrospectorExtensionPoint; -import org.apache.tuscany.sca.interfacedef.java.introspect.ExtensibleJavaInterfaceIntrospector; -import org.apache.tuscany.sca.interfacedef.java.introspect.JavaInterfaceIntrospector; -import org.apache.tuscany.sca.interfacedef.java.introspect.JavaInterfaceIntrospectorExtensionPoint; -import org.apache.tuscany.sca.interfacedef.java.xml.JavaInterfaceProcessor; -import org.apache.tuscany.sca.policy.DefaultPolicyFactory; -import org.apache.tuscany.sca.policy.PolicyFactory; -import org.springframework.beans.factory.support.DefaultListableBeanFactory; - -/** - * A mini test runtime that uses the SCA assembly model variant implementation - * backed by Spring bean definitions. - * - * @version $Rev$ $Date$ - */ -public class SCADomainContext { - - private DefaultListableBeanFactory beanFactory; - - public SCADomainContext(String... compositeFiles) { - - // Create Spring bean factory - beanFactory = new DefaultListableBeanFactory(); - - // Create SCA assembly and SCA Java factories - AssemblyFactory assemblyFactory = new BeanAssemblyFactory(new DefaultAssemblyFactory(), beanFactory); - SCABindingFactory scaBindingFactory = new DefaultSCABindingFactory(); - PolicyFactory policyFactory = new DefaultPolicyFactory(); - InterfaceContractMapper interfaceContractMapper = new InterfaceContractMapperImpl(); - JavaInterfaceFactory javaFactory = new DefaultJavaInterfaceFactory(); - JavaInterfaceIntrospectorExtensionPoint interfaceVisitors = new DefaultJavaInterfaceIntrospectorExtensionPoint(); - JavaImplementationFactory javaImplementationFactory = new BeanJavaImplementationFactory(beanFactory); - JavaClassIntrospectorExtensionPoint classVisitors = new DefaultJavaClassIntrospectorExtensionPoint(); - - JavaInterfaceIntrospector interfaceIntrospector = new ExtensibleJavaInterfaceIntrospector(javaFactory, interfaceVisitors); - - BaseJavaClassVisitor[] extensions = new BaseJavaClassVisitor[] { - new ConstructorProcessor(assemblyFactory), - new AllowsPassByReferenceProcessor(assemblyFactory), - new ContextProcessor(assemblyFactory), - new ConversationProcessor(assemblyFactory), - new DestroyProcessor(assemblyFactory), - new EagerInitProcessor(assemblyFactory), - new InitProcessor(assemblyFactory), - new PropertyProcessor(assemblyFactory), - new ReferenceProcessor(assemblyFactory, javaFactory, interfaceIntrospector), - new ResourceProcessor(assemblyFactory), - new ScopeProcessor(assemblyFactory), - new ServiceProcessor(assemblyFactory, javaFactory, interfaceIntrospector), - new HeuristicPojoProcessor(assemblyFactory, javaFactory, interfaceIntrospector), - new PolicyProcessor(assemblyFactory, policyFactory) - }; - for (JavaClassVisitor e : extensions) { - classVisitors.addClassVisitor(e); - } - JavaClassIntrospector classIntrospector = new ExtensibleJavaClassIntrospector(classVisitors); - - // Populate ArtifactProcessor registry - DefaultStAXArtifactProcessorExtensionPoint staxProcessors = new DefaultStAXArtifactProcessorExtensionPoint(); - ExtensibleStAXArtifactProcessor staxProcessor = new ExtensibleStAXArtifactProcessor(staxProcessors, XMLInputFactory.newInstance(), XMLOutputFactory.newInstance()); - CompositeProcessor compositeProcessor = new CompositeProcessor(assemblyFactory, policyFactory, - interfaceContractMapper, staxProcessor); - staxProcessors.addArtifactProcessor(compositeProcessor); - staxProcessors.addArtifactProcessor(new ComponentTypeProcessor(assemblyFactory, policyFactory, staxProcessor)); - staxProcessors.addArtifactProcessor(new ConstrainingTypeProcessor(assemblyFactory, policyFactory, staxProcessor)); - staxProcessors.addArtifactProcessor(new JavaInterfaceProcessor(javaFactory, interfaceIntrospector)); - staxProcessors.addArtifactProcessor(new JavaImplementationProcessor(assemblyFactory, policyFactory, javaImplementationFactory, classIntrospector)); - - // Create a resolver - ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); - ModelResolverImpl resolver = new ModelResolverImpl(classLoader); - - try { - - // Read the composite files - List composites = new ArrayList(); - for (String compositeFile: compositeFiles) { - InputStream is = classLoader.getResourceAsStream(compositeFile); - Composite composite = staxProcessor.read(is, Composite.class); - resolver.addModel(composite); - composites.add(composite); - } - - for (Composite composite: composites) { - - // Resolve the composite - compositeProcessor.resolve(composite, resolver); - } - - // Wire the top level component's composite - buildComposite(composites.get(0), assemblyFactory, scaBindingFactory, interfaceContractMapper); - - } catch (ContributionException e) { - throw new RuntimeException(e); - } catch (CompositeBuilderException e) { - throw new RuntimeException(e); - } - } - - private void buildComposite(Composite composite, AssemblyFactory assemblyFactory, - SCABindingFactory scaBindingFactory, InterfaceContractMapper interfaceContractMapper) throws CompositeBuilderException { - - CompositeBuilderMonitor monitor = new CompositeBuilderMonitor() { - - public void problem(Problem problem) { - // Uncommenting the following two lines can be useful to detect - // and troubleshoot SCA assembly XML composite configuration - // problems. - - System.out.println("Composite assembly problem: " + problem.getMessage()); - } - }; - - // Configure and wire the composite - CompositeBuilderImpl compositeUtil = new CompositeBuilderImpl(assemblyFactory, scaBindingFactory, interfaceContractMapper, monitor); - compositeUtil.build(composite); - - } - - public B getService(Class businessInterface, String serviceName) { - Object bean = beanFactory.getBean(serviceName); - return businessInterface.cast(bean); - } - -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/implementation/java/impl/BeanBaseJavaImplementationImpl.java b/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/implementation/java/impl/BeanBaseJavaImplementationImpl.java deleted file mode 100644 index 8a88ba28d9..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/implementation/java/impl/BeanBaseJavaImplementationImpl.java +++ /dev/null @@ -1,182 +0,0 @@ -/* - * 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.sca.core.spring.implementation.java.impl; - -import java.util.ArrayList; -import java.util.List; - -import org.apache.tuscany.sca.assembly.ConstrainingType; -import org.apache.tuscany.sca.assembly.Property; -import org.apache.tuscany.sca.assembly.Reference; -import org.apache.tuscany.sca.assembly.Service; -import org.apache.tuscany.sca.implementation.java.BaseJavaImplementation; -import org.apache.tuscany.sca.policy.Intent; -import org.apache.tuscany.sca.policy.PolicySet; -import org.springframework.beans.factory.support.BeanDefinitionRegistry; -import org.springframework.beans.factory.support.RootBeanDefinition; - -/** - * An implementation of the SCA assembly JavaImplementation interface backed by a Spring - * Bean definition. - * - * @version $Rev$ $Date$ - */ -public class BeanBaseJavaImplementationImpl extends RootBeanDefinition implements BaseJavaImplementation, Cloneable { - private static final long serialVersionUID = 1L; - - private List services = new ArrayList(); - private List requiredIntents = new ArrayList(); - private List policySets = new ArrayList(); - private ConstrainingType constrainingType; - private List extensions = new ArrayList(); - private boolean unresolved; - private BeanDefinitionRegistry beanRegistry; - private String uri; - - protected BeanBaseJavaImplementationImpl(BeanDefinitionRegistry beanRegistry) { - this.beanRegistry = beanRegistry; - - // Register this bean definition in the bean registry - //TODO find a better name for bean definitions representing component types - String name = String.valueOf(System.identityHashCode(this)); - this.beanRegistry.registerBeanDefinition(name, this); - } - - @Override - public Object clone() throws CloneNotSupportedException { - BeanBaseJavaImplementationImpl clone = (BeanBaseJavaImplementationImpl)super.clone(); - - clone.getServices().clear(); - for (Service service: getServices()) { - clone.getServices().add((Service)service.clone()); - } - clone.getReferences().clear(); - for (Reference reference: getReferences()) { - clone.getReferences().add((Reference)reference.clone()); - } - clone.getProperties().clear(); - for (Property property: getProperties()) { - clone.getProperties().add((Property)property.clone()); - } - return clone; - } - - public Class getJavaClass() { - return super.getBeanClass(); - } - - public String getName() { - return super.getBeanClassName(); - } - - public void setJavaClass(Class javaClass) { - super.setBeanClass(javaClass); - } - - public void setName(String className) { - super.setBeanClassName(className); - } - - public String getURI() { - return uri; - } - - public void setURI(String uri) { - this.uri = uri; - } - - public ConstrainingType getConstrainingType() { - return constrainingType; - } - - //TODO use a better list implementation - private List properties = new ArrayList() { - private static final long serialVersionUID = 1L; - - // Add a property - public boolean add(Property property) { - - // Add corresponding bean property value - getPropertyValues().addPropertyValue(property.getName(), property.getValue()); - - return super.add(property); - } - }; - - public List getProperties() { - return properties; - } - - //TODO use a better list implementation - private List references = new ArrayList() { - private static final long serialVersionUID = 1L; - - // Add a reference - public boolean add(Reference reference) { - - // Add corresponding bean property value - String target; - if (!reference.getTargets().isEmpty()) { - //TODO handle multiplicity - target = reference.getTargets().get(0).getName(); - int i = target.indexOf('/'); - if (i != -1) - target = target.substring(0, i); - } else { - target = null; - } - getPropertyValues().addPropertyValue(reference.getName(), target); - - return super.add(reference); - } - }; - - public List getReferences() { - return references; - } - - public List getServices() { - return services; - } - - public void setConstrainingType(ConstrainingType constrainingType) { - this.constrainingType = constrainingType; - } - - public List getExtensions() { - return extensions; - } - - public boolean isUnresolved() { - return unresolved; - } - - public void setUnresolved(boolean unresolved) { - this.unresolved = unresolved; - } - - public List getRequiredIntents() { - return requiredIntents; - } - - public List getPolicySets() { - return policySets; - } - -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/implementation/java/impl/BeanJavaImplementationFactory.java b/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/implementation/java/impl/BeanJavaImplementationFactory.java deleted file mode 100644 index c9cd0f8892..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/implementation/java/impl/BeanJavaImplementationFactory.java +++ /dev/null @@ -1,43 +0,0 @@ -/* - * 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.sca.core.spring.implementation.java.impl; - -import org.apache.tuscany.sca.implementation.java.JavaImplementation; -import org.apache.tuscany.sca.implementation.java.JavaImplementationFactory; -import org.springframework.beans.factory.support.BeanDefinitionRegistry; - -/** - * An alternate implementation of the SCA Java assembly model factory that creates SCA - * Java assembly model objects backed by Spring bean definitions. - * - * @version $Rev$ $Date$ - */ -public class BeanJavaImplementationFactory implements JavaImplementationFactory { - - private BeanDefinitionRegistry beanRegistry; - - public BeanJavaImplementationFactory(BeanDefinitionRegistry beanRegistry) { - this.beanRegistry = beanRegistry; - } - - public JavaImplementation createJavaImplementation() { - return new BeanJavaImplementationImpl(beanRegistry); - } - -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/implementation/java/impl/BeanJavaImplementationImpl.java b/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/implementation/java/impl/BeanJavaImplementationImpl.java deleted file mode 100644 index 5d787d2fd2..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/implementation/java/impl/BeanJavaImplementationImpl.java +++ /dev/null @@ -1,164 +0,0 @@ -/* - * 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.sca.core.spring.implementation.java.impl; - -import java.lang.reflect.Constructor; -import java.lang.reflect.Member; -import java.lang.reflect.Method; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.apache.tuscany.sca.implementation.java.JavaImplementation; -import org.apache.tuscany.sca.implementation.java.impl.JavaConstructorImpl; -import org.apache.tuscany.sca.implementation.java.impl.JavaElementImpl; -import org.apache.tuscany.sca.implementation.java.impl.JavaResourceImpl; -import org.apache.tuscany.sca.implementation.java.impl.JavaScopeImpl; -import org.springframework.beans.factory.support.BeanDefinitionRegistry; - -/** - * An implementation of the SCA assembly JavaImplementation interface backed by a Spring - * Bean definition. - * - * @version $$Rev$$ $$Date$$ - */ -public class BeanJavaImplementationImpl extends BeanBaseJavaImplementationImpl implements JavaImplementation { - private static final long serialVersionUID = 6792198458193774178L; - - private JavaConstructorImpl constructorDefinition; - private Map constructors = new HashMap(); - private Method initMethod; - private Method destroyMethod; - private final Map resources = new HashMap(); - private final Map propertyMembers = new HashMap(); - private final Map referenceMembers = new HashMap(); - private final Map callbackMembers = new HashMap(); - private Member conversationIDMember; - private boolean eagerInit; - private boolean allowsPassByReference; - private List allowsPassByReferenceMethods = new ArrayList(); - private long maxAge = -1; - private long maxIdleTime = -1; - private JavaScopeImpl scope = JavaScopeImpl.STATELESS; - - protected BeanJavaImplementationImpl(BeanDefinitionRegistry beanRegistry) { - super(beanRegistry); - } - - public JavaConstructorImpl getConstructor() { - return constructorDefinition; - } - - public void setConstructor(JavaConstructorImpl definition) { - this.constructorDefinition = definition; - } - - public Method getInitMethod() { - return initMethod; - } - - public void setInitMethod(Method initMethod) { - this.initMethod = initMethod; - } - - public Method getDestroyMethod() { - return destroyMethod; - } - - public void setDestroyMethod(Method destroyMethod) { - this.destroyMethod = destroyMethod; - } - - public Map getResources() { - return resources; - } - - public Member getConversationIDMember() { - return this.conversationIDMember; - } - - public void setConversationIDMember(Member conversationIDMember) { - this.conversationIDMember = conversationIDMember; - } - - public boolean isAllowsPassByReference() { - return allowsPassByReference; - } - - public void setAllowsPassByReference(boolean allowsPassByReference) { - this.allowsPassByReference = allowsPassByReference; - } - - public List getAllowsPassByReferenceMethods() { - return allowsPassByReferenceMethods; - } - - public boolean isAllowsPassByReference(Method method) { - return allowsPassByReference || allowsPassByReferenceMethods.contains(method); - } - - public Map getConstructors() { - return constructors; - } - - public boolean isEagerInit() { - return eagerInit; - } - - public void setEagerInit(boolean eagerInit) { - this.eagerInit = eagerInit; - } - - public Map getCallbackMembers() { - return callbackMembers; - } - - public Map getPropertyMembers() { - return propertyMembers; - } - - public Map getReferenceMembers() { - return referenceMembers; - } - - public JavaScopeImpl getJavaScope() { - return scope; - } - - public void setJavaScope(JavaScopeImpl scope) { - this.scope = scope; - } - - public long getMaxAge() { - return maxAge; - } - - public void setMaxAge(long maxAge) { - this.maxAge = maxAge; - } - - public long getMaxIdleTime() { - return maxIdleTime; - } - - public void setMaxIdleTime(long maxIdleTime) { - this.maxIdleTime = maxIdleTime; - } -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/implementation/java/impl/BeanJavaInterfaceContractImpl.java b/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/implementation/java/impl/BeanJavaInterfaceContractImpl.java deleted file mode 100644 index 17a7e9084c..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/implementation/java/impl/BeanJavaInterfaceContractImpl.java +++ /dev/null @@ -1,34 +0,0 @@ -/* - * 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.sca.core.spring.implementation.java.impl; - -import org.apache.tuscany.sca.interfacedef.java.impl.JavaInterfaceContractImpl; - -/** - * An implementation of a Java interface contract. - * - * @version $Rev$ $Date$ - */ -public class BeanJavaInterfaceContractImpl extends JavaInterfaceContractImpl { - - protected BeanJavaInterfaceContractImpl() { - } - -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/implementation/java/impl/BeanJavaInterfaceFactory.java b/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/implementation/java/impl/BeanJavaInterfaceFactory.java deleted file mode 100644 index 6557d23f27..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/implementation/java/impl/BeanJavaInterfaceFactory.java +++ /dev/null @@ -1,44 +0,0 @@ -/* - * 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.sca.core.spring.implementation.java.impl; - -import org.apache.tuscany.sca.interfacedef.java.JavaInterface; -import org.apache.tuscany.sca.interfacedef.java.JavaInterfaceContract; -import org.apache.tuscany.sca.interfacedef.java.JavaInterfaceFactory; - -/** - * An alternate implementation of the SCA Java assembly model factory that creates SCA - * Java assembly model objects backed by Spring bean definitions. - * - * @version $Rev$ $Date$ - */ -public class BeanJavaInterfaceFactory implements JavaInterfaceFactory { - - public BeanJavaInterfaceFactory() { - } - - public JavaInterface createJavaInterface() { - return new BeanJavaInterfaceImpl(); - } - - public JavaInterfaceContract createJavaInterfaceContract() { - return new BeanJavaInterfaceContractImpl(); - } - -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/implementation/java/impl/BeanJavaInterfaceImpl.java b/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/implementation/java/impl/BeanJavaInterfaceImpl.java deleted file mode 100644 index 3d2c4b3e4d..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/main/java/org/apache/tuscany/sca/core/spring/implementation/java/impl/BeanJavaInterfaceImpl.java +++ /dev/null @@ -1,118 +0,0 @@ -/* - * 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.sca.core.spring.implementation.java.impl; - -import java.util.ArrayList; -import java.util.List; - -import org.apache.tuscany.sca.interfacedef.Operation; -import org.apache.tuscany.sca.interfacedef.java.JavaInterface; -import org.apache.tuscany.sca.policy.Intent; - -/** - * An alternate implementation of the SCA Java assembly model JavaInterface - * interface. - * - * @version $Rev$ $Date$ - */ -public class BeanJavaInterfaceImpl implements JavaInterface { - - private String className; - private Class javaClass; - private Class callbackClass; - private boolean conversational; - private boolean remotable; - List requiredIntents = new ArrayList(); - private List extensions = new ArrayList(); - private List operations = new ArrayList(); - private boolean unresolved = false; - - protected BeanJavaInterfaceImpl() { - } - - public String getName() { - if (isUnresolved()) { - return className; - } - else { - return javaClass.getName(); - } - } - - public void setName(String className) { - if (!isUnresolved()) - throw new IllegalStateException(); - this.className = className; - } - - public Class getJavaClass() { - return javaClass; - } - - public void setJavaClass(Class javaClass) { - this.javaClass = javaClass; - } - - public Class getCallbackClass() { - return callbackClass; - } - - public void setCallbackClass(Class callbackClass) { - this.callbackClass = callbackClass; - } - - public boolean isConversational() { - return conversational; - } - - public boolean isRemotable() { - return remotable; - } - - public void setConversational(boolean conversational) { - this.conversational = conversational; - } - - public void setRemotable(boolean local) { - this.remotable = local; - } - - public List getRequiredIntents() { - return requiredIntents; - } - - public List getExtensions() { - return extensions; - } - - public List getOperations() { - return operations; - } - - public boolean isUnresolved() { - return unresolved; - } - - public void setUnresolved(boolean undefined) { - this.unresolved = undefined; - } - - public void setDefaultDataBinding(String dataBinding) { - } -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/AddService.java b/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/AddService.java deleted file mode 100644 index 4eeb30a9c2..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/AddService.java +++ /dev/null @@ -1,25 +0,0 @@ -/* - * 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 calculator; - -public interface AddService { - - double add(double n1, double n2); - -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/AddServiceImpl.java b/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/AddServiceImpl.java deleted file mode 100644 index ea3e5341d5..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/AddServiceImpl.java +++ /dev/null @@ -1,35 +0,0 @@ -/* - * 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 calculator; - -import org.osoa.sca.annotations.EagerInit; -import org.osoa.sca.annotations.Scope; - -/** - * An implementation of the Add service - */ -@Scope("COMPOSITE") -@EagerInit -public class AddServiceImpl implements AddService { - - public double add(double n1, double n2) { - return n1 + n2; - } - -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/CalculatorClient.java b/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/CalculatorClient.java deleted file mode 100644 index 56e737e3ab..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/CalculatorClient.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * 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 calculator; - -import org.apache.tuscany.sca.core.spring.context.SCADomainContext; - -/** - * This client program shows how to create an SCA runtime, start it, locate the - * Calculator service and invoke it. - */ -public class CalculatorClient { - public static void main(String[] args) throws Exception { - - SCADomainContext context = new SCADomainContext("org/apache/tuscany/core/spring/Calculator.composite"); - - CalculatorService calculatorService = context.getService(CalculatorService.class, "CalculatorServiceComponent"); - - // Calculate - System.out.println("3 + 2=" + calculatorService.add(3, 2)); - System.out.println("3 - 2=" + calculatorService.subtract(3, 2)); - System.out.println("3 * 2=" + calculatorService.multiply(3, 2)); - System.out.println("3 / 2=" + calculatorService.divide(3, 2)); - - } -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/CalculatorService.java b/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/CalculatorService.java deleted file mode 100644 index c89043276e..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/CalculatorService.java +++ /dev/null @@ -1,34 +0,0 @@ -/* - * 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 calculator; - -/** - * The Calculator service interface. - */ -public interface CalculatorService { - - double add(double n1, double n2); - - double subtract(double n1, double n2); - - double multiply(double n1, double n2); - - double divide(double n1, double n2); - -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/CalculatorServiceImpl.java b/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/CalculatorServiceImpl.java deleted file mode 100644 index 11e8974657..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/CalculatorServiceImpl.java +++ /dev/null @@ -1,71 +0,0 @@ -/* - * 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 calculator; - -import org.osoa.sca.annotations.Reference; -import org.osoa.sca.annotations.Scope; - -/** - * An implementation of the Calculator service. - */ -@Scope("COMPOSITE") -public class CalculatorServiceImpl implements CalculatorService { - - private AddService addService; - private SubtractService subtractService; - private MultiplyService multiplyService; - private DivideService divideService; - - @Reference - public void setAddService(AddService addService) { - this.addService = addService; - } - - @Reference - public void setSubtractService(SubtractService subtractService) { - this.subtractService = subtractService; - } - - @Reference - public void setDivideService(DivideService divideService) { - this.divideService = divideService; - } - - @Reference - public void setMultiplyService(MultiplyService multiplyService) { - this.multiplyService = multiplyService; - } - - public double add(double n1, double n2) { - return addService.add(n1, n2); - } - - public double subtract(double n1, double n2) { - return subtractService.subtract(n1, n2); - } - - public double multiply(double n1, double n2) { - return multiplyService.multiply(n1, n2); - } - - public double divide(double n1, double n2) { - return divideService.divide(n1, n2); - } - -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/DivideService.java b/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/DivideService.java deleted file mode 100644 index 131c5a8014..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/DivideService.java +++ /dev/null @@ -1,25 +0,0 @@ -/* - * 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 calculator; - -public interface DivideService { - - double divide(double n1, double n2); - -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/DivideServiceImpl.java b/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/DivideServiceImpl.java deleted file mode 100644 index 9c7e96a668..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/DivideServiceImpl.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * 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 calculator; - -import org.osoa.sca.annotations.Scope; - -/** - * An implementation of the Divide service. - */ -@Scope("COMPOSITE") -public class DivideServiceImpl implements DivideService { - - public double divide(double n1, double n2) { - return n1 / n2; - } - -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/MultiplyService.java b/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/MultiplyService.java deleted file mode 100644 index a917896aeb..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/MultiplyService.java +++ /dev/null @@ -1,25 +0,0 @@ -/* - * 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 calculator; - -public interface MultiplyService { - - double multiply(double n1, double n2); - -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/MultiplyServiceImpl.java b/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/MultiplyServiceImpl.java deleted file mode 100644 index 4892481203..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/MultiplyServiceImpl.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * 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 calculator; - -import org.osoa.sca.annotations.Scope; - -/** - * An implementation of the Multiply service. - */ -@Scope("COMPOSITE") -public class MultiplyServiceImpl implements MultiplyService { - - public double multiply(double n1, double n2) { - return n1 * n2; - } - -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/NestedCalculatorClient.java b/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/NestedCalculatorClient.java deleted file mode 100644 index 27430b7f5d..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/NestedCalculatorClient.java +++ /dev/null @@ -1,44 +0,0 @@ -/* - * 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 calculator; - -import org.apache.tuscany.sca.core.spring.context.SCADomainContext; - -/** - * This client program shows how to create an SCA runtime, start it, locate the - * Calculator service and invoke it. - */ -public class NestedCalculatorClient { - public static void main(String[] args) throws Exception { - - SCADomainContext context = new SCADomainContext( - "org/apache/tuscany/core/spring/OuterCalculator.composite", - "org/apache/tuscany/core/spring/InnerCalculator.composite", - "org/apache/tuscany/core/spring/InnerOperations.composite"); - - CalculatorService calculatorService = context.getService(CalculatorService.class, "CalculatorServiceComponent/CalculatorServiceComponent"); - - // Calculate - System.out.println("3 + 2=" + calculatorService.add(3, 2)); - System.out.println("3 - 2=" + calculatorService.subtract(3, 2)); - System.out.println("3 * 2=" + calculatorService.multiply(3, 2)); - System.out.println("3 / 2=" + calculatorService.divide(3, 2)); - - } -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/SubtractService.java b/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/SubtractService.java deleted file mode 100644 index e328f024ea..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/SubtractService.java +++ /dev/null @@ -1,25 +0,0 @@ -/* - * 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 calculator; - -public interface SubtractService { - - double subtract(double n1, double n2); - -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/SubtractServiceImpl.java b/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/SubtractServiceImpl.java deleted file mode 100644 index ee1d7c3457..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/test/java/calculator/SubtractServiceImpl.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * 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 calculator; - -import org.osoa.sca.annotations.Scope; - -/** - * An implementation of the subtract service. - */ -@Scope("COMPOSITE") -public class SubtractServiceImpl implements SubtractService { - - public double subtract(double n1, double n2) { - return n1 - n2; - } - -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/test/java/org/apache/tuscany/sca/core/spring/CalculatorTestCase.java b/branches/sca-java-0.90/modules/core-spring/src/test/java/org/apache/tuscany/sca/core/spring/CalculatorTestCase.java deleted file mode 100644 index 97a44258a8..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/test/java/org/apache/tuscany/sca/core/spring/CalculatorTestCase.java +++ /dev/null @@ -1,54 +0,0 @@ -/* - * 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.sca.core.spring; - -import junit.framework.TestCase; - -import org.apache.tuscany.sca.core.spring.context.SCADomainContext; - -import calculator.CalculatorService; - -/** - * This shows how to test the Calculator service component. - */ -public class CalculatorTestCase extends TestCase { - - private SCADomainContext context; - private CalculatorService calculatorService; - - protected void setUp() throws Exception { - context = new SCADomainContext("org/apache/tuscany/sca/core/spring/Calculator.composite"); - - calculatorService = context.getService(CalculatorService.class, "CalculatorServiceComponent"); - } - - protected void tearDown() throws Exception { - context = null; - calculatorService = null; - } - - public void testCalculator() throws Exception { - // Calculate - assertEquals(calculatorService.add(3, 2), 5.0); - assertEquals(calculatorService.subtract(3, 2), 1.0); - assertEquals(calculatorService.multiply(3, 2), 6.0); - assertEquals(calculatorService.divide(3, 2), 1.5); - - } -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/test/java/org/apache/tuscany/sca/core/spring/NestedCalculatorTestCase.java b/branches/sca-java-0.90/modules/core-spring/src/test/java/org/apache/tuscany/sca/core/spring/NestedCalculatorTestCase.java deleted file mode 100644 index 5ef16a91d8..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/test/java/org/apache/tuscany/sca/core/spring/NestedCalculatorTestCase.java +++ /dev/null @@ -1,57 +0,0 @@ -/* - * 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.sca.core.spring; - -import junit.framework.TestCase; - -import org.apache.tuscany.sca.core.spring.context.SCADomainContext; - -import calculator.CalculatorService; - -/** - * This shows how to test the Calculator service component. - */ -public class NestedCalculatorTestCase extends TestCase { - - private SCADomainContext context; - private CalculatorService calculatorService; - - protected void setUp() throws Exception { - context = new SCADomainContext( - "org/apache/tuscany/sca/core/spring/OuterCalculator.composite", - "org/apache/tuscany/sca/core/spring/InnerCalculator.composite", - "org/apache/tuscany/sca/core/spring/InnerOperations.composite"); - - calculatorService = context.getService(CalculatorService.class, "CalculatorServiceComponent/InnerCalculatorServiceComponent"); - } - - protected void tearDown() throws Exception { - context = null; - calculatorService = null; - } - - public void testCalculator() throws Exception { - // Calculate - assertEquals(calculatorService.add(3, 2), 5.0); - assertEquals(calculatorService.subtract(3, 2), 1.0); - assertEquals(calculatorService.multiply(3, 2), 6.0); - assertEquals(calculatorService.divide(3, 2), 1.5); - - } -} diff --git a/branches/sca-java-0.90/modules/core-spring/src/test/resources/org/apache/tuscany/sca/core/spring/Calculator.composite b/branches/sca-java-0.90/modules/core-spring/src/test/resources/org/apache/tuscany/sca/core/spring/Calculator.composite deleted file mode 100644 index 6d998ba035..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/test/resources/org/apache/tuscany/sca/core/spring/Calculator.composite +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/branches/sca-java-0.90/modules/core-spring/src/test/resources/org/apache/tuscany/sca/core/spring/InnerCalculator.composite b/branches/sca-java-0.90/modules/core-spring/src/test/resources/org/apache/tuscany/sca/core/spring/InnerCalculator.composite deleted file mode 100644 index 8b043f2b4f..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/test/resources/org/apache/tuscany/sca/core/spring/InnerCalculator.composite +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - diff --git a/branches/sca-java-0.90/modules/core-spring/src/test/resources/org/apache/tuscany/sca/core/spring/InnerOperations.composite b/branches/sca-java-0.90/modules/core-spring/src/test/resources/org/apache/tuscany/sca/core/spring/InnerOperations.composite deleted file mode 100644 index d7d1124050..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/test/resources/org/apache/tuscany/sca/core/spring/InnerOperations.composite +++ /dev/null @@ -1,57 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/branches/sca-java-0.90/modules/core-spring/src/test/resources/org/apache/tuscany/sca/core/spring/OuterCalculator.composite b/branches/sca-java-0.90/modules/core-spring/src/test/resources/org/apache/tuscany/sca/core/spring/OuterCalculator.composite deleted file mode 100644 index c2b6cced36..0000000000 --- a/branches/sca-java-0.90/modules/core-spring/src/test/resources/org/apache/tuscany/sca/core/spring/OuterCalculator.composite +++ /dev/null @@ -1,41 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - -- cgit v1.2.3