zoukankan      html  css  js  c++  java
  • 由插件独特的处理器产生页面

    /// <summary>
            
    /// 由插件独特的处理器产生页面
            
    /// </summary>
            
    /// <param name="catalogId">做发布动作的栏目ID</param>
            
    /// <param name="pluginId">栏目上的插件ID</param>
            
    /// <param name="result">异常散播</param>
            
    /// <param name="tmpltToPublish">要发布的模板</param>
            private void GeneratePageByPluginProcessor(int catalogId, int pluginId, List<Exception> result,
                                                       List
    <WebTemplateInCatalog> tmpltToPublish)
            {
                IDBPluginManager pluginMgr 
    = PluginSupportFacade.GetFacade().GetIDBPluginManager();
                
    string pluginEname = pluginMgr.GetPluginEnameByPluginId(pluginId, true);
                
    //取得处理器
                IExtensionRegistry registry = Platform.GetExtensionRegistry();
                IExtensionPoint point 
    = registry.getExtensionPoint("AppCatalogSupport.AppCatalogTemplatePagesGenerator");
                IExtension[] exts 
    = point.getExtensions();
                
    foreach (IExtension e in exts)
                {
                    
    if (e.Namespace == pluginEname)
                    {
                        IConfigurationElement[] impClassElem 
    = e.ConfigurationElements[0].getChildren("implement");
                        
    if (impClassElem != null && impClassElem.Length > 0)
                        {
                            IAppCatalogTemplatePagesGenerator processor 
    =
                                (IAppCatalogTemplatePagesGenerator) impClassElem[
    0].CreateExecutableExtension("class");
                            Exception processEx;
                            
    if (! processor.GeneratePagesFromNonMPTemplate(catalogId, tmpltToPublish, out processEx))
                            {
                                result.Add(processEx);                            
                            }                        
                        }
                        
    break;
                    }
                }
            }

  • 相关阅读:
    伪造mysql服务端实现任意读取
    客户端session安全问题(flask)
    systemd教程
    MySQL的一些常用基本命令的使用说明
    AMD、CMD、CommonJs和ES6的区别
    for in与for of的区别,以及forEach,map,some,every,filter的区别
    EcmaScript 6 十大常用特性
    单行省略号与多行省略号
    Array.prototype.slice.call()详解及转换数组的方法
    返回顶部
  • 原文地址:https://www.cnblogs.com/xiaotaoliang/p/583531.html
Copyright © 2011-2022 走看看