public ServerInfoRulesFetcher(IPEndPoint ep, LockedWrapper<ServerRulesServiceWrap> s,
LockedWrapper<MatchmakingServiceWrap> a) : base(a) {
_ep = ep;
_srs = s;
RulesRefreshComplete =
Observable
.FromEvent<EventHandler<ServerRulesRefreshCompletedEventArgs>, ServerRulesRefreshCompletedEventArgs>
(handler => {
EventHandler<ServerRulesRefreshCompletedEventArgs> evtHandler =
(sender, e) => handler(e);
return evtHandler;
},
evtHandler => _srs.DoWithoutLock(srs => srs.RefreshComplete += evtHandler),
evtHandler => _srs.DoWithoutLock(srs => srs.RefreshComplete -= evtHandler),
_srs.Scheduler);
RulesFailedToRespond =
Observable
.FromEvent
<EventHandler<ServerRulesFailedToRespondEventArgs>, ServerRulesFailedToRespondEventArgs>
(handler => {
EventHandler<ServerRulesFailedToRespondEventArgs> evtHandler = (sender, e) => handler(e);
return evtHandler;
},
evtHandler => _srs.DoWithoutLock(srs => srs.ServerRulesFailedToRespond += evtHandler),
evtHandler => _srs.DoWithoutLock(srs => srs.ServerRulesFailedToRespond -= evtHandler),
_srs.Scheduler);
}