private void EditPenalty(UserConnection conn, SyncStateCommand command) { //var penalty = (Penalty)JsonConvert.DeserializeObject<Penalty>(command.Data.Penalty.ToString()); var penalty = command.Data.Penalty.ToObject <Penalty>(); this.UpdatePenalty(penalty); }
private void UpdateOfftracks(UserConnection conn, SyncStateCommand command) { var offtracks = (List <Offtrack>)command.Data.Offtracks.ToObject <List <Offtrack> >(); if (offtracks.Count == 0) { return; } foreach (var offtrack in offtracks) { var id = offtrack.DriverId; if (!this.State.OfftrackHistories.ContainsKey(id)) { this.State.OfftrackHistories.Add(id, new List <Offtrack>()); } // Does an offtrack with the same id already exist? var existing = this.State.OfftrackHistories[id].LastOrDefault(o => o.UniqueId == offtrack.UniqueId); if (existing != null) { // Update this offtrack this.State.OfftrackHistories[id].Remove(existing); } this.State.OfftrackHistories[id].Add(offtrack); } }
private void UpdateWatchedDriver(UserConnection conn, SyncStateCommand command) { int id = conn.User.CustId; if (!this.State.WatchedDrivers.ContainsKey(id)) { this.State.WatchedDrivers.Add(id, -1); // -1 means 'not focused on driver' } this.State.WatchedDrivers[id] = (int)command.Data.CarId; }
private void UpdateLiveStatus(UserConnection conn, SyncStateCommand command) { int id = conn.User.CustId; if (!this.State.LiveStatus.ContainsKey(id)) { this.State.LiveStatus.Add(id, false); } this.State.LiveStatus[id] = (bool)command.Data.IsLive; }
private void DeletePenalty(UserConnection conn, SyncStateCommand command) { var id = (string)command.Data.PenaltyId; var penalty = this.State.Penalties.FirstOrDefault(p => p.Id == id); if (penalty != null) { this.State.Penalties.Remove(penalty); } }
public static SyncStateCommand EditPenalty(Penalty penalty) { var command = new SyncStateCommand(); command.StateUpdateType = SyncStateCommand.StateUpdateTypes.EditPenalty; command.Data = new { Penalty = penalty }; return command; }
public static SyncStateCommand DeleteEvent(ReplayEvent @event) { var command = new SyncStateCommand(); command.StateUpdateType = SyncStateCommand.StateUpdateTypes.DeleteEvent; command.Data = new { Event = @event }; return command; }
private void EditPenalty(UserConnection conn, SyncStateCommand command) { var penalty = command.Data.Penalty.ToObject<Penalty>(); this.UpdatePenalty(penalty); }
public static SyncStateCommand UpdateLiveStatus(bool live) { var command = new SyncStateCommand(); command.StateUpdateType = SyncStateCommand.StateUpdateTypes.LiveStatusChanged; command.Data = new { IsLive = live }; return command; }
private void AddEvent(UserConnection conn, SyncStateCommand command) { var @event = command.Data.Event.ToObject <ReplayEvent>(); this.UpdateEvent(@event); }
private void EditPenalty(UserConnection conn, SyncStateCommand command) { var penalty = command.Data.Penalty.ToObject <Penalty>(); this.UpdatePenalty(penalty); }
public static SyncStateCommand UpdateWatchedDriver(int carId) { var command = new SyncStateCommand(); command.StateUpdateType = SyncStateCommand.StateUpdateTypes.WatchedDriverChanged; command.Data = new {CarId = carId}; return command; }
private void AddEvent(UserConnection conn, SyncStateCommand command) { var @event = command.Data.Event.ToObject<ReplayEvent>(); this.UpdateEvent(@event); }
public static SyncStateCommand UpdateOfftracks(List<Offtrack> offtracks) { var command = new SyncStateCommand(); command.StateUpdateType = SyncStateCommand.StateUpdateTypes.Offtracks; command.Data = new {Offtracks = offtracks}; return command; }
private void EditPenalty(UserConnection conn, SyncStateCommand command) { //var penalty = (Penalty)JsonConvert.DeserializeObject<Penalty>(command.Data.Penalty.ToString()); var penalty = command.Data.Penalty.ToObject<Penalty>(); this.UpdatePenalty(penalty); }
public static SyncStateCommand DeletePenalty(Penalty penalty) { var command = new SyncStateCommand(); command.StateUpdateType = SyncStateCommand.StateUpdateTypes.DeletePenalty; command.Data = new { PenaltyId = penalty.Id }; return command; }
public static SyncStateCommand ClearOfftracks() { var command = new SyncStateCommand(); command.StateUpdateType = SyncStateCommand.StateUpdateTypes.ClearOfftracks; return command; }
private void UpdateOfftracks(UserConnection conn, SyncStateCommand command) { var offtracks = (List<Offtrack>)command.Data.Offtracks.ToObject<List<Offtrack>>(); if (offtracks.Count == 0) return; foreach (var offtrack in offtracks) { var id = offtrack.DriverId; if (!this.State.OfftrackHistories.ContainsKey(id)) { this.State.OfftrackHistories.Add(id, new List<Offtrack>()); } // Does an offtrack with the same id already exist? var existing = this.State.OfftrackHistories[id].LastOrDefault(o => o.UniqueId == offtrack.UniqueId); if (existing != null) { // Update this offtrack this.State.OfftrackHistories[id].Remove(existing); } this.State.OfftrackHistories[id].Add(offtrack); } }
public void SendStateUpdate(SyncStateCommand command) { Debug.WriteLine(">> Sending state update: " + command); this.SendCommand(command); this.OnStateUpdated(); }