This commit is contained in:
Virtuworks 2013-04-15 08:23:46 -04:00
commit 5dabcec25f
3 changed files with 53 additions and 25 deletions

View file

@ -70,8 +70,18 @@ namespace WebsitePanel.Providers.Web.HeliconZoo
{
Configuration appConfig = srvman.GetApplicationHostConfiguration();
ConfigurationSection heliconZooServer = appConfig.GetSection("system.webServer/heliconZooServer");
ConfigurationSection heliconZooServer;
try
{
heliconZooServer = appConfig.GetSection("system.webServer/heliconZooServer");
}
catch(Exception)
{
// heliconZooServer is not found
// looks like zoo is not installed
return result.ToArray();
}
ConfigurationElement engines = heliconZooServer.GetChildElement("engines");
ConfigurationElementCollection enginesCollection = engines.GetCollection();
@ -278,7 +288,18 @@ namespace WebsitePanel.Providers.Web.HeliconZoo
using (var srvman = new ServerManager())
{
Configuration appConfig = srvman.GetApplicationHostConfiguration();
ConfigurationSection zooServer = appConfig.GetSection("system.webServer/heliconZooServer", siteId);
ConfigurationSection zooServer;
try
{
zooServer = appConfig.GetSection("system.webServer/heliconZooServer", siteId);
}
catch(Exception)
{
// heliconZooServer is not found
// looks like zoo is not installed
return engines.ToArray();
}
ConfigurationElement switchboard = zooServer.GetChildElement("switchboard");
ConfigurationElementCollection switchboardCollection = switchboard.GetCollection();

View file

@ -1914,22 +1914,27 @@ namespace WebsitePanel.Providers.Web
private bool IsHeliconApeEnabled(ServerManager srvman, string siteId)
{
WebSite webSite = null;
webSite = webObjectsSvc.GetWebSiteFromIIS(srvman, siteId);
if (webSite == null)
throw new ApplicationException(
String.Format("Could not find a web site with the following identifier: {0}.", siteId));
// Fill ASP.NET settings
FillAspNetSettingsFromIISObject(srvman, webSite);
var aphl = new WebAppPoolHelper(ProviderSettings);
var currentPool = aphl.match_webapp_pool(webSite);
if (aphl.pipeline(currentPool.Mode) != SiteAppPoolMode.Integrated)
if (!string.IsNullOrEmpty(siteId))
{
// Ape is not working in not Integrated pipeline mode
return false;
// Check the web site app pool in integrated pipeline mode
WebSite webSite = null;
webSite = webObjectsSvc.GetWebSiteFromIIS(srvman, siteId);
if (webSite == null)
throw new ApplicationException(
String.Format("Could not find a web site with the following identifier: {0}.", siteId));
// Fill ASP.NET settings
FillAspNetSettingsFromIISObject(srvman, webSite);
var aphl = new WebAppPoolHelper(ProviderSettings);
var currentPool = aphl.match_webapp_pool(webSite);
if (aphl.pipeline(currentPool.Mode) != SiteAppPoolMode.Integrated)
{
// Ape is not working in not Integrated pipeline mode
return false;
}
}

View file

@ -85,16 +85,18 @@ span.ValidationMessageBlock {
</fieldset>
<asp:Panel runat="server" ID="EnginesPanel">
<fieldset>
<legend>
<span>Helicon Zoo engine quotas settings</span>
</legend>
<div class="FormBody">
<asp:CheckBox runat="server" ID="QuotasEnabled" Text="Enable Quotas"/>
</div>
<legend>
<span>Helicon Zoo engine quotas settings</span>
</legend>
<div class="FormBody">
<asp:CheckBox runat="server" ID="QuotasEnabled" Text="Enable Quotas"/>
</div>
</fieldset>
<asp:Panel runat="server" ID="EnginesPanel">
<fieldset>
<legend>
<span>Engines management</span>