From 6726fc2ff7e88ae1923f92397b7924638f2808c9 Mon Sep 17 00:00:00 2001 From: ruslan Date: Thu, 15 Mar 2012 13:26:47 +0200 Subject: [PATCH] Helicon Ape module & handler types fixed --- .../WebsitePanel.Providers.Web.IIS70/IIs70.cs | 27 ++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIS70/IIs70.cs b/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIS70/IIs70.cs index ef99e23f..445074c5 100644 --- a/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIS70/IIs70.cs +++ b/WebsitePanel/Sources/WebsitePanel.Providers.Web.IIS70/IIs70.cs @@ -1959,12 +1959,12 @@ namespace WebsitePanel.Providers.Web if (version.Equals(HELICON_APE_NOT_REGISTERED)) { // Ape installed for site - return "Helicon.Ape.Module"; + return "Helicon.Ape.ApeModule"; } else { // Ape installed globally in GAC - // return fiil type with version + // return full type with version return string.Format( "Helicon.Ape.ApeModule, Helicon.Ape, Version={0}, Culture=neutral, PublicKeyToken=95bfbfd1a38437eb", @@ -1972,6 +1972,27 @@ namespace WebsitePanel.Providers.Web } } + private string GetHeliconApeHandlerType(string siteId) + { + string installDir = GetHeliconApeInstallDir(siteId); + string version = GetHeliconApeVersion(siteId, installDir); + + if (version.Equals(HELICON_APE_NOT_REGISTERED)) + { + // Ape installed for site + return "Helicon.Ape.Handler"; + } + else + { + // Ape installed globally in GAC + // return full type with version + return + string.Format( + "Helicon.Ape.Handler, Helicon.Ape, Version={0}, Culture=neutral, PublicKeyToken=95bfbfd1a38437eb", + version); + } + } + private string FindregistrationInfo(string path) { System.Text.RegularExpressions.Regex reRegistrationName = new System.Text.RegularExpressions.Regex("^\\s*RegistrationName\\s*=\\s*([^#=]+)\\s*(?:#.*)?", System.Text.RegularExpressions.RegexOptions.IgnoreCase | System.Text.RegularExpressions.RegexOptions.CultureInvariant | System.Text.RegularExpressions.RegexOptions.Compiled); @@ -2158,7 +2179,7 @@ namespace WebsitePanel.Providers.Web ConfigurationElementCollection handlersCollection = handlersSection.GetCollection(); ConfigurationElement handlerAdd = handlersCollection.CreateElement("add"); handlerAdd["name"] = Constants.HeliconApeModule; - handlerAdd["type"] = GetHeliconApeModuleType(siteId); + handlerAdd["type"] = GetHeliconApeHandlerType(siteId); handlerAdd["path"] = Constants.HeliconApeHandlerPath; handlerAdd["verb"] = "*"; handlerAdd["resourceType"] = "Unspecified";