private static Dictionary <string, string> GetKeywords(InterceptorMessage interceptorMessage) { Dictionary <string, string> keywords = new Dictionary <string, string>(); System.ServiceModel.Channels.Message wcfMessage = interceptorMessage.GetMessage(); keywords.Add("messageaction", wcfMessage.Headers.Action); return(keywords); }
public override void InterceptRequest(InterceptorMessage interceptorMessage) { // Get the message, uncopied Message msg = interceptorMessage.GetMessage(); // Extract headers and switch sender for receiver _senderPartyIdentifier = ExtractHeaderValue(msg, _receiverPartyIdentifierHeaderName.Name, _receiverPartyIdentifierHeaderName.Namespace, DefaultReceiverPartyIdentifier); _senderPartyIdentifierType = ExtractHeaderValue(msg, _receiverPartyIdentifierTypeHeaderName.Name, _receiverPartyIdentifierTypeHeaderName.Namespace, "other"); _receiverPartyIdentifier = ExtractHeaderValue(msg, _senderPartyIdentifierHeaderName.Name, _senderPartyIdentifierHeaderName.Namespace, DefaultSenderPartyIdentifier); _receiverPartyIdentifierType = ExtractHeaderValue(msg, _senderPartyIdentifierTypeHeaderName.Name, _senderPartyIdentifierTypeHeaderName.Namespace, "other"); }
public override void InterceptRequest(InterceptorMessage interceptorMessage) { // Get the message, uncopied Message msg = interceptorMessage.GetMessage(); // If a property is set use that to find the header values if (msg.Properties.ContainsKey(PartyIdentifierHeaderSettings.MessagePropertyKey)) { PartyIdentifierHeaderSettings settings = (PartyIdentifierHeaderSettings)msg.Properties[PartyIdentifierHeaderSettings.MessagePropertyKey]; if (!string.IsNullOrEmpty(settings.SenderPartyHeaderValue)) { _senderPartyIdentifier = settings.SenderPartyHeaderValue; } if (!string.IsNullOrEmpty(settings.ReceiverPartyHeaderValue)) { _receiverPartyIdentifier = settings.ReceiverPartyHeaderValue; } _senderPartyIdentifierType = settings.SenderPartyKeyType; _receiverPartyIdentifierType = settings.ReceiverPartyKeyType; } // Add the headers msg.Headers.Add(MessageHeader.CreateHeader( _senderPartyIdentifierHeaderName.Name, _senderPartyIdentifierHeaderName.Namespace, _senderPartyIdentifier)); msg.Headers.Add(MessageHeader.CreateHeader( _senderPartyIdentifierTypeHeaderName.Name, _senderPartyIdentifierTypeHeaderName.Namespace, _senderPartyIdentifierType)); msg.Headers.Add(MessageHeader.CreateHeader( _receiverPartyIdentifierHeaderName.Name, _receiverPartyIdentifierHeaderName.Namespace, _receiverPartyIdentifier)); msg.Headers.Add(MessageHeader.CreateHeader( _receiverPartyIdentifierTypeHeaderName.Name, _receiverPartyIdentifierTypeHeaderName.Namespace, _receiverPartyIdentifierType)); }