org.apache.commons.io.monitor.FileAlterationListenerAdaptor#org.apache.wicket.request.resource.AbstractResource源码实例Demo

下面列出了org.apache.commons.io.monitor.FileAlterationListenerAdaptor#org.apache.wicket.request.resource.AbstractResource 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

@SuppressWarnings("unchecked")
public void load() {
    pages = new ArrayList<>();
    previewers = new ArrayList<>();
    extPages = new ArrayList<>();
    ssoLoginFormPanels = new ArrayList<>();
    resources = new ArrayList<>();

    ClassPathScanningCandidateComponentProvider scanner = new ClassPathScanningCandidateComponentProvider(false);
    scanner.addIncludeFilter(new AssignableTypeFilter(AbstractResource.class));
    scanner.addIncludeFilter(new AssignableTypeFilter(BaseExtPage.class));
    scanner.addIncludeFilter(new AssignableTypeFilter(BaseSSOLoginFormPanel.class));
    scanner.addIncludeFilter(new AssignableTypeFilter(AbstractBinaryPreviewer.class));
    scanner.addIncludeFilter(new AssignableTypeFilter(BaseEnduserWebPage.class));

    for (BeanDefinition bd : scanner.findCandidateComponents(getBasePackage())) {
        try {
            Class<?> clazz = ClassUtils.resolveClassName(Objects.requireNonNull(bd.getBeanClassName()),
                ClassUtils.getDefaultClassLoader());
            boolean isAbstractClazz = Modifier.isAbstract(clazz.getModifiers());
            if (!isAbstractClazz) {
                if (BaseExtPage.class.isAssignableFrom(clazz)) {
                    if (clazz.isAnnotationPresent(ExtPage.class)) {
                        extPages.add((Class<? extends BaseExtPage>) clazz);
                    } else {
                        LOG.error("Could not find annotation {} in {}, ignoring",
                                ExtPage.class.getName(), clazz.getName());
                    }
                } else if (AbstractResource.class.isAssignableFrom(clazz)) {
                    if (clazz.isAnnotationPresent(Resource.class)) {
                        resources.add((Class<? extends AbstractResource>) clazz);
                    } else {
                        LOG.error("Could not find annotation {} in {}, ignoring",
                                Resource.class.getName(), clazz.getName());
                    }
                } else if (AbstractBinaryPreviewer.class.isAssignableFrom(clazz)) {
                    previewers.add((Class<? extends AbstractBinaryPreviewer>) clazz);
                } else if (BaseSSOLoginFormPanel.class.isAssignableFrom(clazz)) {
                    ssoLoginFormPanels.add((Class<? extends BaseSSOLoginFormPanel>) clazz);
                } else if (BaseEnduserWebPage.class.isAssignableFrom(clazz)) {
                    pages.add((Class<? extends BaseEnduserWebPage>) clazz);
                }
            }
        } catch (Throwable t) {
            LOG.warn("Could not inspect class {}", bd.getBeanClassName(), t);
        }
    }
    resources = Collections.unmodifiableList(resources);

    ssoLoginFormPanels = Collections.unmodifiableList(ssoLoginFormPanels);

    pages = Collections.unmodifiableList(pages);

    LOG.debug("Binary previewers found: {}", previewers);
    LOG.debug("Extension pages found: {}", extPages);
    LOG.debug("SSO Login pages found: {}", ssoLoginFormPanels);
    LOG.debug("Wicket Resources found: {}", resources);
}
 
public List<Class<? extends AbstractResource>> getResources() {
    return resources;
}
 
public List<Class<? extends AbstractResource>> getResources() {
    return resources;
}