当前位置: 首页>>代码示例>>Java>>正文


Java RemoteProxy类代码示例

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


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

示例1: postProcessBeanFactory

import org.directwebremoting.annotations.RemoteProxy; //导入依赖的package包/类
@SuppressWarnings("unchecked")
public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException
{
    BeanDefinitionRegistry beanDefinitionRegistry = (BeanDefinitionRegistry) beanFactory;
    for (String beanName : beanDefinitionRegistry.getBeanDefinitionNames())
    {
        BeanDefinition springConfigurator = ConfigurationParser.registerConfigurationIfNecessary(beanDefinitionRegistry);
        BeanDefinitionHolder beanDefinitionHolder = new BeanDefinitionHolder(beanDefinitionRegistry.getBeanDefinition(beanName), beanName);
        Class<?> beanDefinitionClass = getBeanDefinitionClass(beanDefinitionHolder, beanDefinitionRegistry);
        if (beanDefinitionClass != null)
        {
            RemoteProxy remoteProxy = beanDefinitionClass.getAnnotation(RemoteProxy.class);
            if (remoteProxy != null)
            {
                String javascript = remoteProxy.name();
                if (!StringUtils.hasText(javascript))
                {
                    javascript = beanDefinitionClass.getSimpleName();
                }
                if (log.isInfoEnabled())
                {
                    log.info("Detected candidate bean [" + beanName + "]. Remoting using " + javascript);
                }
                registerCreator(beanDefinitionHolder, beanDefinitionRegistry, beanDefinitionClass, javascript);
            }
            GlobalFilter globalFilter = beanDefinitionClass.getAnnotation(GlobalFilter.class);
            if (globalFilter != null)
            {
                if (log.isInfoEnabled())
                {
                    log.info("Detected global filter [" + beanDefinitionClass + "].");
                }
                ManagedList filters = (ManagedList) springConfigurator.getPropertyValues().getPropertyValue("filters").getValue();
                Param[] params = globalFilter.params();
                if (params != null)
                {
                    for (Param param : params)
                    {
                        beanDefinitionHolder.getBeanDefinition().getPropertyValues().addPropertyValue(param.name(), param.value());
                    }
                }
                filters.add(new RuntimeBeanReference(beanName));
            }
        }
    }
}
 
开发者ID:directwebremoting,项目名称:dwr,代码行数:47,代码来源:DwrAnnotationPostProcessor.java

示例2: parse

import org.directwebremoting.annotations.RemoteProxy; //导入依赖的package包/类
public BeanDefinition parse(Element element, ParserContext parserContext)
{
    ClassPathBeanDefinitionScanner scanner = new DwrClassPathBeanDefinitionScanner(parserContext.getRegistry());
    String basePackage = element.getAttribute("base-package");
    // Override - By default Spring uses a name generator that uses AnnotationBeanNameGenerator which uses the name specified on the Component
    // annotation and if not present uses the simple name.  Since our annotation-scanner doesn't scan @Component if two classes with the
    // same simple name exist in different packages there will be issues.  See https://directwebremoting.atlassian.net/browse/DWR-651.
    scanner.setBeanNameGenerator(new DefaultBeanNameGenerator());
    if (!hasText(basePackage))
    {
        if (log.isInfoEnabled())
        {
            log.info("No base package defined for classpath scanning. Traversing the whole JVM classpath");
        }
    }
    String regex = element.getAttribute("regex");
    if (hasText(regex))
    {
        scanner.addIncludeFilter(new RegexPatternTypeFilter(Pattern.compile(regex)));
    }
    String proxies = element.getAttribute("scanRemoteProxy");
    if (hasText(proxies) && ("TRUE".equals(proxies.toUpperCase()) || "FALSE".equals(proxies.toUpperCase())))
    {
        scanProxies = Boolean.parseBoolean(proxies);
    }
    if (scanProxies)
    {
        scanner.addIncludeFilter(new AnnotationTypeFilter(RemoteProxy.class));
    }
    String conv = element.getAttribute("scanDataTransferObject");
    if (hasText(conv) && ("TRUE".equals(conv.toUpperCase()) || "FALSE".equals(conv.toUpperCase())))
    {
        scanConverters = Boolean.parseBoolean(conv);
    }
    if (scanConverters)
    {
        scanner.addIncludeFilter(new AnnotationTypeFilter(DataTransferObject.class));
    }
    String filters = element.getAttribute("scanGlobalFilter");
    if (hasText(filters) && ("TRUE".equals(filters.toUpperCase()) || "FALSE".equals(filters.toUpperCase())))
    {
        scanFilters = Boolean.parseBoolean(filters);
    }
    if (scanFilters)
    {
        scanner.addIncludeFilter(new AnnotationTypeFilter(GlobalFilter.class));
    }
    if (scanProxies | scanConverters | scanFilters)
    {
        scanner.scan(basePackage == null ? "" : basePackage);
    }
    else
    {
        log.warn("Scan is not required if all @RemoteProxy, @DataTransferObject and @GlobalFilter are disabled. Skipping detection");
    }
    return null;
}
 
开发者ID:directwebremoting,项目名称:dwr,代码行数:58,代码来源:AnnotationScannerParser.java


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