From 2f187c12e2ceceb61ca2745463fcd7fbbb438b72 Mon Sep 17 00:00:00 2001 From: antelder Date: Thu, 16 Feb 2012 15:39:43 +0000 Subject: Rename beta3 tag to final name git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1245035 13f79535-47bb-0310-9956-ffa450edef68 --- .../json/provider/JSONWireFormatInterceptor.java | 159 --------------------- .../provider/JSONWireFormatProviderFactory.java | 52 ------- .../provider/JSONWireFormatReferenceProvider.java | 54 ------- .../provider/JSONWireFormatServiceProvider.java | 138 ------------------ .../xml/provider/XMLWireFormatInterceptor.java | 143 ------------------ .../xml/provider/XMLWireFormatProviderFactory.java | 52 ------- .../provider/XMLWireFormatReferenceProvider.java | 54 ------- .../xml/provider/XMLWireFormatServiceProvider.java | 139 ------------------ 8 files changed, 791 deletions(-) delete mode 100644 sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/json/provider/JSONWireFormatInterceptor.java delete mode 100644 sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/json/provider/JSONWireFormatProviderFactory.java delete mode 100644 sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/json/provider/JSONWireFormatReferenceProvider.java delete mode 100644 sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/json/provider/JSONWireFormatServiceProvider.java delete mode 100644 sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/xml/provider/XMLWireFormatInterceptor.java delete mode 100644 sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/xml/provider/XMLWireFormatProviderFactory.java delete mode 100644 sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/xml/provider/XMLWireFormatReferenceProvider.java delete mode 100644 sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/xml/provider/XMLWireFormatServiceProvider.java (limited to 'sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat') diff --git a/sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/json/provider/JSONWireFormatInterceptor.java b/sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/json/provider/JSONWireFormatInterceptor.java deleted file mode 100644 index e5ce32328c..0000000000 --- a/sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/json/provider/JSONWireFormatInterceptor.java +++ /dev/null @@ -1,159 +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.binding.rest.wireformat.json.provider; - -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.io.StringWriter; - -import org.apache.tuscany.sca.binding.rest.RESTBinding; -import org.apache.tuscany.sca.binding.rest.wireformat.json.JSONWireFormat; -import org.apache.tuscany.sca.common.http.HTTPContext; -import org.apache.tuscany.sca.core.ExtensionPointRegistry; -import org.apache.tuscany.sca.interfacedef.Operation; -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.RuntimeEndpoint; -import org.json.JSONObject; - -/** - * JSON wire format Interceptor. - * - * @version $Rev$ $Date$ -*/ -public class JSONWireFormatInterceptor implements Interceptor { - private Invoker next; - private RESTBinding binding; - - public JSONWireFormatInterceptor(ExtensionPointRegistry extensionPoints, RuntimeEndpoint endpoint) { - this.binding = (RESTBinding) endpoint.getBinding(); - } - - public Invoker getNext() { - return next; - } - - public void setNext(Invoker next) { - this.next = next; - } - - public Message invoke(Message msg) { - HTTPContext bindingContext = (HTTPContext) msg.getBindingContext(); - if (bindingContext == null) { - return getNext().invoke(msg); - } - - - if (binding.getRequestWireFormat() instanceof JSONWireFormat) { - if( isPayloadSupported(bindingContext.getHttpRequest().getMethod()) && msg.getBody() != null) { - msg = invokeRequest(bindingContext, msg); - } - } - - msg = getNext().invoke(msg); - - //if it's oneway return back - Operation operation = msg.getOperation(); - if (operation != null && operation.isNonBlocking()) { - return msg; - } - - if (binding.getResponseWireFormat() instanceof JSONWireFormat) { - msg = invokeResponse(bindingContext, msg); - } - - return msg; - } - - /** - * Handle any wire format specific transformations required for request data - * @param bindingContext the binding context (e.g. HTTP Request, Response objects) - * @param msg the invocation message - * @return processed request message - */ - private Message invokeRequest(HTTPContext bindingContext, Message msg) { - - // Decode using the charset in the request if it exists otherwise - // use UTF-8 as this is what all browser implementations use. - String charset = bindingContext.getHttpRequest().getCharacterEncoding(); - if (charset == null) { - charset = "UTF-8"; - } - - try { - Object[] args = msg.getBody(); - InputStream in = (InputStream) args[0]; - String data = read(in, charset); - JSONObject jsonPayload = new JSONObject(data); - msg.setBody(new Object[]{jsonPayload}); - } catch(Exception e) { - throw new RuntimeException("Unable to parse json paylod: " + msg.getBody().toString()); - } - - return msg; - } - - /** - * Handle any wire format specific transformation required for the response data - * @param bindingContext the binding context (e.g. HTTP Request, Response objects) - * @param msg the response message - * @return processed response message - */ - private Message invokeResponse(HTTPContext bindingContext, Message msg) { - return msg; - } - - - /** - * Check if HTTP Operation should support payload - * @param operation - * @return - */ - private static boolean isPayloadSupported(String operation) { - boolean isGet = "get".equalsIgnoreCase(operation); - boolean isDelete = "delete".equalsIgnoreCase(operation); - - return isGet == false && isDelete == false; - } - - /** - * Read JSON payload from HTTP Request Body - * @param in - * @param charset - * @return - * @throws IOException - */ - private static String read(InputStream in, String charset) throws IOException { - StringWriter sw = new StringWriter(); - InputStreamReader reader = new InputStreamReader(in, "UTF-8"); - char[] buf = new char[8192]; - while (true) { - int size = reader.read(buf); - if (size < 0) { - break; - } - sw.write(buf, 0, size); - } - return sw.toString(); - } - -} diff --git a/sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/json/provider/JSONWireFormatProviderFactory.java b/sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/json/provider/JSONWireFormatProviderFactory.java deleted file mode 100644 index 6b1bb6cca7..0000000000 --- a/sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/json/provider/JSONWireFormatProviderFactory.java +++ /dev/null @@ -1,52 +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.binding.rest.wireformat.json.provider; - -import org.apache.tuscany.sca.binding.rest.wireformat.json.JSONWireFormat; -import org.apache.tuscany.sca.core.ExtensionPointRegistry; -import org.apache.tuscany.sca.provider.WireFormatProvider; -import org.apache.tuscany.sca.provider.WireFormatProviderFactory; -import org.apache.tuscany.sca.runtime.RuntimeEndpoint; -import org.apache.tuscany.sca.runtime.RuntimeEndpointReference; - -/** - * JSON wire format Provider Factory. - * - * @version $Rev$ $Date$ -*/ -public class JSONWireFormatProviderFactory implements WireFormatProviderFactory{ - private ExtensionPointRegistry extensionPoints; - - public JSONWireFormatProviderFactory(ExtensionPointRegistry extensionPoints) { - this.extensionPoints = extensionPoints; - } - public WireFormatProvider createReferenceWireFormatProvider(RuntimeEndpointReference endpointReference) { - return new JSONWireFormatReferenceProvider(extensionPoints, endpointReference); - } - - public WireFormatProvider createServiceWireFormatProvider(RuntimeEndpoint endpoint) { - return new JSONWireFormatServiceProvider(extensionPoints, endpoint); - } - - public Class getModelType() { - return JSONWireFormat.class; - } - -} diff --git a/sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/json/provider/JSONWireFormatReferenceProvider.java b/sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/json/provider/JSONWireFormatReferenceProvider.java deleted file mode 100644 index 830b02a3e8..0000000000 --- a/sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/json/provider/JSONWireFormatReferenceProvider.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.binding.rest.wireformat.json.provider; - -import org.apache.tuscany.sca.core.ExtensionPointRegistry; -import org.apache.tuscany.sca.interfacedef.InterfaceContract; -import org.apache.tuscany.sca.invocation.Interceptor; -import org.apache.tuscany.sca.invocation.Phase; -import org.apache.tuscany.sca.provider.WireFormatProvider; -import org.apache.tuscany.sca.runtime.RuntimeEndpointReference; - -/** - * JSON wire format Reference Provider. - * - * @version $Rev$ $Date$ -*/ -public class JSONWireFormatReferenceProvider implements WireFormatProvider { - private ExtensionPointRegistry extensionPoints; - private RuntimeEndpointReference endpointReference; - - public JSONWireFormatReferenceProvider(ExtensionPointRegistry extensionPoints,RuntimeEndpointReference endpointReference ) { - this.extensionPoints = extensionPoints; - this.endpointReference = endpointReference; - } - public InterfaceContract configureWireFormatInterfaceContract(InterfaceContract interfaceContract) { - return null; - } - - public Interceptor createInterceptor() { - return null; - } - - public String getPhase() { - return Phase.REFERENCE_BINDING_WIREFORMAT; - } - -} diff --git a/sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/json/provider/JSONWireFormatServiceProvider.java b/sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/json/provider/JSONWireFormatServiceProvider.java deleted file mode 100644 index 754fdfc73e..0000000000 --- a/sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/json/provider/JSONWireFormatServiceProvider.java +++ /dev/null @@ -1,138 +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.binding.rest.wireformat.json.provider; - -import java.util.List; - -import org.apache.tuscany.sca.assembly.Binding; -import org.apache.tuscany.sca.binding.rest.provider.JAXRSHelper; -import org.apache.tuscany.sca.binding.rest.wireformat.json.JSONWireFormat; -import org.apache.tuscany.sca.core.ExtensionPointRegistry; -import org.apache.tuscany.sca.databinding.javabeans.SimpleJavaDataBinding; -import org.apache.tuscany.sca.databinding.json.JSONDataBinding; -import org.apache.tuscany.sca.interfacedef.DataType; -import org.apache.tuscany.sca.interfacedef.Interface; -import org.apache.tuscany.sca.interfacedef.InterfaceContract; -import org.apache.tuscany.sca.interfacedef.Operation; -import org.apache.tuscany.sca.interfacedef.java.JavaInterface; -import org.apache.tuscany.sca.invocation.Interceptor; -import org.apache.tuscany.sca.invocation.Phase; -import org.apache.tuscany.sca.provider.WireFormatProvider; -import org.apache.tuscany.sca.runtime.RuntimeEndpoint; - -/** - * JSON wire format service provider. - * - * @version $Rev$ $Date$ -*/ -public class JSONWireFormatServiceProvider implements WireFormatProvider { - private ExtensionPointRegistry extensionPoints; - private RuntimeEndpoint endpoint; - - private InterfaceContract serviceContract; - private Binding binding; - private boolean jaxrs; - - public JSONWireFormatServiceProvider(ExtensionPointRegistry extensionPoints, RuntimeEndpoint endpoint) { - this.extensionPoints = extensionPoints; - this.endpoint = endpoint; - this.binding = endpoint.getBinding(); - this.jaxrs = isJAXRSResource(); - } - - private boolean isJAXRSResource() { - Interface interfaze = endpoint.getComponentServiceInterfaceContract().getInterface(); - if (interfaze instanceof JavaInterface) { - if (JAXRSHelper.isJAXRSResource(((JavaInterface)interfaze).getJavaClass())) { - return true; - } - } - return false; - } - - public InterfaceContract configureWireFormatInterfaceContract(InterfaceContract interfaceContract) { - serviceContract = interfaceContract; - - if (!jaxrs) { - boolean configureInput = binding.getRequestWireFormat() != null; - boolean configureOutput = binding.getRequestWireFormat() != null || binding.getResponseWireFormat() != null; - - //set JSON databinding - setDataBinding(serviceContract.getInterface(), configureInput, configureOutput); - } - - return serviceContract; - } - - public Interceptor createInterceptor() { - if (jaxrs) { - return null; - } - if( (binding.getRequestWireFormat() != null && binding.getRequestWireFormat() instanceof JSONWireFormat) || - (binding.getResponseWireFormat() != null && binding.getResponseWireFormat() instanceof JSONWireFormat) ){ - return new JSONWireFormatInterceptor(extensionPoints, endpoint); - } - return null; - } - - public String getPhase() { - return Phase.SERVICE_BINDING_WIREFORMAT; - } - - - /** - * Utility method to reset data binding for the interface contract. - * We need to handle special case where : - * - global wire format for binding - * - wire format configured only for response - * @param interfaze - */ - @SuppressWarnings({"deprecation", "unchecked"}) - private void setDataBinding(Interface interfaze, boolean configureInput, boolean configureOutput) { - List operations = interfaze.getOperations(); - for (Operation operation : operations) { - // handle input types - if (configureInput) { - operation.setDataBinding(JSONDataBinding.NAME); - DataType> inputType = operation.getInputType(); - if (inputType != null) { - List logical = inputType.getLogical(); - for (DataType inArg : logical) { - if (!SimpleJavaDataBinding.NAME.equals(inArg.getDataBinding())) { - inArg.setDataBinding(JSONDataBinding.NAME); - } - } - } - } - - // handle output types - if (configureOutput) { - List outputTypes = operation.getOutputType().getLogical(); - for ( DataType outputType : outputTypes) { - if (outputType != null) { - if (!SimpleJavaDataBinding.NAME.equals(outputType.getDataBinding())) { - outputType.setDataBinding(JSONDataBinding.NAME); - } - } - } - } - } - } -} diff --git a/sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/xml/provider/XMLWireFormatInterceptor.java b/sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/xml/provider/XMLWireFormatInterceptor.java deleted file mode 100644 index d5055b6701..0000000000 --- a/sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/xml/provider/XMLWireFormatInterceptor.java +++ /dev/null @@ -1,143 +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.binding.rest.wireformat.xml.provider; - -import java.io.InputStream; - -import javax.xml.stream.XMLInputFactory; -import javax.xml.stream.XMLStreamReader; - -import org.apache.tuscany.sca.binding.rest.RESTBinding; -import org.apache.tuscany.sca.binding.rest.wireformat.json.JSONWireFormat; -import org.apache.tuscany.sca.binding.rest.wireformat.xml.XMLWireFormat; -import org.apache.tuscany.sca.common.http.HTTPContext; -import org.apache.tuscany.sca.core.ExtensionPointRegistry; -import org.apache.tuscany.sca.core.FactoryExtensionPoint; -import org.apache.tuscany.sca.interfacedef.Operation; -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.RuntimeEndpoint; - -/** - * JSON wire format Interceptor. - * - * @version $Rev$ $Date$ -*/ -public class XMLWireFormatInterceptor implements Interceptor { - private XMLInputFactory inputFactory; - - private Invoker next; - private RESTBinding binding; - - public XMLWireFormatInterceptor(ExtensionPointRegistry extensionPoints, RuntimeEndpoint endpoint) { - FactoryExtensionPoint factories = extensionPoints.getExtensionPoint(FactoryExtensionPoint.class); - inputFactory = factories.getFactory(XMLInputFactory.class); - - this.binding = (RESTBinding) endpoint.getBinding(); - } - - public Invoker getNext() { - return next; - } - - public void setNext(Invoker next) { - this.next = next; - } - - public Message invoke(Message msg) { - HTTPContext bindingContext = (HTTPContext) msg.getBindingContext(); - if (bindingContext == null) { - return getNext().invoke(msg); - } - - - if (binding.getRequestWireFormat() instanceof XMLWireFormat) { - if( isPayloadSupported(bindingContext.getHttpRequest().getMethod()) && msg.getBody() != null) { - msg = invokeRequest(bindingContext, msg); - } - } - - msg = getNext().invoke(msg); - - //if it's oneway return back - Operation operation = msg.getOperation(); - if (operation != null && operation.isNonBlocking()) { - return msg; - } - - if (binding.getResponseWireFormat() instanceof XMLWireFormat) { - msg = invokeResponse(bindingContext, msg); - } - - return msg; - } - - /** - * Handle any wire format specific transformations required for request data - * @param bindingContext the binding context (e.g. HTTP Request, Response objects) - * @param msg the invocation message - * @return processed request message - */ - private Message invokeRequest(HTTPContext bindingContext, Message msg) { - // Decode using the charset in the request if it exists otherwise - // use UTF-8 as this is what all browser implementations use. - String charset = bindingContext.getHttpRequest().getCharacterEncoding(); - if (charset == null) { - charset = "UTF-8"; - } - - try { - if(msg.getBody() != null) { - Object[] args = msg.getBody(); - InputStream data = (InputStream) args[0]; - XMLStreamReader xmlPayload = inputFactory.createXMLStreamReader(data, charset); - msg.setBody(new Object[]{xmlPayload}); - } - } catch(Exception e) { - throw new RuntimeException("Unable to process xml paylod: " + msg.getBody().toString()); - } - - return msg; - } - - - /** - * Handle any wire format specific transformation required for the response data - * @param bindingContext the binding context (e.g. HTTP Request, Response objects) - * @param msg the response message - * @return processed response message - */ - private Message invokeResponse(HTTPContext bindingContext, Message msg) { - return msg; - } - - /** - * Check if HTTP Operation should support payload - * @param operation - * @return - */ - private static boolean isPayloadSupported(String operation) { - boolean isGet = "get".equalsIgnoreCase(operation); - boolean isDelete = "delete".equalsIgnoreCase(operation); - - return isGet == false && isDelete == false; - } -} diff --git a/sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/xml/provider/XMLWireFormatProviderFactory.java b/sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/xml/provider/XMLWireFormatProviderFactory.java deleted file mode 100644 index 33900b3de9..0000000000 --- a/sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/xml/provider/XMLWireFormatProviderFactory.java +++ /dev/null @@ -1,52 +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.binding.rest.wireformat.xml.provider; - -import org.apache.tuscany.sca.binding.rest.wireformat.xml.XMLWireFormat; -import org.apache.tuscany.sca.core.ExtensionPointRegistry; -import org.apache.tuscany.sca.provider.WireFormatProvider; -import org.apache.tuscany.sca.provider.WireFormatProviderFactory; -import org.apache.tuscany.sca.runtime.RuntimeEndpoint; -import org.apache.tuscany.sca.runtime.RuntimeEndpointReference; - -/** - * XML wire format Provider Factory. - * - * @version $Rev$ $Date$ -*/ -public class XMLWireFormatProviderFactory implements WireFormatProviderFactory{ - private ExtensionPointRegistry extensionPoints; - - public XMLWireFormatProviderFactory(ExtensionPointRegistry extensionPoints) { - this.extensionPoints = extensionPoints; - } - public WireFormatProvider createReferenceWireFormatProvider(RuntimeEndpointReference endpointReference) { - return new XMLWireFormatReferenceProvider(extensionPoints, endpointReference); - } - - public WireFormatProvider createServiceWireFormatProvider(RuntimeEndpoint endpoint) { - return new XMLWireFormatServiceProvider(extensionPoints, endpoint); - } - - public Class getModelType() { - return XMLWireFormat.class; - } - -} diff --git a/sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/xml/provider/XMLWireFormatReferenceProvider.java b/sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/xml/provider/XMLWireFormatReferenceProvider.java deleted file mode 100644 index c9e0ac4578..0000000000 --- a/sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/xml/provider/XMLWireFormatReferenceProvider.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.binding.rest.wireformat.xml.provider; - -import org.apache.tuscany.sca.core.ExtensionPointRegistry; -import org.apache.tuscany.sca.interfacedef.InterfaceContract; -import org.apache.tuscany.sca.invocation.Interceptor; -import org.apache.tuscany.sca.invocation.Phase; -import org.apache.tuscany.sca.provider.WireFormatProvider; -import org.apache.tuscany.sca.runtime.RuntimeEndpointReference; - -/** - * XML wire format Reference Provider. - * - * @version $Rev$ $Date$ -*/ -public class XMLWireFormatReferenceProvider implements WireFormatProvider { - private ExtensionPointRegistry extensionPoints; - private RuntimeEndpointReference endpointReference; - - public XMLWireFormatReferenceProvider(ExtensionPointRegistry extensionPoints,RuntimeEndpointReference endpointReference ) { - this.extensionPoints = extensionPoints; - this.endpointReference = endpointReference; - } - public InterfaceContract configureWireFormatInterfaceContract(InterfaceContract interfaceContract) { - return null; - } - - public Interceptor createInterceptor() { - return null; - } - - public String getPhase() { - return Phase.REFERENCE_BINDING_WIREFORMAT; - } - -} diff --git a/sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/xml/provider/XMLWireFormatServiceProvider.java b/sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/xml/provider/XMLWireFormatServiceProvider.java deleted file mode 100644 index 01b439961c..0000000000 --- a/sca-java-2.x/tags/2.0-Beta3/modules/binding-rest-runtime/src/main/java/org/apache/tuscany/sca/binding/rest/wireformat/xml/provider/XMLWireFormatServiceProvider.java +++ /dev/null @@ -1,139 +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.binding.rest.wireformat.xml.provider; - -import java.util.List; - -import javax.xml.stream.XMLStreamReader; - -import org.apache.tuscany.sca.assembly.Binding; -import org.apache.tuscany.sca.binding.rest.provider.JAXRSHelper; -import org.apache.tuscany.sca.binding.rest.wireformat.xml.XMLWireFormat; -import org.apache.tuscany.sca.core.ExtensionPointRegistry; -import org.apache.tuscany.sca.databinding.javabeans.SimpleJavaDataBinding; -import org.apache.tuscany.sca.databinding.xml.XMLStringDataBinding; -import org.apache.tuscany.sca.interfacedef.DataType; -import org.apache.tuscany.sca.interfacedef.Interface; -import org.apache.tuscany.sca.interfacedef.InterfaceContract; -import org.apache.tuscany.sca.interfacedef.Operation; -import org.apache.tuscany.sca.interfacedef.java.JavaInterface; -import org.apache.tuscany.sca.invocation.Interceptor; -import org.apache.tuscany.sca.invocation.Phase; -import org.apache.tuscany.sca.provider.WireFormatProvider; -import org.apache.tuscany.sca.runtime.RuntimeEndpoint; - -/** - * XML wire format service provider. - * - * @version $Rev$ $Date$ -*/ -public class XMLWireFormatServiceProvider implements WireFormatProvider { - private static final String DATABABINDING = XMLStreamReader.class.getName(); - - private ExtensionPointRegistry extensionPoints; - private RuntimeEndpoint endpoint; - - private InterfaceContract serviceContract; - private Binding binding; - - private boolean jaxrs; - - public XMLWireFormatServiceProvider(ExtensionPointRegistry extensionPoints, RuntimeEndpoint endpoint) { - this.extensionPoints = extensionPoints; - this.endpoint = endpoint; - this.binding = endpoint.getBinding(); - this.jaxrs = isJAXRSResource(); - } - - private boolean isJAXRSResource() { - Interface interfaze = endpoint.getComponentServiceInterfaceContract().getInterface(); - if (interfaze instanceof JavaInterface) { - if (JAXRSHelper.isJAXRSResource(((JavaInterface)interfaze).getJavaClass())) { - return true; - } - } - return false; - } - - public InterfaceContract configureWireFormatInterfaceContract(InterfaceContract interfaceContract) { - serviceContract = interfaceContract; - - if (!jaxrs) { - boolean configureInput = binding.getRequestWireFormat() != null; - boolean configureOutput = binding.getRequestWireFormat() != null || binding.getResponseWireFormat() != null; - - //set XML databinding - setDataBinding(serviceContract.getInterface(), configureInput, configureOutput); - } - - return serviceContract; - } - - public Interceptor createInterceptor() { - if (jaxrs) { - return null; - } - - if( (binding.getRequestWireFormat() != null && binding.getRequestWireFormat() instanceof XMLWireFormat) || - (binding.getResponseWireFormat() != null && binding.getResponseWireFormat() instanceof XMLWireFormat) ){ - return new XMLWireFormatInterceptor(extensionPoints, endpoint); - } - return null; - } - - public String getPhase() { - return Phase.SERVICE_BINDING_WIREFORMAT; - } - - - /** - * Utility method to reset data binding for the interface contract - * @param interfaze - */ - @SuppressWarnings({"deprecation", "unchecked"}) - private void setDataBinding(Interface interfaze, boolean configureInput, boolean configureOutput) { - List operations = interfaze.getOperations(); - for (Operation operation : operations) { - // handle input types - if (configureInput) { - operation.setDataBinding(DATABABINDING); - DataType> inputType = operation.getInputType(); - if (inputType != null) { - List logical = inputType.getLogical(); - for (DataType inArg : logical) { - if (!SimpleJavaDataBinding.NAME.equals(inArg.getDataBinding())) { - inArg.setDataBinding(DATABABINDING); - } - } - } - } - - // handle output types - if (configureOutput) { - List outputTypes = operation.getOutputType().getLogical(); - for ( DataType outputType : outputTypes ) { - if (outputType != null) { - outputType.setDataBinding(XMLStringDataBinding.NAME); - } - } - } - } - } -} -- cgit v1.2.3