public void GetDataFromFrame(object sender, InputFrameArgs args) { int inputPort = args.PortNumber; List<StreamData> streamForPort = new List<StreamData>(); Dictionary<StreamData, string> streamsData = new Dictionary<StreamData, string>(); foreach (StreamData stream in Streams) { if (stream.Port == inputPort) { string content = null; VirtualContainer vc = (VirtualContainer)args.Frame.GetVirtualContainer(stream.VcLevel, stream.HigherPath, stream.LowerPath); if (vc != null) { Container conteriner = vc.Content.Count > 0 ? vc.Content[0] as Container : null; if (conteriner != null) { content = conteriner.Content; if (content == null || content.Equals("")) { continue; } } else { content = "Error: Container does not transport client data"; } } else { content = "Error: Container does not transport client data"; } streamsData.Add(stream, content); } } if (HandleClientData != null) { HandleClientData(new ClientData(streamsData)); } }
private void HandleIncomFrame(object sender, InputFrameArgs args) { IFrame bufferedFrame = args.Frame; Dictionary<int, IFrame> outputFrames = new Dictionary<int, IFrame>(); CommuteFrame(args.PortNumber, bufferedFrame, outputFrames); transportData(outputFrames); }