Beispiel #1
0
 /// <summary>
 /// Delegate Method which will be used as event listener.
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 internal void EventDelegate(object sender, EventArgs e)
 {
     try
     {
         var container = new EventArgsContainer(sender, e, TrackingElement)
         {
             EventDefinition = Sequence.Recorder.Events.EventDefinition.CastOrCreate(Event)
         };
         try
         {
             Config.Instance.WriteLog(this, $"Invoking EventOccured Event for {container?.Sender?.StringRepresentation} and Event {container?.EventDefinition?.EventType}.", LogType.Info);
             EventOccurred?.Invoke(this, new EventOccuredEventArgs(sender, e, container));
         }
         catch (Exception ex)
         {
             Config.Instance.WriteLog(this, $"Exception on user defined EventOccuredAction: \r\n {ex.ToString()}".AttachCallerInformation(), LogType.Error);
         }
         EventProcessing.Instance.ProcessEvent(container);
     }catch (Exception ex)
     {
         Config.Instance.WriteLog(this, $"Exception on Processing event {e.ToString()}: \r\n {ex.ToString()}".AttachCallerInformation(), LogType.Error);
     }
 }
 private void ObserverHandlerOnVolumeUpdateEvent(object o, EventArgsContainer<ushort> vol)
 {
     Dispatcher.BeginInvoke(new Action(() =>
         {
             if (vol._data < 70)
             {
                 sliderVol.Value = 70;
             }
             else
             {
                 sliderVol.Value = Convert.ToDouble(vol._data);
             }
         }));
 }
 private void ObserverHandlerOnTransportStateEvent(object sender, EventArgsContainer<string> eventArgsContainer)
 {
     Dispatcher.BeginInvoke(new Action(() =>
         {
             switch (eventArgsContainer._data)
             {
                 case "playing":
                     togglePlayButton();
                     break;
                 case "stopped":
                     togglePlayButton();
                     break;
                 default:
                     break;
             }
         }));
 }
        private void ObserverHandlerOnPlayQueueUpdateEvent(object o, EventArgsContainer<List<ITrack>> tracks)
        {
            Dispatcher.BeginInvoke(new Action(() =>
            {
                playqueue.Clear();

                foreach (var track in tracks._data)
                {
                    playqueue.Add(track);
                }
            }));
        }
        private void ObserverHandlerOnGetPositionEvent(object sender, EventArgsContainer<List<ushort>> eventArgsContainer)
        {
            Dispatcher.BeginInvoke(new Action(() =>
                {
                    sliderTime.Value = eventArgsContainer._data[0];
                    sliderTime.Maximum = eventArgsContainer._data[1];

                }));
        }
 private void ObserverHandlerOnGetIpEvent1(object sender, EventArgsContainer<string> eventArgsContainer)
 {
     var thread = new Thread(() =>
     {
         var dlg = new OpenFileDialog();
         if (dlg.ShowDialog() == System.Windows.Forms.DialogResult.OK)
         {
             Client cli = new Client(dlg.FileName, eventArgsContainer._data);
         }
     });
     thread.SetApartmentState(ApartmentState.STA);
     thread.Start();
     thread.Join();
 }
        private void HandOnMusikUpdateEvent(object o, EventArgsContainer<List<ITrack>> tracks)
        {
            Dispatcher.BeginInvoke(new Action(() =>
            {
                musikindex.Clear();

                foreach (var track in tracks._data)
                {
                    musikindex.Add(track);
                }
            }));
        }
        private void RenderingControlOnOnResultGetVolume(CpRenderingControl sender, uint instanceId, string channel, ushort currentVolume, UPnPInvokeException upnPInvokeException, object tag)
        {
            EventArgsContainer<ushort> argsContainer = new EventArgsContainer<ushort>(currentVolume);

            getVolEvent(this, argsContainer);
        }
        private void RenderingControlOnOnResultGetPosition(CpRenderingControl sender, uint instanceId, ushort currentPosition, ushort duration, UPnPInvokeException upnPInvokeException, object tag)
        {
            var list = new List<ushort>{currentPosition, duration};

            var args = new EventArgsContainer<List<ushort>>(list);

            getPositionEvent(this, args);
        }
        private void ConnectionManagerOnOnResultGetIpAddress(CpConnectionManager sender, string ipAddress, UPnPInvokeException upnPInvokeException, object tag)
        {
            EventArgsContainer<string> argsContainer = new EventArgsContainer<string>(ipAddress);

            getIPEvent(this, argsContainer);
        }
 private void UpnPSinkOnTransportStateEvent(object sender, EventArgsContainer<string> eventArgsContainer)
 {
     this.transportStateEvent(this, eventArgsContainer);
 }
        private void getVolEvent(object sender, Containers.EventArgsContainer<ushort> volEventArgsContainer)
        {
            var args = new EventArgsContainer<ushort>(volEventArgsContainer._data);

            VolumeUpdateEvent(this, args);
        }
        private void getPosEvent(object sender, Containers.EventArgsContainer<List<ushort>> posEventArgsContainer)
        {
            //var args = new MyEventArgs<ushort>(posEventArgs._data);

            //getPositionEvent(this, args);

            var list = new List<ushort> { posEventArgsContainer._data[0], posEventArgsContainer._data[1] };

            EventArgsContainer<List<ushort>> argsContainer = new EventArgsContainer<List<ushort>>(list);

            getPositionEvent(this, argsContainer);
        }
        private void getIPEvent(object sender, Containers.EventArgsContainer<string> ipEventArgsContainer)
        {
            var args = new EventArgsContainer<string>(ipEventArgsContainer._data);

            getIPEvent1(this, args);
        }
        public void Handle(string xml)
        {
            List<ITrack> list = xmlr.itemReader(xml);
            var args = new EventArgsContainer<List<ITrack>>(list);

            if (list.Count > 0)
            {
                switch (list[0].ParentID)
                {
                    case "playqueue":
                        playQueueUpdateEvent(this, args);
                        break;
                    case "all":
                        musikUpdateEvent(this, args);
                        //_UPnPSource.Browse("playqueue");
                        break;
                    default:
                        break;
                }
            }
        }
        private void ContentDirectoryOnOnResultBrowse(CpContentDirectory sender, string objectId, CpContentDirectory.Enum_A_ARG_TYPE_BrowseFlag browseFlag, string filter, uint startingIndex, uint requestedCount, string sortCriteria, string result, uint numberReturned, uint totalMatches, uint updateId, UPnPInvokeException upnPInvokeException, object tag)
        {
            EventArgsContainer<string> argsContainer = new EventArgsContainer<string>(result);

            BrowseResult(this, argsContainer);
        }