Feature #42: Active Directory Interop Upgrade

AD Interop moved to Disco.Services; Supports multi-domain environments,
sites, and searching restricted with OUs.
This commit is contained in:
Gary Sharp
2014-04-10 17:58:04 +10:00
parent b841c6b2c0
commit db73cc1a12
218 changed files with 6383 additions and 2535 deletions
@@ -0,0 +1,37 @@
using Disco.Data.Repository;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Disco.Data.Configuration.Modules
{
public class ActiveDirectoryConfiguration : ConfigurationBase
{
public ActiveDirectoryConfiguration(DiscoDataContext Database) : base(Database) { }
public override string Scope
{
get { return "ActiveDirectory"; }
}
public List<string> SearchContainers
{
get
{
return GetFromJson<List<string>>(null);
}
set
{
SetAsJson(value);
}
}
public bool? SearchEntireForest
{
get { return GetFromJson<bool?>(null); }
set { SetAsJson(value); }
}
}
}
@@ -21,6 +21,7 @@ namespace Disco.Data.Configuration
this.moduleDeviceProfilesConfiguration = new Lazy<Modules.DeviceProfilesConfiguration>(() => new Modules.DeviceProfilesConfiguration(Database));
this.moduleOrganisationAddressesConfiguration = new Lazy<Modules.OrganisationAddressesConfiguration>(() => new Modules.OrganisationAddressesConfiguration(Database));
this.moduleJobPreferencesConfiguration = new Lazy<Modules.JobPreferencesConfiguration>(() => new Modules.JobPreferencesConfiguration(Database));
this.moduleActiveDirectoryConfiguration = new Lazy<Modules.ActiveDirectoryConfiguration>(() => new Modules.ActiveDirectoryConfiguration(Database));
}
#region Configuration Modules
@@ -29,6 +30,7 @@ namespace Disco.Data.Configuration
private Lazy<Modules.DeviceProfilesConfiguration> moduleDeviceProfilesConfiguration;
private Lazy<Modules.OrganisationAddressesConfiguration> moduleOrganisationAddressesConfiguration;
private Lazy<Modules.JobPreferencesConfiguration> moduleJobPreferencesConfiguration;
private Lazy<Modules.ActiveDirectoryConfiguration> moduleActiveDirectoryConfiguration;
public Modules.BootstrapperConfiguration Bootstrapper
{
@@ -58,6 +60,13 @@ namespace Disco.Data.Configuration
return moduleJobPreferencesConfiguration.Value;
}
}
public Modules.ActiveDirectoryConfiguration ActiveDirectory
{
get
{
return moduleActiveDirectoryConfiguration.Value;
}
}
#endregion