Author: atsushi
Date: 2008-02-17 09:59:29 -0500 (Sun, 17 Feb 2008)
New Revision: 95976

Modified:
   
trunk/olive/class/System.ServiceModel/System.ServiceModel.Dispatcher/ChangeLog
   
trunk/olive/class/System.ServiceModel/System.ServiceModel.Dispatcher/EndpointDispatcher.cs
Log:
2008-02-17  Atsushi Enomoto  <[EMAIL PROTECTED]>

        * EndpointDispatcher.cs : we don't need AddressFilter workaround
          from Feb. 14 anymore.



Modified: 
trunk/olive/class/System.ServiceModel/System.ServiceModel.Dispatcher/ChangeLog
===================================================================
--- 
trunk/olive/class/System.ServiceModel/System.ServiceModel.Dispatcher/ChangeLog  
    2008-02-17 14:51:28 UTC (rev 95975)
+++ 
trunk/olive/class/System.ServiceModel/System.ServiceModel.Dispatcher/ChangeLog  
    2008-02-17 14:59:29 UTC (rev 95976)
@@ -1,5 +1,10 @@
 2008-02-17  Atsushi Enomoto  <[EMAIL PROTECTED]>
 
+       * EndpointDispatcher.cs : we don't need AddressFilter workaround
+         from Feb. 14 anymore.
+
+2008-02-17  Atsushi Enomoto  <[EMAIL PROTECTED]>
+
        * EndpointDispatcher.cs : after service method call, apply outgoing
          headers and properties to the returned message.
 

Modified: 
trunk/olive/class/System.ServiceModel/System.ServiceModel.Dispatcher/EndpointDispatcher.cs
===================================================================
--- 
trunk/olive/class/System.ServiceModel/System.ServiceModel.Dispatcher/EndpointDispatcher.cs
  2008-02-17 14:51:28 UTC (rev 95975)
+++ 
trunk/olive/class/System.ServiceModel/System.ServiceModel.Dispatcher/EndpointDispatcher.cs
  2008-02-17 14:59:29 UTC (rev 95976)
@@ -165,6 +165,17 @@
                        Message req = rc.RequestMessage;
                        Message res = null;
 
+                       // FIXME: AddressFilter is likely applied before
+                       // an input is delivered to EndpointDispatcher. 
+                       // This means, we likely have to make some
+                       // conceptual changes to channel dispatcher and
+                       // endpoint dispatcher.
+                       // For now I moved AddressFilter here so that
+                       // WebHttpDispatchOperationSelector to select 
+                       // operation before the Message is filtered out.
+                       if (IsMessageFilteredOut (req))
+                               throw new EndpointNotFoundException 
(String.Format ("The request message has the target '{0}' which is not 
reachable in this service contract", req.Headers.To));
+
                        DispatchOperation op = GetOperation (req);
                        if (op == null) {
                                // process WS-Trust based negotiation
@@ -180,20 +191,8 @@
                                        op = 
DispatchRuntime.UnhandledDispatchOperation;
                        }
 
-                       if (res == null) {
-                               // FIXME: AddressFilter is likely applied before
-                               // an input is delivered to EndpointDispatcher. 
-                               // This means, we likely have to make some
-                               // conceptual changes to channel dispatcher and
-                               // endpoint dispatcher.
-                               // For now I moved AddressFilter here so that
-                               // WebHttpDispatchOperationSelector to select 
-                               // operation before the Message is filtered out.
-                               if (IsMessageFilteredOut (req))
-                                       throw new EndpointNotFoundException 
(String.Format ("The request message has the target '{0}' which is not 
reachable in this service contract", rc.RequestMessage.Headers.To));
-
+                       if (res == null)
                                res = op.ProcessRequest (req);
-                       }
 
                        if (res == null)
                                throw new InvalidOperationException 
(String.Format ("The operation '{0}' returned a null message.", op.Action));

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to