Stellt den schreibgeschützten Zugriff auf Eigenschaften und
Methoden eines Verzeichnisdienstes bereit.
Namensraum: IFS.Taurus.DirectoryService.InterfaceAssembly: IFS.Taurus.DirectoryService.Interface (in IFS.Taurus.DirectoryService.Interface.dll) Version: 1.2.0.1 (1.2.0.1)
Syntax
C# |
---|
public interface IDirectoryService |
Beispiele
Im folgenden Quelltextbeispiel wird die Verwendung von Methoden der
IDirectoryService-Schnittstelle zum Zugriff auf Methoden des
Taurus® Verzeichnisdienstes durch den PythiaProvider veranschaulicht.
C# | Kopieren |
---|---|
class Sample { static void Main(string[] args) { // Datenanbieter für Taurus® Verzeichnisdienst ermitteln (PythiaProvider) string name = "TaurusDirectoryService"; IDirectoryService tds = GetDirectoryService(name); if (tds == null) { // Fehlerbehandlung return; } // Beschreibung eines Beispielprogramms erstellen string sampleServiceName = "SampleService"; IDirectoryServiceInformation dsi = CreateSampleServiceDescriptor(sampleServiceName); // Programm registrieren if (tds.Register(dsi) != ErrorCode.OK) { // Fehlerbehandlung return; } // Programm suchen IList<IDirectoryServiceInformation> resultServiceList; if (tds.Find(sampleServiceName, out resultServiceList) != ErrorCode.OK) { // Fehlerbehandlung return; } // Prgramm deregistrieren if(tds.Deregister(dsi) != ErrorCode.OK) { // Fehlerbehandlung return; } } private static IDirectoryService GetDirectoryService(string name) { IDirectoryService resultService = null; // Objekt für den Zugriff auf das Taurus® DataProcurement erzeugen ITaurusPlatform tp = null; TaurusPlatformFactory.Create(out tp); if (tp == null) { // Fehlerbehandlung return null; } // Liste mit Datenanbieter für Verzeichnisdienste ermitteln IList<IDirectoryService> dsList; ErrorCode err = tp.GetDirectoryServiceList(out dsList); if ((err != ErrorCode.OK) || (dsList == null)) { // Fehlerbehandlung return null; } // Datenanbieter anhand des Namens bestimmen foreach (IDirectoryService ds in dsList) { if (ds.Name == name) { resultService = ds; break; } } return resultService; } private static IDirectoryServiceInformation CreateSampleServiceDescriptor(string sampleServiceName) { DirectoryServiceInformationDO dsido = new DirectoryServiceInformationDO(); dsido.ServiceName = sampleServiceName; dsido.Protocol = "http"; dsido.Format = "webservice"; dsido.Uri = "http://172.16.4.18:5555/SampleService"; dsido.Location = DirectoryServiceLocation.Remote; dsido.Performance = 0; dsido.Attributes = new DirectoryServiceAttributesDO(); dsido.Attributes.Add("Version", "1.1.0.0"); dsido.Attributes.Add("Host", "ALBION"); dsido.Attributes.Add("IP", "172.16.4.18"); dsido.Attributes.Add("PID", "4432"); return dsido; } } |