// Contract methods // called via RPC by monitor public void Subscribe() { if (_monitorMessageCalls == null) { Console.WriteLine("Subscribed"); _monitorMessageCalls = OperationContext.Current.GetCallbackChannel <IMonitoringContract>(); _subscribedMonitorHandler = new MethodRanEventHandler(PublishMethodRanHandler); MonitoringMessageEvent = _subscribedMonitorHandler; HeartBeatTask(); } }
public void Subscribe() { _monitorMessageCalls = OperationContext.Current.GetCallbackChannel <IPubSubMonitoringContract>(); _subscribedMonitorHandler = new MethodRanEventHandler(PublishMethodRanHandler); MonitoringMessageEvent = _subscribedMonitorHandler; try { _monitoredAppMessageCalls.PublishSubscribeMessage(); } catch (Exception ex) { try { _monitorMessageCalls.ErrorOccured($"An error occured in the MonitoringWindowsService:\n{ex.Message}"); } catch (Exception exc) { // log the exception. } } }