Author: dasarath
Date: Fri Jan  6 21:36:49 2006
New Revision: 366675

URL: http://svn.apache.org/viewcvs?rev=366675&view=rev
Log: (empty)

Added:
    
webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/utility/AddressingHeaders.java
    
webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/utility/SoapFaultSender.java
Removed:
    
webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/utility/Callback.java
    
webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/utility/CallbackRegistry.java
    
webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/utility/EndpointReferenceFactory.java
Modified:
    
webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/utility/Service.java

Added: 
webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/utility/AddressingHeaders.java
URL: 
http://svn.apache.org/viewcvs/webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/utility/AddressingHeaders.java?rev=366675&view=auto
==============================================================================
--- 
webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/utility/AddressingHeaders.java
 (added)
+++ 
webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/utility/AddressingHeaders.java
 Fri Jan  6 21:36:49 2006
@@ -0,0 +1,51 @@
+/*
+ * Created on Jan 6, 2006
+ *
+ */
+package org.apache.ws.transaction.utility;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.axis.components.uuid.UUIDGenFactory;
+import org.apache.axis.message.addressing.EndpointReference;
+import org.apache.axis.message.addressing.MessageID;
+import org.apache.axis.message.addressing.RelatesTo;
+import org.apache.axis.message.addressing.RelationshipTypeValues;
+import org.apache.axis.types.URI;
+import org.apache.axis.types.URI.MalformedURIException;
+
+/**
+ * @author Dasarath Weeratunge
+ *  
+ */
+public class AddressingHeaders extends
+               org.apache.axis.message.addressing.AddressingHeaders {
+
+       public AddressingHeaders(EndpointReference to, EndpointReference from) {
+               super(to);
+               MessageID id;
+               try {
+                       id = new MessageID(new URI("uuid:"
+                                       + 
UUIDGenFactory.getUUIDGen().nextUUID()));
+               } catch (MalformedURIException e) {
+                       e.printStackTrace();
+                       throw new RuntimeException(e);
+               }
+               setMessageID(id);
+               if (from != null)
+                       setFrom(from);
+       }
+
+       public AddressingHeaders(EndpointReference to, EndpointReference from,
+                       EndpointReference replyTo) {
+               this(to, from);
+               setReplyTo(replyTo);
+       }
+
+       public void setRelatesTo(MessageID id) {
+               List l = new ArrayList(1);
+               l.add(new RelatesTo(id, RelationshipTypeValues.RESPONSE));
+               setRelatesTo(l);
+       }
+}
\ No newline at end of file

Modified: 
webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/utility/Service.java
URL: 
http://svn.apache.org/viewcvs/webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/utility/Service.java?rev=366675&r1=366674&r2=366675&view=diff
==============================================================================
--- 
webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/utility/Service.java
 (original)
+++ 
webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/utility/Service.java
 Fri Jan  6 21:36:49 2006
@@ -16,64 +16,68 @@
  */
 package org.apache.ws.transaction.utility;
 
-import java.util.ArrayList;
-import java.util.List;
-
 import javax.xml.namespace.QName;
 import javax.xml.rpc.Call;
 import javax.xml.rpc.ServiceException;
 
-import org.apache.axis.components.uuid.UUIDGenFactory;
-import org.apache.axis.message.MessageElement;
 import org.apache.axis.message.addressing.AddressingHeaders;
 import org.apache.axis.message.addressing.Constants;
-import org.apache.axis.message.addressing.EndpointReference;
-import org.apache.axis.message.addressing.MessageID;
-import org.apache.axis.message.addressing.RelatesTo;
-import org.apache.axis.message.addressing.RelationshipTypeValues;
-import org.apache.axis.types.URI;
-import org.apache.axis.types.URI.MalformedURIException;
 
 public class Service extends org.apache.axis.client.Service {
        AddressingHeaders headers;
 
-       Object callback;
+       //      Callback callback;
 
-       public Service(EndpointReference epr) {
-               headers = new AddressingHeaders(epr);
-       }
-       
-       public Service(EndpointReference epr, EndpointReference replyTo) {
-               headers = new AddressingHeaders(epr);
-               headers.setReplyTo(replyTo);
-       }
-       
-       public void setCallback(Object callback) {
-               this.callback = callback;
+       public Service() {
        }
-       
-       public void setRelatesTo(MessageID id){
-               List l = new ArrayList(1);
-               l.add(new RelatesTo(id, RelationshipTypeValues.RESPONSE));
-               headers.setRelatesTo(l);
+
+       //      public Service(EndpointReference to) {
+       //              headers = new AddressingHeaders(to);
+       //      }
+       //
+       //      public Service(EndpointReference to, Callback callback) {
+       //              headers = new AddressingHeaders(to);
+       //              setCallback(callback);
+       //      }
+       //
+       //      public Service(EndpointReference to, EndpointReference replyTo,
+       //                      Callback callback) {
+       //              headers = new AddressingHeaders(to);
+       //              headers.setReplyTo(replyTo);
+       //      }
+       //
+       //      public void setCallback(Callback callback) {
+       //              this.callback = callback;
+       //              CoordinationService cs = 
CoordinationService.getInstance();
+       //              
headers.setFaultTo(cs.getFaultDispatcherService(callback));
+       //      }
+       //
+       //      public void setRelatesTo(MessageID id) {
+       //              List l = new ArrayList(1);
+       //              l.add(new RelatesTo(id, 
RelationshipTypeValues.RESPONSE));
+       //              headers.setRelatesTo(l);
+       //      }
+
+       public void setAddressingHeaders(AddressingHeaders headers) {
+               this.headers = headers;
        }
-       
+
        public Call createCall() throws ServiceException {
                Call call = super.createCall();
-               if (callback != null) {
-                       try {
-                               MessageID id = new MessageID(new URI("uuid:"
-                                               + 
UUIDGenFactory.getUUIDGen().nextUUID()));
-                               headers.setMessageID(id);
-                               String ref = id.toString();
-                               
CallbackRegistry.getInstance().registerCallback(ref, callback);
-                               MessageElement e = new MessageElement(
-                                               CallbackRegistry.CALLBACK_REF, 
ref);
-                               headers.getReplyTo().getProperties().add(e);
-                       } catch (MalformedURIException e) {
-                               throw new ServiceException(e.getMessage());
-                       }
-               }
+               //              if (callback != null) {
+               //                      try {
+               //                              MessageID id = new 
MessageID(new URI("uuid:"
+               //                                              + 
UUIDGenFactory.getUUIDGen().nextUUID()));
+               //                              headers.setMessageID(id);
+               //                              String ref = id.toString();
+               //                              
CallbackRegistry.getInstance().registerCallback(ref, callback);
+               //                              MessageElement e = new 
MessageElement(
+               //                                              
CallbackRegistry.CALLBACK_REF, ref);
+               //                              
headers.getReplyTo().getProperties().add(e);
+               //                      } catch (MalformedURIException e) {
+               //                              throw new 
ServiceException(e.getMessage());
+               //                      }
+               //              }
                call.setProperty(Constants.ENV_ADDRESSING_REQUEST_HEADERS, 
headers);
                return call;
        }

Added: 
webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/utility/SoapFaultSender.java
URL: 
http://svn.apache.org/viewcvs/webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/utility/SoapFaultSender.java?rev=366675&view=auto
==============================================================================
--- 
webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/utility/SoapFaultSender.java
 (added)
+++ 
webservices/kandula/branches/Kandula_1/src/java/org/apache/ws/transaction/utility/SoapFaultSender.java
 Fri Jan  6 21:36:49 2006
@@ -0,0 +1,60 @@
+/*
+ * Created on Jan 3, 2006
+ *
+ */
+package org.apache.ws.transaction.utility;
+
+import java.net.MalformedURLException;
+
+import javax.xml.rpc.ServiceException;
+
+import org.apache.axis.AxisFault;
+import org.apache.axis.MessageContext;
+import org.apache.axis.client.Call;
+import org.apache.axis.message.SOAPEnvelope;
+import org.apache.axis.message.SOAPFault;
+import org.apache.axis.message.addressing.Constants;
+import org.apache.axis.message.addressing.EndpointReference;
+import org.apache.axis.message.addressing.MessageID;
+import org.apache.axis.soap.SOAPConstants;
+
+/**
+ * @author Dasarath Weeratunge
+ *  
+ */
+public class SoapFaultSender {
+
+       private static MessageID getCurrentMessageID() {
+               org.apache.axis.message.addressing.AddressingHeaders headers = 
(org.apache.axis.message.addressing.AddressingHeaders) 
MessageContext.getCurrentContext().getProperty(
+                       Constants.ENV_ADDRESSING_REQUEST_HEADERS);
+               return headers.getMessageID();
+       }
+
+       public static void invoke(EndpointReference faultTo, String action,
+                       AxisFault fault) throws AxisFault, 
MalformedURLException,
+                       ServiceException {
+               if (faultTo == null)
+                       throw fault;
+
+               AddressingHeaders headers = new AddressingHeaders(faultTo, 
null);
+               headers.setRelatesTo(getCurrentMessageID());
+               Service service = new Service();
+               service.setAddressingHeaders(headers);
+               Call call = (Call) service.createCall();
+               
call.setTargetEndpointAddress(TCPSnifferHelper.redirect(faultTo.getAddress().toString()));
+               call.setSOAPActionURI(action);
+
+               SOAPEnvelope env = new SOAPEnvelope();
+               SOAPFault faultElement = new SOAPFault(fault);
+               env.addBodyElement(faultElement);
+               // FIXME:
+               
faultElement.setQName(SOAPConstants.SOAP11_CONSTANTS.getFaultQName());
+               // FIXME:
+               fault.setFaultDetail(null);
+
+               try {
+                       call.invoke(env);
+               } catch (Exception e) {
+               }
+       }
+}
\ No newline at end of file



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to