/// <Summary>
/// The page is generated by the unique processor of the plug-in
/// </Summary>
/// <Param name = "catalogid"> ID of the topic for publishing </param>
/// <Param name = "pluginid"> plug-in ID of the column </param>
/// <Param name = "result"> Exception Propagation </param>
/// <Param name = "tmplttopublish"> template to be released </param>
Private void generatepagebypluginprocessor (INT catalogid, int pluginid, list <exception> result,
List <webtemplateincatalog> tmplttopublish)
{
Idbpluginmanager pluginmgr = pluginsuppfacfacade. getfacade (). getidbpluginmanager ();
String pluginename = pluginmgr. getpluginenamebypluginid (pluginid, true );
// Obtain the processor
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;
}
}
}