internal async Task RouteMessageAsync(EnvelopeBase envelope, string messageContent) { var handleMessageGeneric = this.GetType() .GetMethods(BindingFlags.NonPublic | BindingFlags.Instance) .First(m => m.Name == "HandleMessageAsync" && m.IsGenericMethod) .MakeGenericMethod(envelope.Message.GetType()); await Task.Factory.StartNew(() => handleMessageGeneric.Invoke(this, new object[] { envelope })); }
internal void LogMessageRecieved(EnvelopeBase envelope, string messageContent) { this._serviceBus.Log.InfoFormat( CultureInfo.CurrentCulture, "Message of type [{0}] Received at [{1}] from [{2}]", envelope.Message.MessageType, DateTime.Now, envelope.Sender.PeerAddress); this._serviceBus.Log.DebugFormat( CultureInfo.CurrentCulture, "Raw Message Content:{0},{1}{0}================{0}", Environment.NewLine, messageContent); }
/// <summary> /// Transform an <see cref="EnvelopeBase"/> into raw message data. /// </summary> /// <param name="message">The message to transform.</param> /// <returns>The raw message data.</returns> public string Serialise(EnvelopeBase message) { var asJson = JsonConvert.SerializeObject(message); return(asJson); }
/// <summary> /// Transform an <see cref="EnvelopeBase"/> into raw message data. /// </summary> /// <param name="message">The message to transform.</param> /// <returns>The raw message data.</returns> public string Serialise(EnvelopeBase message) { var asJson = JsonConvert.SerializeObject(message); return asJson; }