package com.it_jaros.networkScanner; import java.util.List; import java.util.stream.Collectors; public class App { public static void main(String[] args) { CliParser cliParser = new CliParser(); try { ScanOptions options = cliParser.parseArgs(args); Scanner scanner = new Scanner(options.openSocketLimit(), options.timeoutInMillis()); List openPorts = scanner.scanPorts(options); printResults(openPorts); } catch (IllegalArgumentException e) { System.out.println(e.getMessage()); cliParser.usageAndExit(); } catch (Exception e) { System.err.println("Something went wrong"); } } public static void printResults(List results) { results.forEach(r -> printResult(r)); } private static void printResult(ScanResult result) { String ports = result.openPorts().stream().map(String::valueOf).collect(Collectors.joining(",")); System.out.print(result.target() + ":"+ ports); System.out.print("\n"); } }