RuntimeAddin[] GetDepAddins()
{
if (depAddins != null)
return depAddins;
ArrayList plugList = new ArrayList ();
string ns = ainfo.Description.Namespace;
// Collect dependent ids
foreach (Dependency dep in module.Dependencies) {
AddinDependency pdep = dep as AddinDependency;
if (pdep != null) {
RuntimeAddin adn = addinEngine.GetAddin (Addin.GetFullId (ns, pdep.AddinId, pdep.Version));
if (adn != null)
plugList.Add (adn);
else
addinEngine.ReportError ("Add-in dependency not loaded: " + pdep.FullAddinId, module.ParentAddinDescription.AddinId, null, false);
}
}
return depAddins = (RuntimeAddin[]) plugList.ToArray (typeof(RuntimeAddin));
}