void (@NotNull FileGeneratedEvent event) { final ProjectDescriptor pd = myContext.getProjectDescriptor(); final BuildFSState fsState = pd.fsState; for (Pair<String, String> pair : event.getPaths()) { final String relativePath = pair.getSecond(); final File file = relativePath.equals(".") ? new File(pair.getFirst()) : new File(pair.getFirst(), relativePath); for (BuildRootDescriptor desc : pd.getBuildRootIndex().findAllParentDescriptors(file, myContext)) { if (!event.getSourceTarget().equals(desc.getTarget())) { // do not mark files belonging to the target that originated the event // It is assumed that those files will be explicitly marked dirty by particular builder, if needed. try { fsState.markDirty(myContext, file, desc, pd.getProjectStamps().getStampStorage(), false); } catch (IOException ignored) { } } } } }