code: public static <T extends JUnitWatcher> Optional<T> getAttachedWatcher(Class<T> watcherType) {
          Optional<T> watcher = CreateTest.getAttachedWatcher(watcherType);
          if (watcher.isPresent()) return watcher;
          
          watcher = Run.getAttachedWatcher(watcherType);
          if (watcher.isPresent()) return watcher;
          
          watcher = RunAnnouncer.getAttachedWatcher(watcherType);
          if (watcher.isPresent()) return watcher;
          
          return RunReflectiveCall.getAttachedWatcher(watcherType);
      }
docs: Get reference to an instance of the specified watcher type.
  
  @param <T> watcher type
  @param watcherType watcher type
  @return optional watcher instance