/// <summary> /// Return the installation status, this is based on all hive providers /// </summary> /// <returns></returns> public IEnumerable <InstallStatus> GetInstallStatus() { //TODO: Use this cache mechanism! But in order to do so , we need triggers working from Hive providers, currently they are not setup //return _installStatuses ?? (_installStatuses = Hive.GetAllReadWriteProviders() // .Select(x => x.ProviderContext.Bootstrapper.GetInstallStatus()) // .ToArray()); var allReadWriteProviders = Hive.GetAllReadWriteProviders(); var allBootstrappers = allReadWriteProviders.Select(x => new { Key = x.ProviderMetadata.Alias, x.Bootstrapper }). ToArray(); var installStatuses = allBootstrappers .Select(x => x.Bootstrapper.GetInstallStatus()) .ToArray(); return(installStatuses); }