/// <summary> /// Verändert die Aufzeichnung eines Senders. /// </summary> /// <param name="feed">Der Sender.</param> /// <param name="key">Die Identifikation der Aufzeichung.</param> public void DisableRecording(Feed feed, string key) { // Validate if (!feed.IsRecording(key)) { throw new ArgumentException("Aufzeichnung des Senders kann nicht beendet werden", "key"); } // Change feed.StopRecording(key); // Create rollback action m_commitActions.Add(() => m_feedSet.OnRecordingChanged(feed, key, false)); m_rollbackActions.Add(() => feed.StartRecording(key)); }
/// <summary> /// Wird ausgelöst, wenn sich der Zustand eine Aufzeichnung verändert hat. /// </summary> /// <param name="feed">Der betroffene Sender.</param> /// <param name="key">Die betroffene Aufzeichnung.</param> /// <param name="start">Gesetzt, wenn die Aufzeichnung begonnen werden soll.</param> public void OnRecordingChanged(Feed feed, string key, bool start) { var changed = start ? feed.StartRecording(key) : feed.StopRecording(key); if (!changed) { return; } var sink = RecordingStateChanged; if (sink != null) { sink(feed, key, start); } }
/// <summary> /// Wird ausgelöst, wenn sich der Zustand eine Aufzeichnung verändert hat. /// </summary> /// <param name="feed">Der betroffene Sender.</param> /// <param name="key">Die betroffene Aufzeichnung.</param> /// <param name="start">Gesetzt, wenn die Aufzeichnung begonnen werden soll.</param> public void OnRecordingChanged( Feed feed, string key, bool start ) { var changed = start ? feed.StartRecording( key ) : feed.StopRecording( key ); if (!changed) return; var sink = RecordingStateChanged; if (sink != null) sink( feed, key, start ); }
/// <summary> /// Verändert die Aufzeichnung eines Senders. /// </summary> /// <param name="feed">Der Sender.</param> /// <param name="key">Die Identifikation der Aufzeichung.</param> public void DisableRecording( Feed feed, string key ) { // Validate if (!feed.IsRecording( key )) throw new ArgumentException( "Aufzeichnung des Senders kann nicht beendet werden", "key" ); // Change feed.StopRecording( key ); // Create rollback action m_commitActions.Add( () => m_feedSet.OnRecordingChanged( feed, key, false ) ); m_rollbackActions.Add( () => feed.StartRecording( key ) ); }