Commit 572da06d958fe364822b1d5ac091c8e33a7608e5
1 parent
bea496aa
v1.8.2
- pinger javítgatása
Showing
2 changed files
with
37 additions
and
19 deletions
Show diff stats
Vrh.Log4Pro.MaintenanceConsole/Manager - MaintenanceToolManager.cs
| @@ -114,9 +114,15 @@ namespace Vrh.Log4Pro.MaintenanceConsole.MaintenanceToolManagerNS | @@ -114,9 +114,15 @@ namespace Vrh.Log4Pro.MaintenanceConsole.MaintenanceToolManagerNS | ||
| 114 | while (true) | 114 | while (true) |
| 115 | { | 115 | { |
| 116 | DisplayPingerParameters(pingerconfigxml); | 116 | DisplayPingerParameters(pingerconfigxml); |
| 117 | - DisplayAllPingerStatus(pingerconfigxml,iplist, suppresserroneousipaddresses); | 117 | + var cc = ColorConsole.CursorLeft; |
| 118 | + var cr = ColorConsole.CursorTop; | ||
| 118 | suppresserroneousipaddresses = true; | 119 | suppresserroneousipaddresses = true; |
| 119 | - if (!firstrun) { DisplayPingerCommands(); } | 120 | + DisplayAllPingerStatus(pingerconfigxml, iplist, firstrun, suppresserroneousipaddresses); |
| 121 | + if (!firstrun) | ||
| 122 | + { | ||
| 123 | + | ||
| 124 | + DisplayPingerCommands(); | ||
| 125 | + } | ||
| 120 | 126 | ||
| 121 | var command = firstrun ? "STARTANDSHOW *" : ColorConsole.ReadLine(); | 127 | var command = firstrun ? "STARTANDSHOW *" : ColorConsole.ReadLine(); |
| 122 | if (command == "EX") { break; } | 128 | if (command == "EX") { break; } |
| @@ -136,10 +142,10 @@ namespace Vrh.Log4Pro.MaintenanceConsole.MaintenanceToolManagerNS | @@ -136,10 +142,10 @@ namespace Vrh.Log4Pro.MaintenanceConsole.MaintenanceToolManagerNS | ||
| 136 | } | 142 | } |
| 137 | 143 | ||
| 138 | if (cmd.ToLower() == "start") { StartPingers(selectedpingers, pingerconfigxml); } | 144 | if (cmd.ToLower() == "start") { StartPingers(selectedpingers, pingerconfigxml); } |
| 139 | - if (cmd.ToLower() == "startandshow") { StartPingers(selectedpingers, pingerconfigxml); DisplayPingerHistory(selectedpingers); } | 145 | + if (cmd.ToLower() == "startandshow") { StartPingers(selectedpingers, pingerconfigxml); DisplayPingerHistory(selectedpingers, cr, cc); } |
| 140 | else if (cmd.ToLower() == "stop") { StopPingers(selectedpingers); } | 146 | else if (cmd.ToLower() == "stop") { StopPingers(selectedpingers); } |
| 141 | else if (cmd.ToLower() == "drop") { DisposePingers(selectedpingers); } | 147 | else if (cmd.ToLower() == "drop") { DisposePingers(selectedpingers); } |
| 142 | - else if (cmd.ToLower() == "show") { DisplayPingerHistory(selectedpingers); } | 148 | + else if (cmd.ToLower() == "show") { DisplayPingerHistory(selectedpingers, cr, cc); } |
| 143 | else { ColorConsole.WriteLine($"Incorrect answer!", ConsoleColor.Red); continue; } | 149 | else { ColorConsole.WriteLine($"Incorrect answer!", ConsoleColor.Red); continue; } |
| 144 | firstrun = false; | 150 | firstrun = false; |
| 145 | } | 151 | } |
| @@ -189,8 +195,14 @@ namespace Vrh.Log4Pro.MaintenanceConsole.MaintenanceToolManagerNS | @@ -189,8 +195,14 @@ namespace Vrh.Log4Pro.MaintenanceConsole.MaintenanceToolManagerNS | ||
| 189 | ColorConsole.WriteLine(rttlstring.Substring(0, rttlstring.Length>20?20: rttlstring.Length) + (rttlstring.Length > 20 ? "..." : ""), ConsoleColor.Yellow, prefix: " roundtrip time limit values :", suffix: "ms"); | 195 | ColorConsole.WriteLine(rttlstring.Substring(0, rttlstring.Length>20?20: rttlstring.Length) + (rttlstring.Length > 20 ? "..." : ""), ConsoleColor.Yellow, prefix: " roundtrip time limit values :", suffix: "ms"); |
| 190 | ColorConsole.WriteLine((string.Join(",", pconfig.RoundTripTimeyCategoryLimits)).ToString(), ConsoleColor.Yellow, prefix: " roundtrip time category limit values:", suffix: "ms"); | 196 | ColorConsole.WriteLine((string.Join(",", pconfig.RoundTripTimeyCategoryLimits)).ToString(), ConsoleColor.Yellow, prefix: " roundtrip time category limit values:", suffix: "ms"); |
| 191 | } | 197 | } |
| 192 | - private static void DisplayPingerHistory(List<Pinger> selectedpingers) | 198 | + private static void DisplayPingerHistory(List<Pinger> selectedpingers,int firstrow,int cc) |
| 193 | { | 199 | { |
| 200 | + if (selectedpingers == null || !selectedpingers.Any()) { return; } | ||
| 201 | + var lastrow = ColorConsole.CursorTop; | ||
| 202 | + ColorConsole.SetCursorPosition(cc,firstrow); | ||
| 203 | + for (var i= 0; i< lastrow - firstrow;i++) { ColorConsole.WriteLine(new string(' ',100)); } | ||
| 204 | + ColorConsole.SetCursorPosition(cc, firstrow); | ||
| 205 | + | ||
| 194 | ColorConsole.WriteLine(); | 206 | ColorConsole.WriteLine(); |
| 195 | ColorConsole.WriteLine($"Pinger History:", ConsoleColor.Yellow); | 207 | ColorConsole.WriteLine($"Pinger History:", ConsoleColor.Yellow); |
| 196 | var cursorleftposition = ColorConsole.CursorLeft; | 208 | var cursorleftposition = ColorConsole.CursorLeft; |
| @@ -252,37 +264,43 @@ namespace Vrh.Log4Pro.MaintenanceConsole.MaintenanceToolManagerNS | @@ -252,37 +264,43 @@ namespace Vrh.Log4Pro.MaintenanceConsole.MaintenanceToolManagerNS | ||
| 252 | : pingcycle.PackagesSentCategory == Pinger.PingCycle.LostPackageCategory.Bad ? ConsoleColor.Yellow | 264 | : pingcycle.PackagesSentCategory == Pinger.PingCycle.LostPackageCategory.Bad ? ConsoleColor.Yellow |
| 253 | : ConsoleColor.Red; | 265 | : ConsoleColor.Red; |
| 254 | } | 266 | } |
| 255 | - private static void DisplayAllPingerStatus(XElement pingerconfigxml,List<MaintenanceToolsXmlProcessor.IPAddressParsingResult> iplist, bool suppresserroneousipaddresses=false) | 267 | + private static void DisplayAllPingerStatus(XElement pingerconfigxml, List<MaintenanceToolsXmlProcessor.IPAddressParsingResult> iplist, bool suppressconsolemessages = false, bool suppresserroneousipaddresses=false) |
| 256 | { | 268 | { |
| 257 | - ColorConsole.WriteLine(); | ||
| 258 | - ColorConsole.WriteLine($"Pinger status for the following addresses:", ConsoleColor.Yellow); | ||
| 259 | - foreach (var ip in iplist) { DisplayOnePingerStatus(ip, pingerconfigxml, suppresserroneousipaddresses); } | 269 | + if (!suppressconsolemessages) |
| 270 | + { | ||
| 271 | + ColorConsole.WriteLine(); | ||
| 272 | + ColorConsole.WriteLine($"Pinger status for the following addresses:", ConsoleColor.Yellow); | ||
| 273 | + } | ||
| 274 | + foreach (var ip in iplist) { DisplayOnePingerStatus(ip, pingerconfigxml, suppressconsolemessages ,suppresserroneousipaddresses); } | ||
| 260 | } | 275 | } |
| 261 | - private static void DisplayOnePingerStatus(MaintenanceToolsXmlProcessor.IPAddressParsingResult ip, XElement pingerconfigxml,bool suppresserroneousipaddresses = false) | 276 | + private static void DisplayOnePingerStatus(MaintenanceToolsXmlProcessor.IPAddressParsingResult ip, XElement pingerconfigxml, bool suppressconsolemessages = false,bool suppresserroneousipaddresses = false) |
| 262 | { | 277 | { |
| 263 | if (ip.GoodIP) | 278 | if (ip.GoodIP) |
| 264 | { | 279 | { |
| 265 | - ColorConsole.Write($"{ip.IP}", ConsoleColor.Green,prefix:" "); | 280 | + if (!suppressconsolemessages) { ColorConsole.Write($"{ip.IP}", ConsoleColor.Green, prefix: " "); } |
| 266 | 281 | ||
| 267 | var pingerlist = PingerList.Select(x => x.HostNameOrAddress).ToList(); | 282 | var pingerlist = PingerList.Select(x => x.HostNameOrAddress).ToList(); |
| 268 | Pinger pinger; | 283 | Pinger pinger; |
| 269 | if (pingerlist.Contains(ip.IP.ToString())) | 284 | if (pingerlist.Contains(ip.IP.ToString())) |
| 270 | { | 285 | { |
| 271 | pinger = PingerList.FirstOrDefault(x => x.HostNameOrAddress == ip.IP.ToString()); | 286 | pinger = PingerList.FirstOrDefault(x => x.HostNameOrAddress == ip.IP.ToString()); |
| 272 | - ColorConsole.Write($" Pinger exist.", ConsoleColor.Green); | 287 | + if (!suppressconsolemessages) { ColorConsole.Write($" Pinger exist.", ConsoleColor.Green); } |
| 273 | } | 288 | } |
| 274 | else | 289 | else |
| 275 | { | 290 | { |
| 276 | pinger = new Pinger(ip.IP.ToString(), pingerconfigxml); | 291 | pinger = new Pinger(ip.IP.ToString(), pingerconfigxml); |
| 277 | PingerList.Add(pinger); | 292 | PingerList.Add(pinger); |
| 278 | - ColorConsole.Write($" Pinger created.", ConsoleColor.Green); | 293 | + if (!suppressconsolemessages) { ColorConsole.Write($" Pinger created.", ConsoleColor.Green); } |
| 279 | } | 294 | } |
| 280 | 295 | ||
| 281 | - if (pinger.Operating) { ColorConsole.Write($" Pinger running.", ConsoleColor.Green); } | ||
| 282 | - else { ColorConsole.Write($" Pinger still.", ConsoleColor.Green); } | ||
| 283 | - ColorConsole.WriteLine(); | 296 | + if (!suppressconsolemessages) |
| 297 | + { | ||
| 298 | + if (pinger.Operating) { ColorConsole.Write($" Pinger running.", ConsoleColor.Green); } | ||
| 299 | + else { ColorConsole.Write($" Pinger still.", ConsoleColor.Green); } | ||
| 300 | + ColorConsole.WriteLine(); | ||
| 301 | + } | ||
| 284 | } | 302 | } |
| 285 | - else { if (!suppresserroneousipaddresses) { ColorConsole.WriteLine(ip.ErrorMessage, ConsoleColor.Red); } } | 303 | + else { if (!suppresserroneousipaddresses && !suppressconsolemessages) { ColorConsole.WriteLine(ip.ErrorMessage, ConsoleColor.Red); } } |
| 286 | } | 304 | } |
| 287 | #endregion TcpIpTester | 305 | #endregion TcpIpTester |
| 288 | 306 |
Vrh.Log4Pro.MaintenanceConsole/Properties/AssemblyInfo.cs
| @@ -32,5 +32,5 @@ using System.Runtime.InteropServices; | @@ -32,5 +32,5 @@ using System.Runtime.InteropServices; | ||
| 32 | // You can specify all the values or you can default the Build and Revision Numbers | 32 | // You can specify all the values or you can default the Build and Revision Numbers |
| 33 | // by using the '*' as shown below: | 33 | // by using the '*' as shown below: |
| 34 | // [assembly: AssemblyVersion("1.0.*")] | 34 | // [assembly: AssemblyVersion("1.0.*")] |
| 35 | -[assembly: AssemblyVersion("1.8.1.0")] | ||
| 36 | -[assembly: AssemblyFileVersion("1.8.1.0")] | 35 | +[assembly: AssemblyVersion("1.8.2.0")] |
| 36 | +[assembly: AssemblyFileVersion("1.8.2.0")] |