diff --git a/src/Orchard.Web/Modules/Orchard.MultiTenancy/Commands/TenantCommand.cs b/src/Orchard.Web/Modules/Orchard.MultiTenancy/Commands/TenantCommand.cs index 8c68351ee..bddfdb722 100644 --- a/src/Orchard.Web/Modules/Orchard.MultiTenancy/Commands/TenantCommand.cs +++ b/src/Orchard.Web/Modules/Orchard.MultiTenancy/Commands/TenantCommand.cs @@ -1,4 +1,5 @@ -using Orchard.Commands; +using System.Linq; +using Orchard.Commands; using Orchard.Environment.Configuration; using Orchard.MultiTenancy.Services; @@ -10,6 +11,15 @@ namespace Orchard.MultiTenancy.Commands { _tenantService = tenantService; } + [OrchardSwitch] + public string Host { get; set; } + + [OrchardSwitch] + public string UrlPrefix { get; set; } + + [OrchardSwitch] + public string ConnectionString { get; set; } + [CommandHelp("tenant list: Display current tenants of a site")] [CommandName("tenant list")] public void List() { @@ -18,7 +28,6 @@ namespace Orchard.MultiTenancy.Commands { var tenants = _tenantService.GetTenants(); foreach (var tenant in tenants) { - Context.Output.WriteLine(T("---------------------------")); Context.Output.WriteLine(T("Name: ") + tenant.Name); Context.Output.WriteLine(T("Provider: ") + tenant.DataProvider); Context.Output.WriteLine(T("ConnectionString: ") + tenant.DataConnectionString); @@ -27,17 +36,37 @@ namespace Orchard.MultiTenancy.Commands { } } - [CommandHelp("tenant add : create new tenant named on the site")] + [CommandHelp("tenant add /ConnectionString: /Host: /UrlPrefix:" + + ": create new tenant named on the site")] [CommandName("tenant add")] - public void Create(string tenantName, string providerName, string connectionString, string prefix) { + public void Create(string tenantName, string providerName, string prefix) { Context.Output.WriteLine(T("Creating tenant")); _tenantService.CreateTenant( new ShellSettings { Name = tenantName, DataProvider = providerName, - DataConnectionString = connectionString, + DataConnectionString = ConnectionString, DataPrefix = prefix }); } + + [CommandHelp("tenant info : Display settings for a tenant")] + [CommandName("tenant info")] + public void Info(string tenantName) { + ShellSettings tenant = _tenantService.GetTenants().Where(x => x.Name == tenantName).FirstOrDefault(); + + if (tenant == null) { + Context.Output.Write(T("Tenant: ") + tenantName + T(" was not found")); + } + else { + Context.Output.WriteLine(T("Tenant Settings:")); + Context.Output.WriteLine(T("---------------------------")); + Context.Output.WriteLine(T("Name: ") + tenant.Name); + Context.Output.WriteLine(T("Provider: ") + tenant.DataProvider); + Context.Output.WriteLine(T("ConnectionString: ") + tenant.DataConnectionString); + Context.Output.WriteLine(T("Prefix: ") + tenant.DataPrefix); + Context.Output.WriteLine(T("---------------------------")); + } + } } }