class ExecPipe {

    public static ExecPipe pipeOf(final boolean quoteArgs, final String[]... commands) {
        List<ExecBuilder> builders = new ArrayList<>();
        for (String[] command : commands) {
            List<String> commandParts = Arrays.asList(command);
            ExecBuilder builder = new ExecBuilder(commandParts.get(0), quoteArgs);
            List<String> args = commandParts.subList(1, commandParts.size());
            String[] argsArr = new String[args.size()];
            builder.args(args.toArray(argsArr));
            builders.add(builder);
        }
        return new ExecPipe(builders);
    }

    public  ExecPipe(final ExecBuilder... execBuilders);
    public  ExecPipe(final List<ExecBuilder> execBuilders);

}