コード例 #1
0
ファイル: GateClassLoader.java プロジェクト: nikolavp/gate
  @Override
  public URL getResource(String name) {
    URL result = null;

    result = super.getResource(name);
    if (result != null) return result;

    if (getParent() == null) {
      result = Gate.getClassLoader().findResource(name);
      if (result != null) return result;
    }

    Set<GateClassLoader> children;
    synchronized (childClassLoaders) {
      children = new LinkedHashSet<GateClassLoader>(childClassLoaders.values());
    }

    for (GateClassLoader cl : children) {
      if (!cl.isIsolated()) {
        result = cl.getResource(name);
        if (result != null) return result;
      }
    }

    return null;
  }