diff --git a/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/IRegistryRequestService.java b/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/IRegistryRequestService.java new file mode 100644 index 0000000000..ed767bb84e --- /dev/null +++ b/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/IRegistryRequestService.java @@ -0,0 +1,57 @@ +/** + * This software was developed and / or modified by Raytheon Company, + * pursuant to Contract DG133W-05-CQ-1067 with the US Government. + * + * U.S. EXPORT CONTROLLED TECHNICAL DATA + * This software product contains export-restricted data whose + * export/transfer/disclosure is restricted by U.S. law. Dissemination + * to non-U.S. persons whether in the United States or abroad requires + * an export license or other authorization. + * + * Contractor Name: Raytheon Company + * Contractor Address: 6825 Pine Street, Suite 340 + * Mail Stop B8 + * Omaha, NE 68106 + * 402.291.0100 + * + * See the AWIPS II Master Rights File ("Master Rights File.pdf") for + * further licensing information. + **/ +package com.raytheon.uf.common.registry; + +import javax.jws.WebMethod; +import javax.jws.WebService; +import javax.jws.soap.SOAPBinding; +import javax.jws.soap.SOAPBinding.Style; + +/** + * + * Web service interface accessible to process Thrift serialized server requests + * + *
+ * 
+ * SOFTWARE HISTORY
+ * 
+ * Date         Ticket#     Engineer    Description
+ * ------------ ----------  ----------- --------------------------
+ * 5/3/2013     1948        bphillip    Initial implementation
+ * 
+ * + * @author bphillip + * @version 1 + */ +@WebService(serviceName = "RegistryRequestService") +@SOAPBinding(style = Style.RPC) +public interface IRegistryRequestService { + + /** + * Process the Thrift serialized request and return the Thrift serialized + * response + * + * @param data + * The Thrift serialized request + * @return The Thrift serialized response + */ + @WebMethod + public byte[] request(byte[] data); +} diff --git a/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/RegistryRequestService.java b/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/RegistryRequestService.java new file mode 100644 index 0000000000..dcb395fb3e --- /dev/null +++ b/edexOsgi/com.raytheon.uf.common.registry.ebxml/src/com/raytheon/uf/common/registry/RegistryRequestService.java @@ -0,0 +1,80 @@ +/** + * This software was developed and / or modified by Raytheon Company, + * pursuant to Contract DG133W-05-CQ-1067 with the US Government. + * + * U.S. EXPORT CONTROLLED TECHNICAL DATA + * This software product contains export-restricted data whose + * export/transfer/disclosure is restricted by U.S. law. Dissemination + * to non-U.S. persons whether in the United States or abroad requires + * an export license or other authorization. + * + * Contractor Name: Raytheon Company + * Contractor Address: 6825 Pine Street, Suite 340 + * Mail Stop B8 + * Omaha, NE 68106 + * 402.291.0100 + * + * See the AWIPS II Master Rights File ("Master Rights File.pdf") for + * further licensing information. + **/ +package com.raytheon.uf.common.registry; + +import java.net.MalformedURLException; +import java.net.URL; + +import javax.xml.namespace.QName; +import javax.xml.ws.Service; + +/** + * + * + * Service class for submitting registry requests to the EDEX ebxml registry via + * JAX-WS + * + *
+ * 
+ * SOFTWARE HISTORY
+ * 
+ * Date         Ticket#     Engineer    Description
+ * ------------ ----------  ----------- --------------------------
+ * 5/3/2013     1948        bphillip    Initial implementation
+ * 
+ * + * @author bphillip + * @version 1 + */ +public class RegistryRequestService extends Service { + + /** The service name */ + private static final QName SERVICE_NAME = new QName( + "http://registry.common.uf.raytheon.com/", "RegistryRequestService"); + + /** The location of the wsdl */ + private static final String WSDL_LOCATION = "/registryRequest?wsdl"; + + /** + * Creates a new RegistryRequestService service residing on the given server + * on the given port + * + * @param server + * The server + * @param port + * The port number + * @throws MalformedURLException + * If errors occur constructing the service URL + */ + public RegistryRequestService(String server, String port) + throws MalformedURLException { + super(new URL("http://" + server + ":" + port + WSDL_LOCATION), + SERVICE_NAME); + } + + /** + * Gets the IRegistryRequestService port + * + * @return The IRegistryRequestService port + */ + public IRegistryRequestService getService() { + return super.getPort(IRegistryRequestService.class); + } +} diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-thrift-client-route.xml b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-thrift-client-route.xml new file mode 100644 index 0000000000..efa9085435 --- /dev/null +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-thrift-client-route.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-thrift-client.xml b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-thrift-client.xml index 3178d524a2..cf60441511 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-thrift-client.xml +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/res/spring/ebxml-thrift-client.xml @@ -9,25 +9,12 @@ - + - - - - - - - - - - - diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/RegistryRemoteRequestWrapper.java b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/RegistryRemoteRequestWrapper.java new file mode 100644 index 0000000000..2e9bbafe0f --- /dev/null +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/src/com/raytheon/uf/edex/registry/ebxml/RegistryRemoteRequestWrapper.java @@ -0,0 +1,55 @@ +/** + * This software was developed and / or modified by Raytheon Company, + * pursuant to Contract DG133W-05-CQ-1067 with the US Government. + * + * U.S. EXPORT CONTROLLED TECHNICAL DATA + * This software product contains export-restricted data whose + * export/transfer/disclosure is restricted by U.S. law. Dissemination + * to non-U.S. persons whether in the United States or abroad requires + * an export license or other authorization. + * + * Contractor Name: Raytheon Company + * Contractor Address: 6825 Pine Street, Suite 340 + * Mail Stop B8 + * Omaha, NE 68106 + * 402.291.0100 + * + * See the AWIPS II Master Rights File ("Master Rights File.pdf") for + * further licensing information. + **/ +package com.raytheon.uf.edex.registry.ebxml; + +import javax.jws.WebService; + +import com.raytheon.uf.common.registry.IRegistryRequestService; +import com.raytheon.uf.edex.auth.RemoteRequestRouteWrapper; + +/** + * + * Registry specific wrapper for the remote request router + * + *
+ * 
+ * SOFTWARE HISTORY
+ * 
+ * Date         Ticket#     Engineer    Description
+ * ------------ ----------  ----------- --------------------------
+ * 5/3/2013     1948        bphillip    Initial implementation
+ * 
+ * + * @author bphillip + * @version 1 + */ +@WebService(endpointInterface = "com.raytheon.uf.common.registry.IRegistryRequestService") +public class RegistryRemoteRequestWrapper extends RemoteRequestRouteWrapper + implements IRegistryRequestService { + + public byte[] request(byte[] data) { + return executeThrift(data); + } + + public byte[] executeThrift(byte[] data) { + return super.executeThrift(data); + } + +} diff --git a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/webServiceBeans.xml b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/webServiceBeans.xml index 04accb53af..c86df2c1d4 100644 --- a/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/webServiceBeans.xml +++ b/edexOsgi/com.raytheon.uf.edex.registry.ebxml/web/webServiceBeans.xml @@ -18,12 +18,20 @@ - + + + - + + + + + +