亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? repositoryclassloader.java

?? jsr170接口的java實(shí)現(xiàn)。是個(gè)apache的開源項(xiàng)目。
?? JAVA
?? 第 1 頁(yè) / 共 3 頁(yè)
字號(hào):
        // create new array and copy old and new contents        ClassPathEntry[] newList = new ClassPathEntry[list.length+1];        System.arraycopy(list, 0, newList, 0, list.length);        newList[list.length] = newEntry;        return newList;    }    //---------- Object overwrite ---------------------------------------------    /**     * Returns a string representation of this instance.     */    public String toString() {        StringBuffer buf = new StringBuffer(getClass().getName());        if (isDestroyed()) {            buf.append(" - destroyed");        } else {            buf.append(": parent: { ");            buf.append(getParent());            buf.append(" }, user: ");            buf.append(session.getUserID());        }        return buf.toString();    }    //---------- internal ------------------------------------------------------    /**     * Builds the repository list from the list of path patterns and appends     * the path entries from any added handles. This method may be used multiple     * times, each time replacing the currently defined repository list.     *     * @throws NullPointerException If this class loader has already been     *      destroyed.     */    protected synchronized void buildRepository() {        // build new repository        List handles;        try {            handles = getHandles().getExpandedPaths();        } catch (RepositoryException re) {            log.error("Cannot expand handle list", re);            return;        }        List newRepository = new ArrayList(handles.size());        // build repository from path patterns        for (int i=0; i < handles.size(); i++) {            String entry = (String) handles.get(i);            ClassPathEntry cp = null;            // try to find repository based on this path            if (getRepository() != null) {                for (int j=0; j < repository.length; j++) {                    ClassPathEntry tmp = repository[i];                    if (tmp.getPath().equals(entry)) {                        cp = tmp;                        break;                    }                }            }            // not found, creating new one            if (cp == null) {                cp = ClassPathEntry.getInstance(session, entry);            }            if (cp != null) {                log.debug("Adding path {}", entry);                newRepository.add(cp);            } else {                log.debug("Cannot get a ClassPathEntry for {}", entry);            }        }        // replace old repository with new one        ClassPathEntry[] newClassPath = new ClassPathEntry[newRepository.size()];        newRepository.toArray(newClassPath);        setRepository(newClassPath);        // clear un-found resource cache        cleanCache();    }    /**     * Tries to find the class in the class path from within a     * <code>PrivilegedAction</code>. Throws <code>ClassNotFoundException</code>     * if no class can be found for the name.     *     * @param name the name of the class     *     * @return the resulting class     *     * @throws ClassNotFoundException if the class could not be found     * @throws NullPointerException If this class loader has already been     *      destroyed.     */    private Class findClassPrivileged(String name) throws ClassNotFoundException {        // prepare the name of the class        final String path = name.replace('.', '/').concat(".class");        log.debug("findClassPrivileged: Try to find path {} for class {}",            path, name);        ClassLoaderResource res = findClassLoaderResource(path);        if (res != null) {             // try defining the class, error aborts             try {                 log.debug(                    "findClassPrivileged: Loading class from {}, created {}",                    res, new Date(res.getLastModificationTime()));                 Class c = defineClass(name, res);                 if (c == null) {                     log.warn("defineClass returned null for class {}", name);                     throw new ClassNotFoundException(name);                 }                 return c;             } catch (IOException ioe) {                 log.debug("defineClass failed", ioe);                 throw new ClassNotFoundException(name, ioe);             } catch (Throwable t) {                 log.debug("defineClass failed", t);                 throw new ClassNotFoundException(name, t);             }         }        throw new ClassNotFoundException(name);     }    /**     * Returns a {@link ClassLoaderResource} for the given <code>name</code> or     * <code>null</code> if not existing. If the resource has already been     * loaded earlier, the cached instance is returned. If the resource has     * not been found in an earlier call to this method, <code>null</code> is     * returned. Otherwise the resource is looked up in the class path. If     * found, the resource is cached and returned. If not found, the     * {@link #NOT_FOUND_RESOURCE} is cached for the name and <code>null</code>     * is returned.     *     * @param name The name of the resource to return.     *     * @return The named <code>ClassLoaderResource</code> if found or     *      <code>null</code> if not found.     *     * @throws NullPointerException If this class loader has already been     *      destroyed.     */    /* package */ ClassLoaderResource findClassLoaderResource(String name) {        // check for cached resources first        ClassLoaderResource res = (ClassLoaderResource) cache.get(name);        if (res == NOT_FOUND_RESOURCE) {            log.debug("Resource '{}' known to not exist in class path", name);            return null;        } else if (res != null) {            return res;        }        // walk the repository list and try to find the resource        for (int i = 0; i < repository.length; i++) {            final ClassPathEntry cp = repository[i];            log.debug("Checking {}", cp);            res = cp.getResource(name);            if (res != null) {                log.debug("Found resource in {}, created ", res, new Date(                    res.getLastModificationTime()));                cache.put(name, res);                return res;            }        }        log.debug("No classpath entry contains {}", name);        cache.put(name, NOT_FOUND_RESOURCE);        return null;    }    /**     * Defines a class getting the bytes for the class from the resource     *     * @param name The fully qualified class name     * @param res The resource to obtain the class bytes from     *     * @throws RepositoryException If a problem occurrs getting at the data.     * @throws IOException If a problem occurrs reading the class bytes from     *      the resource.     * @throws ClassFormatError If the class bytes read from the resource are     *      not a valid class.     */    private Class defineClass(String name, ClassLoaderResource res)            throws IOException, RepositoryException {        log.debug("defineClass({}, {})", name, res);        Class clazz = res.getLoadedClass();        if (clazz == null) {            /**             * This following code for packages is duplicate from URLClassLoader             * because it is private there. I would like to not be forced to             * do this, but I still have to find a way ... -fmeschbe             */            // package support            int i = name.lastIndexOf('.');            if (i != -1) {                String pkgname = name.substring(0, i);                // Check if package already loaded.                Package pkg = getPackage(pkgname);                URL url = res.getCodeSourceURL();                Manifest man = res.getManifest();                if (pkg != null) {                    // Package found, so check package sealing.                    boolean ok;                    if (pkg.isSealed()) {                        // Verify that code source URL is the same.                        ok = pkg.isSealed(url);                    } else {                        // Make sure we are not attempting to seal the package                        // at this code source URL.                        ok = (man == null) || !isSealed(pkgname, man);                    }                    if (!ok) {                        throw new SecurityException("sealing violation");                    }                } else {                    if (man != null) {                        definePackage(pkgname, man, url);                    } else {                        definePackage(pkgname, null, null, null, null, null, null, null);                    }                }            }            byte[] data = res.getBytes();            clazz = defineClass(name, data, 0, data.length);            res.setLoadedClass(clazz);        }        return clazz;    }    /**     * Returns true if the specified package name is sealed according to the     * given manifest     * <p>     * This code is duplicate from <code>URLClassLoader.isSealed</code> because     * the latter has private access and we need the method here.     */    private boolean isSealed(String name, Manifest man) {         String path = name.replace('.', '/').concat("/");         Attributes attr = man.getAttributes(path);         String sealed = null;         if (attr != null) {             sealed = attr.getValue(Attributes.Name.SEALED);         }         if (sealed == null) {             if ((attr = man.getMainAttributes()) != null) {                 sealed = attr.getValue(Attributes.Name.SEALED);             }         }         return "true".equalsIgnoreCase(sealed);    }    /**     * Returns <code>true</code> if the <code>url</code> is a <code>JCR</code>     * URL.     *     * @param url The URL to check whether it is a valid <code>JCR</code> URL.     *     * @return <code>true</code> if <code>url</code> is a valid <code>JCR</code>     *      URL.     *     * @throws NullPointerException if <code>url</code> is <code>null</code>.     */    private boolean checkURL(URL url) {        return URLFactory.REPOSITORY_SCHEME.equalsIgnoreCase(url.getProtocol());    }}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩精品是欧美日韩精品| 精品日韩在线一区| 亚洲欧美另类久久久精品2019| 欧美一区二区三区不卡| 91免费小视频| 成人高清视频免费观看| 春色校园综合激情亚洲| 国产一区欧美二区| 91在线一区二区三区| 2020国产精品自拍| 日韩三级.com| 欧美福利视频一区| 日韩欧美国产麻豆| 久久蜜桃av一区精品变态类天堂 | 欧美一级视频精品观看| 中文字幕制服丝袜成人av| 日韩毛片精品高清免费| 日韩一区有码在线| 亚洲1区2区3区4区| 蜜桃av一区二区| 国产69精品久久777的优势| 91免费观看视频| 久久久精品欧美丰满| 美女视频网站黄色亚洲| 91精品国产综合久久久蜜臀粉嫩| 日韩欧美一级二级三级久久久| 欧美亚洲丝袜传媒另类| 精品视频在线视频| 欧美中文字幕久久| 欧美性猛交xxxx黑人交| 欧美日韩国产高清一区二区| 国产亚洲欧美一区在线观看| 欧美成人精品二区三区99精品| 久久美女艺术照精彩视频福利播放| 亚洲日本韩国一区| 首页国产欧美久久| 综合欧美一区二区三区| 日韩精品福利网| 丰满岳乱妇一区二区三区| 在线这里只有精品| 99视频精品免费视频| 亚洲成人中文在线| 日韩一区在线免费观看| 日本亚洲一区二区| 香蕉成人伊视频在线观看| 图片区小说区区亚洲影院| 国产区在线观看成人精品| 一区二区三区精密机械公司| 久久久久9999亚洲精品| 日本女优在线视频一区二区| 色综合色综合色综合| 91免费看`日韩一区二区| 欧美日韩不卡一区| 中文字幕一区二区三区在线播放 | 日韩欧美在线影院| 亚洲精选免费视频| 久久综合久久综合久久| 日韩欧美区一区二| 日本欧美一区二区三区乱码| 欧美天堂亚洲电影院在线播放| 成人18视频日本| 三级久久三级久久久| 国产成人免费在线| 国产视频不卡一区| 免费观看91视频大全| 热久久一区二区| 欧美精品久久99久久在免费线| 国产精品久久久久久久久免费樱桃| 美女高潮久久久| 在线亚洲欧美专区二区| 久久精品在线观看| 福利一区二区在线观看| 精品卡一卡二卡三卡四在线| 蜜桃久久久久久| 欧美xingq一区二区| 久久99精品久久久久婷婷| 欧美精品tushy高清| 欧美一区二区国产| 九九精品视频在线看| 欧美男生操女生| 国产清纯白嫩初高生在线观看91| 国产成人一级电影| 中文字幕一区二区三| av色综合久久天堂av综合| 亚洲美女免费视频| 国产呦精品一区二区三区网站| 欧美视频在线一区| 国产情人综合久久777777| 天天色 色综合| 欧美日韩免费一区二区三区视频 | 国产精品久久久久久久久快鸭 | 麻豆成人综合网| 欧美白人最猛性xxxxx69交| 美女国产一区二区| 国产精品毛片久久久久久| 欧美另类变人与禽xxxxx| 亚洲国产美国国产综合一区二区| 欧美日韩激情一区二区三区| 国产精品香蕉一区二区三区| 欧美巨大另类极品videosbest| 一区二区三区四区不卡视频| 日韩精品中午字幕| 国产精品白丝jk黑袜喷水| 亚洲图片欧美激情| 在线成人免费观看| 国内精品国产成人国产三级粉色| 久久精品国产亚洲高清剧情介绍 | 欧美日韩免费在线视频| 美女视频黄免费的久久| 国产欧美一区在线| 国产亚洲综合av| 在线欧美小视频| 美女国产一区二区三区| 亚洲色图在线播放| 日韩三级在线免费观看| 欧美伊人久久大香线蕉综合69| 国产一区二区中文字幕| 亚洲人成网站在线| 久久久久久亚洲综合影院红桃| 蜜桃视频一区二区三区 | 99r精品视频| 精品一区二区三区影院在线午夜| 蜜桃传媒麻豆第一区在线观看| 日韩欧美二区三区| 94色蜜桃网一区二区三区| 成人综合婷婷国产精品久久蜜臀| 视频在线在亚洲| 亚洲精品国产视频| 国产精品亲子伦对白| 久久男人中文字幕资源站| 久久久精品欧美丰满| 欧美另类久久久品| 欧美日免费三级在线| 欧美妇女性影城| 成人做爰69片免费看网站| 久久99精品国产麻豆不卡| 日日夜夜精品视频天天综合网| 亚洲国产欧美在线| 一级精品视频在线观看宜春院| 亚洲日穴在线视频| 欧美国产禁国产网站cc| 精品日韩99亚洲| 中文字幕综合网| 国产精品久久久久久久久晋中 | 日本一区二区久久| 欧美精品日韩综合在线| 欧美在线观看你懂的| 99久久99久久综合| 国产成人av一区| 国产一区二区三区在线观看精品| 51精品秘密在线观看| 精品国产一区二区在线观看| 国产白丝精品91爽爽久久| 激情偷乱视频一区二区三区| 麻豆成人91精品二区三区| 男人的天堂久久精品| 石原莉奈在线亚洲三区| 日韩在线卡一卡二| 五月天久久比比资源色| 一区二区三区 在线观看视频| 亚洲成av人片一区二区三区| 日韩精品乱码免费| 日韩一卡二卡三卡| 国产人伦精品一区二区| 国产精品不卡在线| 日韩精品一级中文字幕精品视频免费观看 | 成人激情校园春色| 成人激情午夜影院| av影院午夜一区| 欧美日韩一区二区三区视频| 这里只有精品视频在线观看| 国产欧美va欧美不卡在线| 久久久精品天堂| 亚洲少妇中出一区| 五月婷婷综合激情| 美女任你摸久久 | 亚洲国产精品久久人人爱| 亚洲国产综合91精品麻豆| 免费成人小视频| 黄页网站大全一区二区| 成人性生交大合| 精品视频一区二区三区免费| 日韩写真欧美这视频| 精品国产凹凸成av人网站| 国产精品久久久一本精品 | 国产麻豆成人精品| 极品尤物av久久免费看| 成人综合在线网站| 久久亚洲精品国产精品紫薇| 亚洲国产成人在线| 午夜久久电影网| 久久99久久久欧美国产| 久久精品国产99国产精品| 成人av资源站| 欧美一级日韩一级| 亚洲欧洲av在线| 麻豆专区一区二区三区四区五区| 白白色 亚洲乱淫| 国产欧美1区2区3区| 午夜不卡av免费|