/// <summary>
        /// Send offline announcement message to the mesh
        /// </summary>
        private void SendOfflineAnnouncementMessage()
        {
            var message = businessLogic.ProvideCompactPresenceInfo();
            var offineAnnouncementMessage = new OfflineAnnouncementMessage
            {
                PresenceInfo = message
            };

            synchronizedStateProxy.OfflineAnnouncement(offineAnnouncementMessage);
        }
示例#2
0
        void ISynchronizedState.OfflineAnnouncement(OfflineAnnouncementMessage announcementMessage)
        {
#if DEBUG
            LogManager.GetCurrentClassLogger().Debug("OfflineAnnouncement: {0}", announcementMessage);
#endif
            try
            {
                businessLogic.OnOfflineAnnouncementReceived(announcementMessage.PresenceInfo);
            }
            catch (Exception exception)
            {
                HelperMethods.HandleBusinessLogicException(exception);
            }
        }
 /// <summary>
 /// Peer should send it automatically prior closing the connection to the mesh
 /// </summary>
 void ISynchronizedState.OfflineAnnouncement(OfflineAnnouncementMessage announcementMessage)
 {
     Contract.Requires <ArgumentNullException>(announcementMessage != null);
 }