private synchronized void checkDependencies(Set<TextSource> already) {
    if (depLoaderMap!=null && !depLoaderMap.isEmpty()) {
      for (TextSource ts: depLoaderMap.values()){
        if (!already.contains(ts)) 
          try {
            ts.check(already);
          } catch (Exception e) {
            throw new DependencyCheckException(this, e);
          }
        //It may have been checked elsewhere, but we still need to know its getLastModified().
        setLastModified(ts.getLastModified());
      }
    }
  }