summaryrefslogtreecommitdiffstats
path: root/branches/sca-java-0.90/modules/core-databinding/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'branches/sca-java-0.90/modules/core-databinding/src/main')
-rw-r--r--branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/module/DataBindingModuleActivator.java151
-rw-r--r--branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/processor/DataBindingJavaInterfaceProcessor.java135
-rw-r--r--branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/transformers/Exception2ExceptionTransformer.java126
-rw-r--r--branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/transformers/Input2InputTransformer.java203
-rw-r--r--branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/transformers/Output2OutputTransformer.java185
-rw-r--r--branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/wire/DataBindingRuntimeWireProcessor.java150
-rw-r--r--branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/wire/DataTransformationInteceptor.java224
-rw-r--r--branches/sca-java-0.90/modules/core-databinding/src/main/resources/META-INF/services/org.apache.tuscany.sca.core.ModuleActivator18
8 files changed, 0 insertions, 1192 deletions
diff --git a/branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/module/DataBindingModuleActivator.java b/branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/module/DataBindingModuleActivator.java
deleted file mode 100644
index 32666174b2..0000000000
--- a/branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/module/DataBindingModuleActivator.java
+++ /dev/null
@@ -1,151 +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.core.databinding.module;
-
-import org.apache.tuscany.core.databinding.processor.DataBindingJavaInterfaceProcessor;
-import org.apache.tuscany.core.databinding.transformers.Exception2ExceptionTransformer;
-import org.apache.tuscany.core.databinding.transformers.Input2InputTransformer;
-import org.apache.tuscany.core.databinding.transformers.Output2OutputTransformer;
-import org.apache.tuscany.core.databinding.wire.DataBindingRuntimeWireProcessor;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.core.ModuleActivator;
-import org.apache.tuscany.sca.databinding.DataBindingExtensionPoint;
-import org.apache.tuscany.sca.databinding.DefaultDataBindingExtensionPoint;
-import org.apache.tuscany.sca.databinding.DefaultTransformerExtensionPoint;
-import org.apache.tuscany.sca.databinding.TransformerExtensionPoint;
-import org.apache.tuscany.sca.databinding.impl.MediatorImpl;
-import org.apache.tuscany.sca.databinding.impl.Group2GroupTransformer;
-import org.apache.tuscany.sca.databinding.javabeans.DOMNode2JavaBeanTransformer;
-import org.apache.tuscany.sca.databinding.javabeans.JavaBean2DOMNodeTransformer;
-import org.apache.tuscany.sca.databinding.javabeans.JavaBeansDataBinding;
-import org.apache.tuscany.sca.databinding.xml.DOMDataBinding;
-import org.apache.tuscany.sca.databinding.xml.InputSource2Node;
-import org.apache.tuscany.sca.databinding.xml.InputSource2SAX;
-import org.apache.tuscany.sca.databinding.xml.InputStream2Node;
-import org.apache.tuscany.sca.databinding.xml.InputStream2SAX;
-import org.apache.tuscany.sca.databinding.xml.Node2OutputStream;
-import org.apache.tuscany.sca.databinding.xml.Node2String;
-import org.apache.tuscany.sca.databinding.xml.Node2Writer;
-import org.apache.tuscany.sca.databinding.xml.Node2XMLStreamReader;
-import org.apache.tuscany.sca.databinding.xml.Reader2Node;
-import org.apache.tuscany.sca.databinding.xml.Reader2SAX;
-import org.apache.tuscany.sca.databinding.xml.SAX2DOMPipe;
-import org.apache.tuscany.sca.databinding.xml.Source2ResultTransformer;
-import org.apache.tuscany.sca.databinding.xml.StreamDataPipe;
-import org.apache.tuscany.sca.databinding.xml.String2Node;
-import org.apache.tuscany.sca.databinding.xml.String2SAX;
-import org.apache.tuscany.sca.databinding.xml.String2XMLStreamReader;
-import org.apache.tuscany.sca.databinding.xml.Writer2ReaderDataPipe;
-import org.apache.tuscany.sca.databinding.xml.XMLGroupDataBinding;
-import org.apache.tuscany.sca.databinding.xml.XMLStreamReader2Node;
-import org.apache.tuscany.sca.databinding.xml.XMLStreamReader2SAX;
-import org.apache.tuscany.sca.databinding.xml.XMLStreamReader2String;
-import org.apache.tuscany.sca.databinding.xml.XMLStringDataBinding;
-import org.apache.tuscany.sca.interfacedef.java.introspect.JavaInterfaceIntrospectorExtensionPoint;
-import org.apache.tuscany.sca.runtime.RuntimeWireProcessorExtensionPoint;
-
-/**
- * @version $Rev$ $Date$
- */
-public class DataBindingModuleActivator implements ModuleActivator {
-
- private DataBindingExtensionPoint dataBindings;
- private TransformerExtensionPoint transformers;
-
- public Object[] getExtensionPoints() {
- dataBindings = new DefaultDataBindingExtensionPoint();
- transformers = new DefaultTransformerExtensionPoint(dataBindings);
- return new Object[] { dataBindings, transformers };
- }
-
- public void start(ExtensionPointRegistry registry) {
- MediatorImpl mediator = new MediatorImpl(dataBindings, transformers);
- Input2InputTransformer input2InputTransformer = new Input2InputTransformer();
- input2InputTransformer.setMediator(mediator);
-
- Output2OutputTransformer output2OutputTransformer = new Output2OutputTransformer();
- output2OutputTransformer.setMediator(mediator);
-
- Exception2ExceptionTransformer exception2ExceptionTransformer = new Exception2ExceptionTransformer();
- exception2ExceptionTransformer.setMediator(mediator);
-
- transformers.addTransformer(input2InputTransformer);
- transformers.addTransformer(output2OutputTransformer);
- transformers.addTransformer(exception2ExceptionTransformer);
-
- JavaInterfaceIntrospectorExtensionPoint introspectors = registry
- .getExtensionPoint(JavaInterfaceIntrospectorExtensionPoint.class);
- introspectors.addInterfaceVisitor(new DataBindingJavaInterfaceProcessor(dataBindings));
-
- RuntimeWireProcessorExtensionPoint wireProcessorExtensionPoint = registry
- .getExtensionPoint(RuntimeWireProcessorExtensionPoint.class);
- if (wireProcessorExtensionPoint != null) {
- wireProcessorExtensionPoint.addWireProcessor(new DataBindingRuntimeWireProcessor(mediator));
- }
-
- DOMDataBinding domDataBinding = new DOMDataBinding();
- domDataBinding.setDataBindingRegistry(dataBindings);
- dataBindings.addDataBinding(domDataBinding);
- XMLStringDataBinding xmlStringDataBinding = new XMLStringDataBinding();
- xmlStringDataBinding.setDataBindingRegistry(dataBindings);
- dataBindings.addDataBinding(xmlStringDataBinding);
- XMLGroupDataBinding xmlGroupDataBinding = new XMLGroupDataBinding();
- xmlGroupDataBinding.setDataBindingRegistry(dataBindings);
- dataBindings.addDataBinding(xmlGroupDataBinding);
- JavaBeansDataBinding javaBeansDataBinding = new JavaBeansDataBinding();
- javaBeansDataBinding.setDataBindingRegistry(dataBindings);
- dataBindings.addDataBinding(javaBeansDataBinding);
-
- Group2GroupTransformer group2GroupTransformer = new Group2GroupTransformer();
- group2GroupTransformer.setMediator(mediator);
- transformers.addTransformer(group2GroupTransformer);
-
- transformers.addTransformer(new InputSource2Node());
- transformers.addTransformer(new InputSource2SAX());
- transformers.addTransformer(new InputStream2Node());
- transformers.addTransformer(new InputStream2SAX());
-
- transformers.addTransformer(new DOMNode2JavaBeanTransformer());
- transformers.addTransformer(new Node2OutputStream());
- transformers.addTransformer(new Node2String());
- transformers.addTransformer(new Node2Writer());
- transformers.addTransformer(new Node2XMLStreamReader());
-
- transformers.addTransformer(new JavaBean2DOMNodeTransformer());
- transformers.addTransformer(new Reader2Node());
-
- transformers.addTransformer(new Reader2SAX());
- transformers.addTransformer(new SAX2DOMPipe());
-
- transformers.addTransformer(new Source2ResultTransformer());
- transformers.addTransformer(new StreamDataPipe());
- transformers.addTransformer(new String2Node());
- transformers.addTransformer(new String2SAX());
- transformers.addTransformer(new String2XMLStreamReader());
- transformers.addTransformer(new Writer2ReaderDataPipe());
-
- transformers.addTransformer(new XMLStreamReader2Node());
- transformers.addTransformer(new XMLStreamReader2SAX());
- transformers.addTransformer(new XMLStreamReader2String());
- }
-
- public void stop(ExtensionPointRegistry registry) {
- }
-}
diff --git a/branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/processor/DataBindingJavaInterfaceProcessor.java b/branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/processor/DataBindingJavaInterfaceProcessor.java
deleted file mode 100644
index b26846c682..0000000000
--- a/branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/processor/DataBindingJavaInterfaceProcessor.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.core.databinding.processor;
-
-import java.lang.reflect.Method;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.tuscany.sca.databinding.DataBindingExtensionPoint;
-import org.apache.tuscany.sca.databinding.annotation.DataBinding;
-import org.apache.tuscany.sca.interfacedef.DataType;
-import org.apache.tuscany.sca.interfacedef.InvalidInterfaceException;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.interfacedef.java.JavaInterface;
-import org.apache.tuscany.sca.interfacedef.java.introspect.JavaInterfaceVisitor;
-import org.osoa.sca.annotations.Reference;
-
-/**
- * The databinding annotation processor for java interfaces
- *
- * @version $Rev$ $Date$
- */
-public class DataBindingJavaInterfaceProcessor implements JavaInterfaceVisitor {
- private DataBindingExtensionPoint dataBindingRegistry;
-
- public DataBindingJavaInterfaceProcessor(@Reference
- DataBindingExtensionPoint dataBindingRegistry) {
- super();
- this.dataBindingRegistry = dataBindingRegistry;
- }
-
- public void visitInterface(JavaInterface javaInterface) throws InvalidInterfaceException {
- if (!javaInterface.isRemotable()) {
- return;
- }
- List<Operation> operations = javaInterface.getOperations();
- processInterface(javaInterface, operations);
- }
-
- private void introspectWrapperStyle(Operation operation) {
- if (operation.isWrapperStyle()) {
- return;
- }
- DataType outputType = operation.getOutputType();
- DataType<List<DataType>> inputType = operation.getInputType();
- if (outputType == null || inputType == null) {
- return;
- }
- if (inputType.getLogical().size() != 1) {
- return;
- }
- DataType wrapperType = inputType.getLogical().get(0);
- if (outputType.getDataBinding().equals(wrapperType.getDataBinding())) {
- operation.setWrapperStyle(true);
- operation.setDataBinding(outputType.getDataBinding());
- }
- }
-
- private void processInterface(JavaInterface javaInterface, List<Operation> operations) {
- Class<?> clazz = javaInterface.getJavaClass();
- DataBinding dataBinding = clazz.getAnnotation(DataBinding.class);
- String dataBindingId = null;
- boolean wrapperStyle = false;
- if (dataBinding != null) {
- dataBindingId = dataBinding.value();
- wrapperStyle = dataBinding.wrapperStyle();
- }
-
- Map<String, Operation> opMap = new HashMap<String, Operation>();
- for (Operation op : javaInterface.getOperations()) {
- opMap.put(op.getName(), op);
- if (dataBindingId != null) {
- op.setDataBinding(dataBindingId);
- op.setWrapperStyle(wrapperStyle);
- }
- }
- for (Method method : clazz.getMethods()) {
- Operation operation = opMap.get(method.getName());
- DataBinding methodDataBinding = clazz.getAnnotation(DataBinding.class);
- if (methodDataBinding == null) {
- methodDataBinding = dataBinding;
- }
- dataBindingId = null;
- wrapperStyle = false;
- if (dataBinding != null) {
- dataBindingId = dataBinding.value();
- wrapperStyle = dataBinding.wrapperStyle();
- operation.setDataBinding(dataBindingId);
- operation.setWrapperStyle(wrapperStyle);
- }
-
- // FIXME: We need a better way to identify simple java types
- for (org.apache.tuscany.sca.interfacedef.DataType<?> d : operation.getInputType().getLogical()) {
- if (d.getDataBinding() == null) {
- d.setDataBinding(dataBindingId);
- }
- dataBindingRegistry.introspectType(d, method.getAnnotations());
- }
- if (operation.getOutputType() != null) {
- DataType<?> d = operation.getOutputType();
- if (d.getDataBinding() == null) {
- d.setDataBinding(dataBindingId);
- }
- dataBindingRegistry.introspectType(d, method.getAnnotations());
- }
- for (org.apache.tuscany.sca.interfacedef.DataType<?> d : operation.getFaultTypes()) {
- if (d.getDataBinding() == null) {
- d.setDataBinding(dataBindingId);
- }
- dataBindingRegistry.introspectType(d, method.getAnnotations());
- }
-
- // FIXME: Do we want to heuristically check the wrapper style?
- // introspectWrapperStyle(operation);
- }
- }
-}
diff --git a/branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/transformers/Exception2ExceptionTransformer.java b/branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/transformers/Exception2ExceptionTransformer.java
deleted file mode 100644
index 9711fe881a..0000000000
--- a/branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/transformers/Exception2ExceptionTransformer.java
+++ /dev/null
@@ -1,126 +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.core.databinding.transformers;
-
-import org.apache.tuscany.sca.databinding.DataBinding;
-import org.apache.tuscany.sca.databinding.ExceptionHandler;
-import org.apache.tuscany.sca.databinding.Mediator;
-import org.apache.tuscany.sca.databinding.PullTransformer;
-import org.apache.tuscany.sca.databinding.TransformationContext;
-import org.apache.tuscany.sca.databinding.Transformer;
-import org.apache.tuscany.sca.databinding.impl.BaseTransformer;
-import org.apache.tuscany.sca.interfacedef.DataType;
-import org.osoa.sca.annotations.Reference;
-import org.osoa.sca.annotations.Service;
-
-/**
- * This is a special transformer to transform the exception from one IDL to the
- * other one
- */
-@Service(Transformer.class)
-public class Exception2ExceptionTransformer extends BaseTransformer<Object[], Object[]> implements
- PullTransformer<Exception, Exception> {
-
- protected Mediator mediator;
-
- public Exception2ExceptionTransformer() {
- super();
- }
-
- @Override
- public String getSourceDataBinding() {
- return DataBinding.IDL_FAULT;
- }
-
- @Override
- public String getTargetDataBinding() {
- return DataBinding.IDL_FAULT;
- }
-
- /**
- * @param mediator the mediator to set
- */
- @Reference
- public void setMediator(Mediator mediator) {
- this.mediator = mediator;
- }
-
- /**
- * @see org.apache.tuscany.sca.databinding.impl.BaseTransformer#getSourceType()
- */
- @Override
- protected Class getSourceType() {
- return Exception.class;
- }
-
- /**
- * @see org.apache.tuscany.sca.databinding.impl.BaseTransformer#getTargetType()
- */
- @Override
- protected Class getTargetType() {
- return Exception.class;
- }
-
- /**
- * @see org.apache.tuscany.sca.databinding.Transformer#getWeight()
- */
- public int getWeight() {
- return 10000;
- }
-
- @SuppressWarnings("unchecked")
- public Exception transform(Exception source, TransformationContext context) {
- DataType<DataType> sourceType = context.getSourceDataType();
-
- DataType<DataType> targetType = context.getTargetDataType();
-
- ExceptionHandler exceptionHandler = getExceptionHandler(sourceType);
- if (exceptionHandler == null) {
- return source;
- }
-
- Object sourceFaultInfo = exceptionHandler.getFaultInfo(source);
- Object targetFaultInfo =
- mediator.mediate(sourceFaultInfo, sourceType.getLogical(), targetType.getLogical(), context.getMetadata());
-
- ExceptionHandler targetHandler = getExceptionHandler(targetType);
-
- if (targetHandler != null) {
- Exception targetException =
- targetHandler.createException(targetType, source.getMessage(), targetFaultInfo, source.getCause());
- return targetException;
- }
-
- // FIXME
- return source;
-
- }
-
- private ExceptionHandler getExceptionHandler(DataType<DataType> targetType) {
- DataType targetFaultType = (DataType)targetType.getLogical();
- DataBinding targetDataBinding =
- mediator.getDataBindings().getDataBinding(targetFaultType.getDataBinding());
- if (targetDataBinding == null) {
- return null;
- }
- ExceptionHandler targetHandler = targetDataBinding.getExceptionHandler();
- return targetHandler;
- }
-}
diff --git a/branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/transformers/Input2InputTransformer.java b/branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/transformers/Input2InputTransformer.java
deleted file mode 100644
index 3b4a189193..0000000000
--- a/branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/transformers/Input2InputTransformer.java
+++ /dev/null
@@ -1,203 +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.core.databinding.transformers;
-
-import java.util.List;
-
-import org.apache.tuscany.sca.databinding.DataBinding;
-import org.apache.tuscany.sca.databinding.Mediator;
-import org.apache.tuscany.sca.databinding.PullTransformer;
-import org.apache.tuscany.sca.databinding.TransformationContext;
-import org.apache.tuscany.sca.databinding.TransformationException;
-import org.apache.tuscany.sca.databinding.Transformer;
-import org.apache.tuscany.sca.databinding.WrapperHandler;
-import org.apache.tuscany.sca.databinding.impl.BaseTransformer;
-import org.apache.tuscany.sca.interfacedef.DataType;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.interfacedef.impl.DataTypeImpl;
-import org.apache.tuscany.sca.interfacedef.util.ElementInfo;
-import org.apache.tuscany.sca.interfacedef.util.WrapperInfo;
-import org.apache.tuscany.sca.interfacedef.util.XMLType;
-import org.osoa.sca.annotations.Reference;
-import org.osoa.sca.annotations.Service;
-
-/**
- * This is a special transformer to transform the input from one IDL to the
- * other one
- */
-@Service(Transformer.class)
-public class Input2InputTransformer extends BaseTransformer<Object[], Object[]> implements
- PullTransformer<Object[], Object[]> {
-
- protected Mediator mediator;
-
- public Input2InputTransformer() {
- super();
- }
-
- @Override
- public String getSourceDataBinding() {
- return DataBinding.IDL_INPUT;
- }
-
- @Override
- public String getTargetDataBinding() {
- return DataBinding.IDL_INPUT;
- }
-
- /**
- * @param mediator the mediator to set
- */
- @Reference
- public void setMediator(Mediator mediator) {
- this.mediator = mediator;
- }
-
- /**
- * @see org.apache.tuscany.sca.databinding.impl.BaseTransformer#getSourceType()
- */
- @Override
- protected Class getSourceType() {
- return Object[].class;
- }
-
- /**
- * @see org.apache.tuscany.sca.databinding.impl.BaseTransformer#getTargetType()
- */
- @Override
- protected Class getTargetType() {
- return Object[].class;
- }
-
- /**
- * @see org.apache.tuscany.sca.databinding.Transformer#getWeight()
- */
- public int getWeight() {
- return 10000;
- }
-
- @SuppressWarnings("unchecked")
- public Object[] transform(Object[] source, TransformationContext context) {
- DataType<List<DataType>> sourceType = context.getSourceDataType();
- Operation sourceOp = context.getSourceOperation();
- boolean sourceWrapped = sourceOp != null && sourceOp.isWrapperStyle();
-
- WrapperHandler sourceWrapperHandler = null;
- String sourceDataBinding = getDataBinding(sourceOp);
- if (sourceWrapped) {
- sourceWrapperHandler = getWrapperHandler(sourceDataBinding, true);
- }
-
- DataType<List<DataType>> targetType = context.getTargetDataType();
- Operation targetOp = (Operation)context.getTargetOperation();
- boolean targetWrapped = targetOp != null && targetOp.isWrapperStyle();
- WrapperHandler targetWrapperHandler = null;
- String targetDataBinding = null;
- if (targetWrapped) {
- targetDataBinding = getDataBinding(targetOp);
- targetWrapperHandler = getWrapperHandler(targetDataBinding, true);
- }
-
- if ((!sourceWrapped) && targetWrapped) {
- // Unwrapped --> Wrapped
- WrapperInfo wrapper = targetOp.getWrapper();
- ElementInfo wrapperElement = wrapper.getInputWrapperElement();
-
- // If the source can be wrapped, wrapped it first
- if (sourceWrapperHandler != null) {
- Object sourceWrapper = sourceWrapperHandler.create(wrapperElement, context);
- for (int i = 0; i < source.length; i++) {
- ElementInfo argElement = wrapper.getInputChildElements().get(i);
- sourceWrapperHandler.setChild(sourceWrapper, i, argElement, source[0]);
- }
- }
- Object targetWrapper = targetWrapperHandler.create(wrapperElement, context);
- if (source == null) {
- return new Object[] {targetWrapper};
- }
- List<DataType> argTypes = wrapper.getUnwrappedInputType().getLogical();
-
- for (int i = 0; i < source.length; i++) {
- ElementInfo argElement = wrapper.getInputChildElements().get(i);
- DataType<XMLType> argType = argTypes.get(i);
- Object child = source[i];
- child = mediator.mediate(source[i], sourceType.getLogical().get(i), argType, context.getMetadata());
- targetWrapperHandler.setChild(targetWrapper, i, argElement, child);
- }
- return new Object[] {targetWrapper};
- } else if (sourceWrapped && (!targetWrapped)) {
- // Wrapped to Unwrapped
- Object sourceWrapper = source[0];
- // List<ElementInfo> childElements =
- // sourceOp.getWrapper().getInputChildElements();
- Object[] target = null;
-
- targetWrapperHandler = getWrapperHandler(targetDataBinding, false);
- if (targetWrapperHandler != null) {
- ElementInfo wrapperElement = sourceOp.getWrapper().getInputWrapperElement();
- // Object targetWrapper =
- // targetWrapperHandler.create(wrapperElement, context);
- DataType<XMLType> targetWrapperType = new DataTypeImpl<XMLType>(targetDataBinding, Object.class,
- new XMLType(wrapperElement));
- Object targetWrapper = mediator.mediate(sourceWrapper,
- sourceType.getLogical().get(0),
- targetWrapperType,
- context.getMetadata());
- target = targetWrapperHandler.getChildren(targetWrapper).toArray();
- } else {
- Object[] sourceChildren = sourceWrapperHandler.getChildren(sourceWrapper).toArray();
- target = new Object[sourceChildren.length];
- for (int i = 0; i < sourceChildren.length; i++) {
- DataType<XMLType> childType = sourceOp.getWrapper().getUnwrappedInputType().getLogical().get(i);
- target[i] = mediator.mediate(sourceChildren[i], childType, targetType.getLogical().get(i), context
- .getMetadata());
- }
- }
- return target;
- } else {
- // Assuming wrapper to wrapper conversion can be handled here as
- // well
- Object[] newArgs = new Object[source.length];
- for (int i = 0; i < source.length; i++) {
- Object child = mediator.mediate(source[i], sourceType.getLogical().get(i), targetType.getLogical()
- .get(i), context.getMetadata());
- newArgs[i] = child;
- }
- return newArgs;
- }
- }
-
- private WrapperHandler getWrapperHandler(String dataBindingId, boolean required) {
- WrapperHandler wrapperHandler = null;
- if (dataBindingId != null) {
- DataBinding dataBinding = mediator.getDataBindings().getDataBinding(dataBindingId);
- wrapperHandler = dataBinding == null ? null : dataBinding.getWrapperHandler();
- }
- if (wrapperHandler == null && required) {
- throw new TransformationException("No wrapper handler is provided for databinding: " + dataBindingId);
- }
- return wrapperHandler;
- }
-
- private String getDataBinding(Operation operation) {
- return operation.getDataBinding();
- }
-
-}
diff --git a/branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/transformers/Output2OutputTransformer.java b/branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/transformers/Output2OutputTransformer.java
deleted file mode 100644
index bf52cedbc2..0000000000
--- a/branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/transformers/Output2OutputTransformer.java
+++ /dev/null
@@ -1,185 +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.core.databinding.transformers;
-
-import java.util.List;
-
-import org.apache.tuscany.sca.databinding.DataBinding;
-import org.apache.tuscany.sca.databinding.Mediator;
-import org.apache.tuscany.sca.databinding.PullTransformer;
-import org.apache.tuscany.sca.databinding.TransformationContext;
-import org.apache.tuscany.sca.databinding.TransformationException;
-import org.apache.tuscany.sca.databinding.Transformer;
-import org.apache.tuscany.sca.databinding.WrapperHandler;
-import org.apache.tuscany.sca.databinding.impl.BaseTransformer;
-import org.apache.tuscany.sca.interfacedef.DataType;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.interfacedef.impl.DataTypeImpl;
-import org.apache.tuscany.sca.interfacedef.util.ElementInfo;
-import org.apache.tuscany.sca.interfacedef.util.WrapperInfo;
-import org.apache.tuscany.sca.interfacedef.util.XMLType;
-import org.osoa.sca.annotations.Reference;
-import org.osoa.sca.annotations.Service;
-
-/**
- * This is a special transformer to transform the output from one IDL to the
- * other one
- */
-@Service(Transformer.class)
-public class Output2OutputTransformer extends BaseTransformer<Object, Object> implements
- PullTransformer<Object, Object> {
-
- protected Mediator mediator;
-
- /**
- * @param wrapperHandler
- */
- public Output2OutputTransformer() {
- super();
- }
-
- /**
- * @param mediator the mediator to set
- */
- @Reference
- public void setMediator(Mediator mediator) {
- this.mediator = mediator;
- }
-
- @Override
- public String getSourceDataBinding() {
- return DataBinding.IDL_OUTPUT;
- }
-
- @Override
- public String getTargetDataBinding() {
- return DataBinding.IDL_OUTPUT;
- }
-
- /**
- * @see org.apache.tuscany.sca.databinding.impl.BaseTransformer#getSourceType()
- */
- @Override
- protected Class getSourceType() {
- return Object.class;
- }
-
- /**
- * @see org.apache.tuscany.sca.databinding.impl.BaseTransformer#getTargetType()
- */
- @Override
- protected Class getTargetType() {
- return Object.class;
- }
-
- /**
- * @see org.apache.tuscany.sca.databinding.Transformer#getWeight()
- */
- public int getWeight() {
- return 10;
- }
-
- private String getDataBinding(Operation operation) {
- return operation.getDataBinding();
- }
-
- private WrapperHandler getWrapperHandler(String dataBindingId, boolean required) {
- WrapperHandler wrapperHandler = null;
- if (dataBindingId != null) {
- DataBinding dataBinding = mediator.getDataBindings().getDataBinding(dataBindingId);
- wrapperHandler = dataBinding == null ? null : dataBinding.getWrapperHandler();
- }
- if (wrapperHandler == null && required) {
- throw new TransformationException("No wrapper handler is provided for databinding: " + dataBindingId);
- }
- return wrapperHandler;
- }
-
- @SuppressWarnings("unchecked")
- public Object transform(Object response, TransformationContext context) {
- try {
- DataType<DataType> sourceType = context.getSourceDataType();
- Operation sourceOp = context.getSourceOperation();
- boolean sourceWrapped = sourceOp != null && sourceOp.isWrapperStyle();
- WrapperHandler sourceWrapperHandler = null;
- if (sourceWrapped) {
- sourceWrapperHandler = getWrapperHandler(getDataBinding(sourceOp), true);
- }
-
- DataType<DataType> targetType = context.getTargetDataType();
- Operation targetOp = context.getTargetOperation();
- boolean targetWrapped = targetOp != null && targetOp.isWrapperStyle();
- WrapperHandler targetWrapperHandler = null;
- if (targetWrapped) {
- targetWrapperHandler = getWrapperHandler(getDataBinding(targetOp), true);
- }
-
- if ((!sourceWrapped) && targetWrapped) {
- // Unwrapped --> Wrapped
- WrapperInfo wrapper = targetOp.getWrapper();
- Object targetWrapper = targetWrapperHandler.create(wrapper.getOutputWrapperElement(), context);
-
- List<ElementInfo> childElements = wrapper.getOutputChildElements();
- if (childElements.isEmpty()) {
- // void output
- return targetWrapper;
- }
- ElementInfo argElement = childElements.get(0);
- DataType<XMLType> argType = wrapper.getUnwrappedOutputType();
- Object child = response;
- child = mediator.mediate(response, sourceType.getLogical(), argType, context.getMetadata());
- targetWrapperHandler.setChild(targetWrapper, 0, argElement, child);
- return targetWrapper;
- } else if (sourceWrapped && (!targetWrapped)) {
- // Wrapped to Unwrapped
- Object sourceWrapper = response;
- List<ElementInfo> childElements = sourceOp.getWrapper().getOutputChildElements();
- if (childElements.isEmpty()) {
- // The void output
- return null;
- }
- targetWrapperHandler = getWrapperHandler(getDataBinding(targetOp), false);
- if (targetWrapperHandler != null) {
- ElementInfo wrapperElement = sourceOp.getWrapper().getInputWrapperElement();
- // Object targetWrapper =
- // targetWrapperHandler.create(wrapperElement, context);
- DataType<XMLType> targetWrapperType = new DataTypeImpl<XMLType>(targetType.getLogical()
- .getDataBinding(), Object.class, new XMLType(wrapperElement));
- Object targetWrapper = mediator.mediate(sourceWrapper,
- sourceType.getLogical(),
- targetWrapperType,
- context.getMetadata());
- return targetWrapperHandler.getChildren(targetWrapper).get(0);
- } else {
- Object child = sourceWrapperHandler.getChildren(sourceWrapper).get(0);
- DataType<?> childType = sourceOp.getWrapper().getUnwrappedOutputType();
- return mediator.mediate(child, childType, targetType.getLogical(), context.getMetadata());
- }
- } else {
- // FIXME: Do we want to handle wrapped to wrapped?
- return mediator.mediate(response, sourceType.getLogical(), targetType.getLogical(), context
- .getMetadata());
- }
- } catch (Exception e) {
- throw new TransformationException(e);
- }
- }
-
-}
diff --git a/branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/wire/DataBindingRuntimeWireProcessor.java b/branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/wire/DataBindingRuntimeWireProcessor.java
deleted file mode 100644
index feaf48f501..0000000000
--- a/branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/wire/DataBindingRuntimeWireProcessor.java
+++ /dev/null
@@ -1,150 +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.core.databinding.wire;
-
-import java.util.List;
-
-import org.apache.tuscany.sca.databinding.Mediator;
-import org.apache.tuscany.sca.interfacedef.DataType;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.invocation.InvocationChain;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-import org.apache.tuscany.sca.runtime.RuntimeWireProcessor;
-
-/**
- * This processor is responsible to add an interceptor to invocation chain if
- * the source and target operations have different databinding requirements
- *
- * @version $Rev$ $Date$
- */
-public class DataBindingRuntimeWireProcessor implements RuntimeWireProcessor {
- private Mediator mediator;
-
- public DataBindingRuntimeWireProcessor(Mediator mediator) {
- super();
- this.mediator = mediator;
- }
-
- public boolean isTransformationRequired(DataType source, DataType target) {
- if (source == target) {
- return false;
- }
- String sourceDataBinding = source.getDataBinding();
- String targetDataBinding = target.getDataBinding();
- if (sourceDataBinding == targetDataBinding) {
- return false;
- }
- if (sourceDataBinding == null || targetDataBinding == null) {
- return true;
- }
- return !sourceDataBinding.equals(targetDataBinding);
- }
-
- public boolean isTransformationRequired(Operation source, Operation target) {
- if (source == target) {
- return false;
- }
-
- // Check output type
- DataType sourceOutputType = source.getOutputType();
- DataType targetOutputType = target.getOutputType();
-
- // Note the target output type is now the source for checking
- // compatibility
- if (isTransformationRequired(targetOutputType, sourceOutputType)) {
- return true;
- }
-
- List<DataType> sourceInputType = source.getInputType().getLogical();
- List<DataType> targetInputType = target.getInputType().getLogical();
-
- int size = sourceInputType.size();
- for (int i = 0; i < size; i++) {
- if (isTransformationRequired(sourceInputType.get(i), targetInputType.get(i))) {
- return true;
- }
- }
-
- return false;
- }
-
- private boolean isTransformationRequired(InterfaceContract sourceContract,
- Operation sourceOperation,
- InterfaceContract targetContract,
- Operation targetOperation) {
- if (targetContract == null) {
- targetContract = sourceContract;
- }
- if (sourceContract == targetContract) {
- return false;
- }
- return isTransformationRequired(sourceOperation, targetOperation);
- }
-
- public void process(RuntimeWire wire) {
- InterfaceContract sourceContract = wire.getSource().getInterfaceContract();
- InterfaceContract targetContract = wire.getTarget().getInterfaceContract();
- if (targetContract == null) {
- targetContract = sourceContract;
- }
- if (sourceContract == targetContract) {
- return;
- }
- List<InvocationChain> chains = wire.getInvocationChains();
- for (InvocationChain chain : chains) {
- Operation sourceOperation = chain.getSourceOperation();
- Operation targetOperation = chain.getTargetOperation();
-
- if (isTransformationRequired(sourceContract, sourceOperation, targetContract, targetOperation)) {
- // Add the interceptor to the source side because multiple
- // references can be wired
- // to the same service
- DataTransformationInteceptor interceptor = new DataTransformationInteceptor(wire, sourceOperation,
- targetOperation);
- interceptor.setMediator(mediator);
- chain.addInterceptor(0, interceptor);
- }
- }
-
- // Object targetAddress = UriHelper.getBaseName(source.getUri());
- List<InvocationChain> callbackChains = wire.getCallbackInvocationChains();
- if (callbackChains == null) {
- // callback chains could be null
- return;
- }
-
- for (InvocationChain chain : callbackChains) {
- Operation sourceOperation = chain.getSourceOperation();
- Operation targetOperation = chain.getTargetOperation();
- if (isTransformationRequired(sourceContract, sourceOperation, targetContract, targetOperation)) {
-
- // Add the interceptor to the source side because multiple
- // references can be wired
- // to the same service
- DataTransformationInteceptor interceptor = new DataTransformationInteceptor(wire, sourceOperation,
- targetOperation);
- interceptor.setMediator(mediator);
- chain.addInterceptor(0, interceptor);
- }
- }
- }
-
-}
diff --git a/branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/wire/DataTransformationInteceptor.java b/branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/wire/DataTransformationInteceptor.java
deleted file mode 100644
index 39bc6cf913..0000000000
--- a/branches/sca-java-0.90/modules/core-databinding/src/main/java/org/apache/tuscany/core/databinding/wire/DataTransformationInteceptor.java
+++ /dev/null
@@ -1,224 +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.core.databinding.wire;
-
-import java.lang.reflect.InvocationTargetException;
-import java.util.HashMap;
-import java.util.Map;
-
-import org.apache.tuscany.sca.databinding.DataBinding;
-import org.apache.tuscany.sca.databinding.ExceptionHandler;
-import org.apache.tuscany.sca.databinding.Mediator;
-import org.apache.tuscany.sca.databinding.TransformationException;
-import org.apache.tuscany.sca.interfacedef.DataType;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.interfacedef.impl.DataTypeImpl;
-import org.apache.tuscany.sca.interfacedef.util.FaultException;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-
-/**
- * An interceptor to transform data accross databindings on the wire
- *
- * @version $Rev$ $Date$
- */
-public class DataTransformationInteceptor implements Interceptor {
- private Invoker next;
-
- private Operation sourceOperation;
-
- private Operation targetOperation;
-
- private Mediator mediator;
-
- public DataTransformationInteceptor(RuntimeWire wire,
- Operation sourceOperation,
- Operation targetOperation) {
- super();
- this.sourceOperation = sourceOperation;
- this.targetOperation = targetOperation;
- }
-
- public Invoker getNext() {
- return next;
- }
-
- public Message invoke(Message msg) {
- Object input = transform(msg.getBody(), sourceOperation.getInputType(), targetOperation.getInputType(), false);
- msg.setBody(input);
- Message resultMsg = next.invoke(msg);
- Object result = resultMsg.getBody();
- if (sourceOperation.isNonBlocking()) {
- // Not to reset the message body
- return resultMsg;
- }
-
- // FIXME: Should we fix the Operation model so that getOutputType
- // returns DataType<DataType<T>>?
- DataType<DataType> targetType =
- new DataTypeImpl<DataType>(DataBinding.IDL_OUTPUT, Object.class, targetOperation.getOutputType());
-
- DataType<DataType> sourceType =
- new DataTypeImpl<DataType>(DataBinding.IDL_OUTPUT, Object.class, sourceOperation.getOutputType());
-
- if (resultMsg.isFault()) {
-
- // FIXME: We need to figure out what fault type it is and then
- // transform it
- // back the source fault type
- // throw new InvocationRuntimeException((Throwable) result);
-
- if ((result instanceof Exception) && !(result instanceof RuntimeException)) {
- // FIXME: How to match fault data to a fault type for the
- // operation?
-
- // If the result is from an InvocationTargetException look at
- // the actual cause.
- if (result instanceof InvocationTargetException) {
- result = ((InvocationTargetException)result).getCause();
- }
- DataType targetDataType = null;
- for (DataType exType : targetOperation.getFaultTypes()) {
- if (((Class)exType.getPhysical()).isInstance(result)) {
- if (result instanceof FaultException) {
- if (((FaultException)result).isMatchingType(exType.getLogical())) {
- targetDataType = exType;
- break;
- }
- } else {
- targetDataType = exType;
- break;
- }
- }
- }
-
- if (targetDataType == null) {
- // Not a business exception
- return resultMsg;
- }
-
- DataType targetFaultType = getFaultType(targetDataType);
- if (targetFaultType == null) {
- throw new TransformationException("Target fault type cannot be resolved");
- }
-
- // FIXME: How to match a source fault type to a target fault
- // type?
- DataType sourceDataType = null;
- DataType sourceFaultType = null;
- for (DataType exType : sourceOperation.getFaultTypes()) {
- DataType faultType = getFaultType(exType);
- // Match by the QName (XSD element) of the fault type
- if (faultType != null && targetFaultType.getLogical().equals(faultType.getLogical())) {
- sourceDataType = exType;
- sourceFaultType = faultType;
- break;
- }
- }
-
- if (sourceFaultType == null) {
- throw new TransformationException("No matching source fault type is found");
- }
-
- Object newResult =
- transformException(result, targetDataType, sourceDataType, targetFaultType, sourceFaultType);
- if (newResult != result) {
- resultMsg.setFaultBody(newResult);
- }
- }
-
- } else {
- assert !(result instanceof Throwable) : "Expected messages that are not throwable " + result;
-
- Object newResult = transform(result, targetType, sourceType, true);
- if (newResult != result) {
- resultMsg.setBody(newResult);
- }
- }
-
- return resultMsg;
- }
-
- private Object transform(Object source, DataType sourceType, DataType targetType, boolean isResponse) {
- if (sourceType == targetType || (sourceType != null && sourceType.equals(targetType))) {
- return source;
- }
- Map<String, Object> metadata = new HashMap<String, Object>();
- metadata.put("source.operation", isResponse? targetOperation: sourceOperation);
- metadata.put("target.operation", isResponse? sourceOperation: targetOperation);
- return mediator.mediate(source, sourceType, targetType, metadata);
- }
-
- private DataType getFaultType(DataType exceptionType) {
- // FIXME: We cannot assume the exception will have a databinding set
- DataBinding targetDataBinding =
- mediator.getDataBindings().getDataBinding(exceptionType.getDataBinding());
- if (targetDataBinding == null) {
- return null;
- }
- ExceptionHandler targetHandler = targetDataBinding.getExceptionHandler();
- if (targetHandler == null) {
- return null;
- }
- return targetHandler.getFaultType(exceptionType);
- }
-
- /**
- * @param source The source exception
- * @param sourceExType The data type for the source exception
- * @param targetExType The data type for the target exception
- * @param sourceType The fault type for the source
- * @param targetType The fault type for the target
- * @return
- */
- private Object transformException(Object source,
- DataType sourceExType,
- DataType targetExType,
- DataType sourceType,
- DataType targetType) {
- if (sourceType == targetType || (sourceType != null && sourceType.equals(targetType))) {
- return source;
- }
- Map<String, Object> metadata = new HashMap<String, Object>();
- metadata.put("source.operation", targetOperation);
- metadata.put("target.operation", sourceOperation);
-
- DataType<DataType> eSourceDataType =
- new DataTypeImpl<DataType>("idl:fault", sourceExType.getPhysical(), sourceType);
- DataType<DataType> eTargetDataType =
- new DataTypeImpl<DataType>("idl:fault", targetExType.getPhysical(), targetType);
-
- return mediator.mediate(source, eSourceDataType, eTargetDataType, metadata);
- }
-
- public void setNext(Invoker next) {
- this.next = next;
- }
-
- /**
- * @param mediator the mediator to set
- */
- public void setMediator(Mediator mediator) {
- this.mediator = mediator;
- }
-
-}
diff --git a/branches/sca-java-0.90/modules/core-databinding/src/main/resources/META-INF/services/org.apache.tuscany.sca.core.ModuleActivator b/branches/sca-java-0.90/modules/core-databinding/src/main/resources/META-INF/services/org.apache.tuscany.sca.core.ModuleActivator
deleted file mode 100644
index 60f6de3b96..0000000000
--- a/branches/sca-java-0.90/modules/core-databinding/src/main/resources/META-INF/services/org.apache.tuscany.sca.core.ModuleActivator
+++ /dev/null
@@ -1,18 +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.
-# Implementation class for the ExtensionActivator
-org.apache.tuscany.core.databinding.module.DataBindingModuleActivator