public bool SendMessage(EventMessage message, string eventName, bool encryptMessage) { //set the sent date if it wasn't set by the sender if (message.SentDate == DateTime.MinValue) { message.SentDate = DateTime.Now; } string[] subscribers = new string[0]; if (EventQueueConfiguration.GetConfig().PublishedEvents[eventName] != null) { subscribers = EventQueueConfiguration.GetConfig().PublishedEvents[eventName].Subscribers.Split(";".ToCharArray()); } else { subscribers[0] = ""; } //send a message for each subscriber of the specified event for (int indx = 0; indx <= subscribers.Length - 1; indx++) { StreamWriter oStream = File.CreateText(m_messagePath + MessageName(eventName, subscribers[indx], message.ID)); string messageString = message.Serialize(); if (encryptMessage) { PortalSecurity oPortalSecurity = new PortalSecurity(); messageString = oPortalSecurity.Encrypt(EventQueueConfiguration.GetConfig().EventQueueSubscribers[subscribers[indx]].PrivateKey, messageString); } oStream.WriteLine(messageString); oStream.Close(); } return(true); }
public bool SendMessage( EventMessage message, string eventName, bool encryptMessage ) { //set the sent date if it wasn't set by the sender if( message.SentDate == DateTime.MinValue ) { message.SentDate = DateTime.Now; } string[] subscribers = new string[0]; if( EventQueueConfiguration.GetConfig().PublishedEvents[eventName] != null ) { subscribers = EventQueueConfiguration.GetConfig().PublishedEvents[eventName].Subscribers.Split( ";".ToCharArray() ); } else { subscribers[0] = ""; } //send a message for each subscriber of the specified event for( int indx = 0; indx <= subscribers.Length - 1; indx++ ) { StreamWriter oStream = File.CreateText( m_messagePath + MessageName( eventName, subscribers[indx], message.ID ) ); string messageString = message.Serialize(); if( encryptMessage ) { PortalSecurity oPortalSecurity = new PortalSecurity(); messageString = oPortalSecurity.Encrypt( EventQueueConfiguration.GetConfig().EventQueueSubscribers[subscribers[indx]].PrivateKey, messageString ); } oStream.WriteLine( messageString ); oStream.Close(); } return true; }