PageRenderTime 41ms CodeModel.GetById 17ms RepoModel.GetById 0ms app.codeStats 0ms

/trunk/Server/PHPProvider.cs

#
C# | 51 lines | 35 code | 8 blank | 8 comment | 2 complexity | 2d1c95a2bd7d8b90719b535708ccc93e MD5 | raw file
Possible License(s): CC-BY-SA-3.0
  1. //-----------------------------------------------------------------------
  2. // <copyright>
  3. // Copyright (C) Ruslan Yakushev for the PHP Manager for IIS project.
  4. //
  5. // This file is subject to the terms and conditions of the Microsoft Public License (MS-PL).
  6. // See http://www.microsoft.com/opensource/licenses.mspx#Ms-PL for more details.
  7. // </copyright>
  8. //-----------------------------------------------------------------------
  9. using System;
  10. using System.Reflection;
  11. using Microsoft.Web.Management.Server;
  12. namespace Web.Management.PHP
  13. {
  14. internal sealed class PHPProvider : ModuleProvider
  15. {
  16. public override string FriendlyName
  17. {
  18. get
  19. {
  20. return Resources.PHPManagerFriendlyName;
  21. }
  22. }
  23. public override Type ServiceType
  24. {
  25. get {
  26. return typeof(PHPService);
  27. }
  28. }
  29. public override ModuleDefinition GetModuleDefinition(IManagementContext context)
  30. {
  31. var assembly = Assembly.GetExecutingAssembly();
  32. var assemblyName = assembly.GetName();
  33. var assemblyFullName = assemblyName.FullName;
  34. var clientAssemblyFullName = assemblyFullName.Replace(assemblyName.Name, "Web.Management.PHP.Client");
  35. return new ModuleDefinition(Name, "Web.Management.PHP.PHPModule, " + clientAssemblyFullName);
  36. }
  37. public override bool SupportsScope(ManagementScope scope)
  38. {
  39. return (scope == ManagementScope.Site) ||
  40. (scope == ManagementScope.Server);
  41. }
  42. }
  43. }