MessageFilter GetContractFilter (ContractDescription cd)
{
List<string> actions = new List<string> ();
foreach (var od in cd.Operations)
foreach (var md in od.Messages)
if (md.IsRequest)
if (md.Action == "*")
return new MatchAllMessageFilter ();
else
actions.Add (md.Action);
return new ActionMessageFilter (actions.ToArray ());
}
}