public override void Run(DataAdapters.IDataAdapter adapter, Utils.Logger logger) { while (adapter.Read() != null) { // Do not alot } }
public override void Run(DataAdapters.IDataAdapter adapter, Logger logger) { LogPacket[] packets = Config.GetPackets(); DataFrameFilterExpression filters = Config.CreateFilters(); int pos = 0; int repeat = 0; bool finished = false; bool sendatstart = Config.SendAtStart; do { bool matchedFrame = false; if (sendatstart) { matchedFrame = true; sendatstart = false; } else { DataFrame frame = adapter.Read(); if ((frame == null) || (finished && Config.CloseAfterSend)) { break; } matchedFrame = filters.IsMatch(frame); } if (matchedFrame) { if (!finished) { // Send if any packets left if (pos < packets.Length) { DataFrame current = packets[pos++].Frame.CloneFrame(); if (Config.ConvertToBasic) { current.ConvertToBasic(); } adapter.Write(current); } if (pos == packets.Length) { repeat++; pos = 0; } if (repeat >= Config.RepeatCount) { finished = true; if (!Config.WaitForResponseOnClose && Config.CloseAfterSend) { break; } } } } }while (true); }