• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java JarScanType类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.apache.tomcat.JarScanType的典型用法代码示例。如果您正苦于以下问题:Java JarScanType类的具体用法?Java JarScanType怎么用?Java JarScanType使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



JarScanType类属于org.apache.tomcat包,在下文中一共展示了JarScanType类的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: scan

import org.apache.tomcat.JarScanType; //导入依赖的package包/类
@Override
public void scan(final JarScanType scanType, final ServletContext context, final JarScannerCallback callback) {
    super.scan(scanType, context, callback);
    if (!embeddedSurefireScanning(scanType, context, callback) && isScanClassPath() && !URLClassLoader.class.isInstance(getSystemClassLoader())
            && !Boolean.getBoolean("tomee.classpath.scanning.disabled")) {
        // TODO: check on tomcat upgrade if it is fixed
        final String cp = System.getProperty("java.class.path");
        final Collection<URL> urls = new HashSet<>();
        for (final String jar : cp.split(File.pathSeparator)) {
            try {
                urls.add(new File(jar).toURI().toURL());
            } catch (MalformedURLException e) {
                // no-op
            }
        }
        doScan(scanType, callback, new LinkedList<>(urls));
    }
}
 
开发者ID:apache,项目名称:tomee,代码行数:19,代码来源:TomEEJarScanner.java


示例2: doScan

import org.apache.tomcat.JarScanType; //导入依赖的package包/类
private void doScan(final JarScanType scanType, final JarScannerCallback callback, final Deque<URL> urls) {
    Method process = null;
    final boolean scanAllDirectories = isScanAllDirectories();
    for (final URL url : urls) {
        final File cpe = URLs.toFile(url);
        if ((cpe.getName().endsWith(".jar") ||
                scanType == JarScanType.PLUGGABILITY ||
                scanAllDirectories) &&
                getJarScanFilter().check(scanType, cpe.getName())) {
            try {
                if (process == null) {
                    process = StandardJarScanner.class.getDeclaredMethod("process",
                            JarScanType.class, JarScannerCallback.class, URL.class, String.class, boolean.class, Deque.class);
                    if (!process.isAccessible()) {
                        process.setAccessible(true);
                    }
                }
                process.invoke(this, scanType, callback, url, null, true, urls);
            } catch (final Exception ioe) {
                // no-op
            }
        }
    }
}
 
开发者ID:apache,项目名称:tomee,代码行数:25,代码来源:TomEEJarScanner.java


示例3: scanJars

import org.apache.tomcat.JarScanType; //导入依赖的package包/类
/**
 * Scan for TLDs in JARs in /WEB-INF/lib.
 */
public void scanJars() {
    JarScanner scanner = JarScannerFactory.getJarScanner(context);
    TldScannerCallback callback = new TldScannerCallback();
    scanner.scan(JarScanType.TLD, context, callback);
    if (callback.scanFoundNoTLDs()) {
        log.info(Localizer.getMessage("jsp.tldCache.noTldSummary"));
    }
}
 
开发者ID:nkasvosve,项目名称:beyondj,代码行数:12,代码来源:TldScanner.java


示例4: scanForFragments

import org.apache.tomcat.JarScanType; //导入依赖的package包/类
private Map<String, WebXml> scanForFragments(WebXmlParser webXmlParser) throws JasperException {
    StandardJarScanner scanner = new StandardJarScanner();
    // TODO - enabling this means initializing the classloader first in JspC
    scanner.setScanClassPath(false);
    // TODO - configure filter rules from Ant rather then system properties
    scanner.setJarScanFilter(new StandardJarScanFilter());

    FragmentJarScannerCallback callback =
            new FragmentJarScannerCallback(webXmlParser, false, true);
    scanner.scan(JarScanType.PLUGGABILITY, this, callback);
    if (!callback.isOk()) {
        throw new JasperException(Localizer.getMessage("jspc.error.invalidFragment"));
    }
    return callback.getFragments();
}
 
开发者ID:nkasvosve,项目名称:beyondj,代码行数:16,代码来源:JspCServletContext.java


示例5: embeddedSurefireScanning

import org.apache.tomcat.JarScanType; //导入依赖的package包/类
private boolean embeddedSurefireScanning(final JarScanType scanType, final ServletContext context, final JarScannerCallback callback) {
    if (isScanClassPath() && System.getProperty("surefire.real.class.path") != null) {
        try {
            final Set<URL> urls = ClassLoaders.findUrls(context.getClassLoader().getParent());
            doScan(scanType, callback, new LinkedList<>(urls));
            return true;
        } catch (final IOException e) {
            // no-op
        }
    }
    return false;
}
 
开发者ID:apache,项目名称:tomee,代码行数:13,代码来源:TomEEJarScanner.java


示例6: check

import org.apache.tomcat.JarScanType; //导入依赖的package包/类
@Override
public boolean check(final JarScanType jarScanType, final String jarName) {
    if (jarScanType == JarScanType.TLD) {
        if (INCLUDE.accept(jarName)) {
            return true;
        }
        if (jarName.startsWith("tomcat-websocket") || jarName.startsWith("myfaces-impl") /* see org.apache.tomee.jasper.TomEETldScanner.scanPlatform */) {
            return false;
        }
    }
    if (jarName.startsWith("johnzon-") || jarName.startsWith("xx-arquillian-tomee-")) {
        return false; // but we scan it in openejb scanning
    }
    return !NewLoaderLogic.skip(jarName) && (delegate == null || delegate.check(jarScanType, jarName));
}
 
开发者ID:apache,项目名称:tomee,代码行数:16,代码来源:TomEEJarScanner.java


示例7: check

import org.apache.tomcat.JarScanType; //导入依赖的package包/类
@Override
public boolean check(JarScanType jarScanType, String jarName) {
    Lock readLock = configurationLock.readLock();
    readLock.lock();
    try {
        final boolean defaultScan;
        final Set<String> toSkip;
        final Set<String> toScan;
        switch (jarScanType) {
            case TLD: {
                defaultScan = defaultTldScan;
                toSkip = tldSkipSet;
                toScan = tldScanSet;
                break;
            }
            case PLUGGABILITY: {
                defaultScan = defaultPluggabilityScan;
                toSkip = pluggabilitySkipSet;
                toScan = pluggabilityScanSet;
                break;
            }
            case OTHER:
            default: {
                defaultScan = true;
                toSkip = defaultSkipSet;
                toScan = defaultScanSet;
            }
        }
        if (defaultScan) {
            if (Matcher.matchName(toSkip, jarName)) {
                if (Matcher.matchName(toScan, jarName)) {
                    return true;
                } else {
                    return false;
                }
            }
            return true;
        } else {
            if (Matcher.matchName(toScan, jarName)) {
                if (Matcher.matchName(toSkip, jarName)) {
                    return false;
                } else {
                    return true;
                }
            }
            return false;
        }
    } finally {
        readLock.unlock();
    }
}
 
开发者ID:nkasvosve,项目名称:beyondj,代码行数:52,代码来源:StandardJarScanFilter.java


示例8: scan

import org.apache.tomcat.JarScanType; //导入依赖的package包/类
@Override
public void scan(JarScanType scanType, ServletContext context, JarScannerCallback callback) {
}
 
开发者ID:RapturePlatform,项目名称:Rapture,代码行数:4,代码来源:RaptureWebServer.java


示例9: init

import org.apache.tomcat.JarScanType; //导入依赖的package包/类
@BeforeClass
public static void init() throws LifecycleException, ServletException {
    SLF4JBridgeHandler.removeHandlersForRootLogger();
    SLF4JBridgeHandler.install();

    tomcat = new Tomcat();
    tomcat.setPort(8080);
    tomcat.setBaseDir(".");
    Context ctx = tomcat.addWebapp("", "src/test");
    ctx.setJarScanner(new JarScanner() {
        @Override
        public void scan(JarScanType jarScanType, ServletContext servletContext, JarScannerCallback jarScannerCallback) {
        }

        @Override
        public JarScanFilter getJarScanFilter() {
            return null;
        }

        @Override
        public void setJarScanFilter(JarScanFilter jarScanFilter) {
        }
    });
    ((Host) ctx.getParent()).setAppBase("");

    final Wrapper multiRaml = ctx.createWrapper();
    multiRaml.setServletClass(RamlDocServlet.class.getName());
    multiRaml.setName("app");
    multiRaml.addInitParameter("ramlLocations", "classpath://data/basic.raml,classpath://data/second.raml,classpath://data/markdown.raml");
    multiRaml.addInitParameter("features", "online,tryout,download,docson");
    multiRaml.addInitParameter("baseUriParameters", "host=$host/$path,path=mirror");
    multiRaml.addInitParameter("customization", "classpath://");
    ctx.addChild(multiRaml);
    ctx.addServletMapping("/api/*", "app");

    final Wrapper singleRaml = ctx.createWrapper();
    singleRaml.setServletClass(RamlDocServlet.class.getName());
    singleRaml.setName("sapp");
    singleRaml.addInitParameter("ramlLocations", "classpath://data/basic.raml");
    singleRaml.addInitParameter("features", "online");
    singleRaml.addInitParameter("baseUriParameters", "host=$host/$path,path=mirror");
    ctx.addChild(singleRaml);
    ctx.addServletMapping("/sapi/*", "sapp");

    Tomcat.addServlet(ctx, "mirror", new MirrorServlet());
    ctx.addServletMapping("/mirror/v1/*", "mirror");

    tomcat.start();
    Server server = tomcat.getServer();
    server.start();
}
 
开发者ID:nidi3,项目名称:raml-doc,代码行数:52,代码来源:ServletTest.java


示例10: scan

import org.apache.tomcat.JarScanType; //导入依赖的package包/类
@Override
public void scan(final JarScanType scanType, final ServletContext context,
                 final JarScannerCallback callback) {
    // no-op
}
 
开发者ID:apache,项目名称:tomee,代码行数:6,代码来源:EmptyScanner.java



注:本文中的org.apache.tomcat.JarScanType类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java ReadOnlyException类代码示例发布时间:2022-05-22
下一篇:
Java UserGroupCallback类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap