@Override
    public void run() {
        try {
            if (parameterFilePath == null || processFilePath == null) {
                printUsage();
                exitWithError();
            }

            Path parameter = Paths.get(parameterFilePath);

            if (!Files.isRegularFile(parameter)) {
                printUsage();
                System.out.print(parameterFilePath + " does not exist");
                exitWithError();
            }
            // Create parameters in
            try (final InputStream inputStream = Files.newInputStream(parameter)) {
                parameterFile = unmarshal(inputStream);
            }

            StringTokenizer processFiles = new StringTokenizer(processFilePath, ",");
            while (processFiles.hasMoreTokens()) {
                final Path process = Paths.get(processFiles.nextToken());
                if (!Files.isRegularFile(process)) {
                    printUsage();
                    System.out.print(parameterFile + " does not exist");
                    exitWithError();
                }
                processFile.add(process);
            }

            readParameter();

            writeParameter();

            for (Path file : processFile) {
                processFile(file);
            }

        } catch (IllegalStateException isEx) {
            if (exitOnError) {
                System.exit(1);
            }
        } catch (final IOException e) {
            e.printStackTrace();
        }
    }
Usage java stroom.util.config.Configure
<pre><code>{@code <parameter file> <files to process>}</code></pre>
stroom-util/src/main/java/stroom/util/config/Configure.java