Checking domain status
The following code sample outputs the status of all domains managed by Adaxes.
- PowerShell
-
[Reflection.Assembly]::LoadWithPartialName("Softerra.Adaxes.Adsi") # Connect to the Adaxes service $ns = New-Object("Softerra.Adaxes.Adsi.AdmNamespace") $service = $ns.GetServiceDirectly("localhost") # Get list of managed domains $managedDomains = $service.GetManagedDomains() foreach ($domain in $managedDomains) { # Name Write-Host "Domain name: " $domain.Name # Status Write-Host "Domain status: " -NoNewline Switch ($domain.Status) { "ADM_MANAGEDDOMAINSTATUS_INACTIVE" { Write-Host "The domain is not operational because it is initializing or an internal error occurred." } "ADM_MANAGEDDOMAINSTATUS_UNREGISTERED" { Write-host "The domain is not accessible to the Adaxes service as administrative credentials are not provided." } "ADM_MANAGEDDOMAINSTATUS_OPERATING" { Write-Host "The domain is fully operational and accessible to the Adaxes service." } } Write-Host }
- C#
-
using System; using Softerra.Adaxes.Adsi; using Softerra.Adaxes.Interop.Adsi.PersistentObjects; class Program { static void Main(string[] args) { // Connect to the Adaxes service AdmNamespace ns = new AdmNamespace(); IAdmService service = ns.GetServiceDirectly("localhost"); // Get list of managed domains IADsCollection managedDomains = service.GetManagedDomains(); foreach (IAdmManagedDomainInfo domain in managedDomains) { // Name Console.WriteLine("Domain name: {0}", domain.Name); // Status Console.Write("Domain status: "); switch (domain.Status) { case ADM_MANAGEDDOMAINSTATUS_ENUM.ADM_MANAGEDDOMAINSTATUS_INACTIVE: Console.WriteLine("The domain is not operational because it is " + "initializing or an internal error occurred."); break; case ADM_MANAGEDDOMAINSTATUS_ENUM.ADM_MANAGEDDOMAINSTATUS_UNREGISTERED: Console.WriteLine("The domain is not accessible to the Adaxes service " + "as appropriate credentials are not provided."); break; case ADM_MANAGEDDOMAINSTATUS_ENUM.ADM_MANAGEDDOMAINSTATUS_OPERATING: Console.WriteLine("The domain is fully operational and " + "accessible to the Adaxes service."); break; } Console.WriteLine(); } } }
See also
- Writing ADSI scripts
- Server-side scripting
- IAdmTop
- IAdmManagedDomain
- IAdmManagedDomainInfo
- Online script repository