code: private void processInputDirectories() {
          String[] inputdirs = getOptionValues(SHORT_OPT_IN_PATH);
          final List<File> files = new ArrayList<File>();
          final XBELFileFilter xbelFileFilter = new XBELFileFilter();
          final BELFileFilter belFileFilter = new BELFileFilter();
  
          for (String inputdir : inputdirs) {
              final File workingPath = new File(inputdir);
              if (!workingPath.canRead()) {
                  error(BAD_INPUT_PATH + inputdir);
                  failUsage();
              }
  
              final File[] xbels = workingPath.listFiles(xbelFileFilter);
              if (xbels != null && xbels.length != 0) {
                  files.addAll(asList(xbels));
              }
  
              final File[] bels = workingPath.listFiles(belFileFilter);
              if (bels != null && bels.length != 0) {
                  files.addAll(asList(bels));
              }
          }
  
          // Fail if none of the input directories contain BEL/XBEL files
          if (files.size() == 0) {
              error(NO_DOCUMENT_FILES);
              failUsage();
          }
  
          // Create the directory artifact or fail
          artifactPath = createDirectoryArtifact(outputDirectory, DIR_ARTIFACT);
          processFiles(files.toArray(new File[0]));
      }
docs: Process documents in the input directories.