private File getSingleOutputDirectory(final Location loc, final URI sourceUri) {
    if (loc == StandardLocation.CLASS_OUTPUT) {
      if (myOutputsMap.size() > 1 && sourceUri != null) {
        // multiple outputs case
        final File outputDir = findOutputDir(new File(sourceUri));
        if (outputDir != null) {
          return outputDir;
        }
      }
    }

    final Iterable<? extends File> location = getStdManager().getLocation(loc);
    if (location != null) {
      final Iterator<? extends File> it = location.iterator();
      if (it.hasNext()) {
        return it.next();
      }
    }
    return null;
  }
private File getSingleOutputDirectory(final Location loc, final URI sourceUri)