You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fx-dev@ws.apache.org by da...@apache.org on 2005/11/03 05:40:47 UTC
svn commit: r330443 - in
/webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/wscoor:
ActivationRPCEndpoint.java ActivationRPCPort.java CoordinationContext.java
_CoordinationContext.java
Author: dasarath
Date: Wed Nov 2 20:40:28 2005
New Revision: 330443
URL: http://svn.apache.org/viewcvs?rev=330443&view=rev
Log: (empty)
Added:
webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/wscoor/_CoordinationContext.java
Removed:
webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/wscoor/CoordinationContext.java
Modified:
webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/wscoor/ActivationRPCEndpoint.java
webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/wscoor/ActivationRPCPort.java
Modified: webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/wscoor/ActivationRPCEndpoint.java
URL: http://svn.apache.org/viewcvs/webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/wscoor/ActivationRPCEndpoint.java?rev=330443&r1=330442&r2=330443&view=diff
==============================================================================
--- webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/wscoor/ActivationRPCEndpoint.java (original)
+++ webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/wscoor/ActivationRPCEndpoint.java Wed Nov 2 20:40:28 2005
@@ -33,7 +33,7 @@
Coordinator coordinator= CoordinationService.getInstance().coordinate(coordinationType);
CreateCoordinationContextResponseType response= new CreateCoordinationContextResponseType();
response.setCoordinationContext(
- coordinator.getCoordinationContext().toCoordinationContextType());
+ coordinator.getCoordinationContext().toCoordinationContext());
return response;
}
catch (Exception e) {
Modified: webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/wscoor/ActivationRPCPort.java
URL: http://svn.apache.org/viewcvs/webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/wscoor/ActivationRPCPort.java?rev=330443&r1=330442&r2=330443&view=diff
==============================================================================
--- webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/wscoor/ActivationRPCPort.java (original)
+++ webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/wscoor/ActivationRPCPort.java Wed Nov 2 20:40:28 2005
@@ -39,12 +39,12 @@
}
}
- public CoordinationContext createCoordinationContext(String coordinationType) throws RemoteException {
+ public _CoordinationContext createCoordinationContext(String coordinationType) throws RemoteException {
try {
CreateCoordinationContextType parameters= new CreateCoordinationContextType();
parameters.setCoordinationType(new URI(coordinationType));
CreateCoordinationContextResponseType response= stub.createCoordinationContextOperation(parameters);
- return new CoordinationContext(response.getCoordinationContext());
+ return new _CoordinationContext(response.getCoordinationContext());
}
catch (URI.MalformedURIException e) {
throw new IllegalArgumentException(e + "???" + coordinationType);
Added: webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/wscoor/_CoordinationContext.java
URL: http://svn.apache.org/viewcvs/webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/wscoor/_CoordinationContext.java?rev=330443&view=auto
==============================================================================
--- webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/wscoor/_CoordinationContext.java (added)
+++ webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/wscoor/_CoordinationContext.java Wed Nov 2 20:40:28 2005
@@ -0,0 +1,141 @@
+/*
+ * Copyright 2004 The Apache Software Foundation.
+ *
+ * Licensed 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.ws.transaction.wscoor;
+
+import java.rmi.RemoteException;
+
+import javax.xml.soap.Name;
+import javax.xml.soap.SOAPElement;
+import javax.xml.soap.SOAPHeader;
+import javax.xml.soap.SOAPHeaderElement;
+
+import org.apache.axis.message.MessageElement;
+import org.apache.axis.message.PrefixedQName;
+import org.apache.axis.message.addressing.EndpointReference;
+import org.apache.axis.message.addressing.util.TextExtractor;
+import org.apache.axis.types.URI;
+import org.apache.ws.transaction.coordinator.Identifier;
+import org.w3c.dom.Element;
+import org.w3c.dom.NodeList;
+
+
+public class _CoordinationContext {
+ static final Name NAME_COORDINATION_CONTEXT=
+ new PrefixedQName("http://schemas.xmlsoap.org/ws/2003/09/wscoor", "CoordinationContext", "wscoor");
+ static final Name NAME_IDENTIFIER=
+ new PrefixedQName("http://schemas.xmlsoap.org/ws/2002/07/utility", "Identifier", "wsu");
+ static final Name NAME_COORDINATION_TYPE=
+ new PrefixedQName("http://schemas.xmlsoap.org/ws/2003/09/wscoor", "CoordinationType", "wscoor");
+ static final Name NAME_REGISTRATION_SERVICE=
+ new PrefixedQName("http://schemas.xmlsoap.org/ws/2003/09/wscoor", "RegistrationService", "wscoor");
+ static final Name NAME_ADDRESS=
+ new PrefixedQName("http://schemas.xmlsoap.org/ws/2004/03/addressing", "Address", "wsa");
+ static final Name NAME_REFERENCE_PROPERTIES=
+ new PrefixedQName("http://schemas.xmlsoap.org/ws/2004/03/addressing", "ReferenceProperties", "wsa");
+
+ CoordinationContext ctx;
+
+ public _CoordinationContext(CoordinationContext ctx) {
+ this.ctx= ctx;
+ }
+
+ public _CoordinationContext(
+ Identifier identifier,
+ String coordinationType,
+ EndpointReference registrationServiceEndpoint) {
+ ctx= new CoordinationContext();
+ ctx.setIdentifier(new CoordinationContextTypeIdentifier(identifier.toString()));
+ ctx.setRegistrationService(registrationServiceEndpoint);
+ try {
+ ctx.setCoordinationType(new URI(coordinationType));
+ }
+ catch (URI.MalformedURIException e) {
+ throw new IllegalArgumentException(e.toString() + "???" + coordinationType);
+ }
+ }
+
+ public _CoordinationContext(SOAPElement el) {
+ if (!is(el))
+ throw new IllegalArgumentException();
+ ctx= new CoordinationContext();
+ try {
+ NodeList list=
+ el.getElementsByTagNameNS(NAME_IDENTIFIER.getURI(), NAME_IDENTIFIER.getLocalName());
+ Element node= (Element)list.item(0);
+ ctx.setIdentifier(new CoordinationContextTypeIdentifier(TextExtractor.getText(node)));
+
+ list=
+ el.getElementsByTagNameNS(
+ NAME_COORDINATION_TYPE.getURI(),
+ NAME_COORDINATION_TYPE.getLocalName());
+ node= (Element)list.item(0);
+ ctx.setCoordinationType(new URI(TextExtractor.getText(node)));
+
+ list=
+ el.getElementsByTagNameNS(
+ NAME_REGISTRATION_SERVICE.getURI(),
+ NAME_REGISTRATION_SERVICE.getLocalName());
+ node= (Element)list.item(0);
+
+ EndpointReference epr= new EndpointReference(node);
+ ctx.setRegistrationService(epr);
+ }
+ catch (Exception e) {
+ throw new IllegalArgumentException(e.toString());
+ }
+ }
+
+ public static boolean is(SOAPElement e) {
+ return e.getElementName().equals(NAME_COORDINATION_CONTEXT);
+ }
+
+ public CoordinationContext toCoordinationContext() {
+ return ctx;
+ }
+
+ public void toSOAPHeaderElement(SOAPHeader header) {
+ try {
+ SOAPHeaderElement e= header.addHeaderElement(NAME_COORDINATION_CONTEXT);
+ e.addChildElement(NAME_IDENTIFIER).addTextNode(ctx.getIdentifier().toString());
+ e.addChildElement(NAME_COORDINATION_TYPE).addTextNode(ctx.getCoordinationType().toString());
+ SOAPElement e1= e.addChildElement(NAME_REGISTRATION_SERVICE);
+ org.apache.axis.message.addressing.EndpointReferenceType registrationEndpoint=
+ ctx.getRegistrationService();
+ e1.addChildElement(NAME_ADDRESS).addTextNode(registrationEndpoint.getAddress().toString());
+ SOAPElement e3= e1.addChildElement(NAME_REFERENCE_PROPERTIES);
+ MessageElement[] _referenceProperties= registrationEndpoint.getProperties().get_any();
+ for (int ii= 0; ii < _referenceProperties.length; ii++)
+ e3.addChildElement(_referenceProperties[ii].getElementName()).addTextNode(
+ _referenceProperties[ii].getValue());
+ }
+ catch (Exception e) {
+ throw new RuntimeException(e);
+ }
+ }
+
+ public EndpointReference register(
+ String protocol,
+ EndpointReference participantEndpoint)
+ throws RemoteException {
+ RegistrationRPCPort port= new RegistrationRPCPort(new EndpointReference(ctx.getRegistrationService()));
+ return port.register(protocol, participantEndpoint);
+ }
+
+ public Identifier getActivityId() {
+ return new Identifier(ctx.getIdentifier().toString());
+ }
+}
---------------------------------------------------------------------
To unsubscribe, e-mail: kandula-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: kandula-dev-help@ws.apache.org