AntBuildTarget (final ExecutionEvent event) { final Pair<AntBuildFile, String> pair = myEventToTargetMap.get(event); if (pair == null) { return null; } final AntBuildFileBase buildFile = (AntBuildFileBase)pair.first; if (!myBuildFiles.contains(buildFile)) { // file was removed return null; } final String targetName = pair.second; final AntBuildTarget antBuildTarget = buildFile.getModel().findTarget(targetName); if (antBuildTarget != null) { return antBuildTarget; } for (ExecutionEvent ev : getEventsByClass()) { final String name = ExecuteCompositeTargetEvent.TYPE_ID.equals(ev.getTypeId())? ((ExecuteCompositeTargetEvent)ev).getMetaTargetName() : ev.getPresentableName(); if (Comparing.strEqual(targetName, name)) { return new MetaTarget(buildFile, ev.getPresentableName(), ((ExecuteCompositeTargetEvent)ev).getTargetNames()); } } return null; }