# Zend_Ldap_Node_RootDse

Die folgenden Methoden sind in allen Hersteller-Spezifischen Unterklassen vorhanden.

`Zend_Ldap_Node_RootDse` enthält die magischen Zugriffsmethoden `__get()` und `__isset()` um auf die Attribute durch Ihren Namen zugreifen zu können. Sie verweisen auf `Zend_Ldap_Node_RootDse::getAttribute()` und auf `Zend_Ldap_Node_RootDse::existsAttribute()`. `__set()` und `__get()` sind auch implementiert, werfen aber eine `BadMethodCallException` da Änderungen auf RootDSE Nodes nicht erlaubt sind. Weiters implementiert die Klasse `ArrayAccess` für Array-Artigen Zugriff auf die Attribute. `offsetSet()` und `offsetUnset()` werfen auch eine `BadMethodCallException` aus den bekannten Gründen.

## Zend_Ldap_Node_RootDse API

Methode | Beschreibung
--- | ---
`Zend_Ldap_Dn getDn()` | Gibt den DN des aktuellen Nodes als `Zend_Ldap_Dn` zurück.
`string getDnString(string $caseFold)` | Gibt den DN des aktuellen Nodes als String zurück.
`array getDnArray(string $caseFold)` | Gibt den DN des aktuellen Nodes als Array zurück.
`string getRdnString(string $caseFold)` | Gibt den RDN des aktuellen Nodes als String zurück.
`array getRdnArray(string $caseFold)` | Gibt den RDN des aktuellen Nodes als Array zurück.
`array getObjectClass()` | Gibt die objectClass des Nodes zurück.
`string toString()` | Gibt den DN des aktuellen Nodes zurück - verweist auf `Zend_Ldap_Dn::getDnString()`.
`string __toString()` | Castet auf eine String Darstellung - verweist auf `Zend_Ldap_Dn::toString()`.
`array toArray(boolean $includeSystemAttributes)` | Gibt eine Array Darstellung des aktuellen Nodes zurück. Wenn `$includeSystemAttributes` `FALSE` ist (der Standardwert ist `TRUE`) werden die System spezifischen Attribute vom Array entfernt. Anders als `Zend_Ldap_Node_RootDse::getAttributes()` enthält das produzierte Array den DN mit dem Schlüssel `'dn'`.
`string toJson(boolean $includeSystemAttributes)` | Gibt eine JSON Darstellung des aktuellen Nodes zurück indem `Zend_Ldap_Node_RootDse::toArray()` verwendet wird.
`array getData(boolean $includeSystemAttributes)` | Gibt die Attribute der Nodes zurück. Das Array enthält alle Attribute in Ihrem internen Format (keine Konvertierung).

`boolean existsAttribute(string $name, boolean $emptyExists)`

Prüft ob ein angegebenes Attribut existiert. Wenn `$emptyExists` `FALSE` ist werden leere Attribute (welche nur array() enthalten) als nicht existierend betrachtet und geben `FALSE` zurück. Wenn `$emptyExists` `TRUE` ist werden leere Attribute als existent betrachtet und geben `$emptyExists` zurück. In diesem Fall gibt die Methode nur dann `FALSE` zurück wenn der Name des Attributs in der Sammlung der Schlüssel fehlt.

`boolean attributeHasValue(string $name, mixed|array $value)` | Prüft ob die gegebenen Werte im Attribut existieren. Die Methode gibt nur dann `TRUE` zurück wenn alle Werte in `$value` im Attribut vorhanden sind. Der Vergleich wird strikt durchgeführt (und respektiert den Datentyp).
`integer count()` | Gibt die Anzahl der Attribute im Node zurück. Implementiert Countable.
`mixed getAttribute(string $name, integer|null $index)` | Gibt ein LDAP Attribut zurück. Die Daten Konvertierung wird angewendet indem `Zend_Ldap_Attribute::getAttribute()` verwendet wird.
`array getAttributes(boolean $includeSystemAttributes)` | Gibt alle Attribute des Nodes zurück. Wenn `$includeSystemAttributes` `FALSE` ist (der Standardwert ist `TRUE`), werden die System spezifischen Attribute vom Array entfernt.
`array|integer getDateTimeAttribute(string $name, integer|null $index)` | Gibt ein LDAP Datum/Zeit Attribut zurück. Die Datenkonvertierung wird angewendet indem `Zend_Ldap_Attribute::getDateTimeAttribute()` verwendet wird.
`Zend_Ldap_Node_RootDse reload(Zend_Ldap $ldap)` | Lädt die Attribute des aktuellen Nodes nochmalig vom angegebenen LDAP Server.
`Zend_Ldap_Node_RootDse create(Zend_Ldap $ldap)` | Eine Factory Methode um den RootDSE zu erstellen.
`array getNamingContexts()` | Holt die namingContexts.
`string|null getSubschemaSubentry()` | Holt den subschemaSubentry.
`boolean supportsVersion(string|int|array $versions)` | Erkennt ob die LDAP Version unterstützt wird.
`boolean supportsSaslMechanism(string|array $mechlist)` | Erkennt ob der sasl Mechanismus unterstützt wird.

`integer getServerType()`

Gibt den Server Typ zurück. Retourniert wird

`Zend_Ldap_Node_RootDse::SERVER_TYPE_GENERIC`

  für unbekannte LDAP Server

`Zend_Ldap_Node_RootDse::SERVER_TYPE_OPENLDAP`

  für OpenLDAP Server

`Zend_Ldap_Node_RootDse::SERVER_TYPE_ACTIVEDIRECTORY`

  für Microsoft ActiveDirectory Server

`Zend_Ldap_Node_RootDse::SERVER_TYPE_EDIRECTORY`

  für Novell eDirectory Server

`Zend_Ldap_Dn getSchemaDn()` | Gibt das DN Schema zurück.

## OpenLDAP

Zusätzlich können die üblichen Methoden von oben auch auf Instanzen von `Zend_Ldap_Node_RootDse_OpenLdap` angewendet werden.

Sehen Sie unter LDAP Operational Attributes and Objects für Informationen über Attribute von OpenLDAP RootDSE.

### Zend_Ldap_Node_RootDse_OpenLdap API

Methode | Beschreibung
--- | ---
`integer getServerType()` | Holt den Servertyp. Gibt `Zend_Ldap_Node_RootDse::SERVER_TYPE_OPENLDAP` zurück.
`string|null getConfigContext()` | Holt den configContext.
`string|null getMonitorContext()` | Holt den monitorContext.
`boolean supportsControl(string|array $oids)` | Erkennt ob control unterstützt wird.
`boolean supportsExtension(string|array $oids)` | Erkennt ob extension unterstützt wird.
`boolean supportsFeature(string|array $oids)` | Erkennt ob feature unterstützt wird.

## ActiveDirectory

Zusätzlich können die üblichen Methoden von oben auch auf Instanzen von `Zend_Ldap_Node_RootDse_ActiveDirectory` angewendet werden.

Sehen Sie unter RootDSE für Informationen über Attribute von Microsoft ActiveDirectory RootDSE.

### Zend_Ldap_Node_RootDse_ActiveDirectory API

Methode | Beschreibung
--- | ---
`integer getServerType()` | Holt den Server Typ. Gibt `Zend_Ldap_Node_RootDse::SERVER_TYPE_ACTIVEDIRECTORY` zurück.
`string|null getConfigurationNamingContext()` | Holt configurationNamingContext.
`string|null getCurrentTime()` | Holt currentTime.
`string|null getDefaultNamingContext()` | Holt defaultNamingContext.
`string|null getDnsHostName()` | Holt dnsHostName.
`string|null getDomainControllerFunctionality()` | Holt domainControllerFunctionality.
`string|null getDomainFunctionality()` | Holt domainFunctionality.
`string|null getDsServiceName()` | Holt dsServiceName.
`string|null getForestFunctionality()` | Holt forestFunctionality.
`string|null getHighestCommittedUSN()` | Holt highestCommittedUSN.
`string|null getIsGlobalCatalogReady()` | Holt isGlobalCatalogReady.
`string|null getIsSynchronized()` | Holt isSynchronized.
`string|null getLdapServiceName()` | Holt ldapServiceName.
`string|null getRootDomainNamingContext()` | Holt rootDomainNamingContext.
`string|null getSchemaNamingContext()` | Holt schemaNamingContext.
`string|null getServerName()` | Holt serverName.
`boolean supportsCapability(string|array $oids)` | Erkennt ob capability unterstützt wird.
`boolean supportsControl(string|array $oids)` | Erkennt ob control unterstützt wird.
`boolean supportsPolicy(string|array $policies)` | Erkennt ob version unterstützt wird.

## eDirectory

Zusätzlich können die üblichen Methoden von oben auch auf Instanzen von `Zend_Ldap_Node_RootDse_eDirectory` angewendet werden.

Sehen Sie auf Getting Information about the LDAP Server für Informationen über Attribute von Novell eDirectory RootDSE.

### Zend_Ldap_Node_RootDse_eDirectory API

Methode | Beschreibung
--- | ---
`integer getServerType()` | Holt den Server Typ. Gibt `Zend_Ldap_Node_RootDse::SERVER_TYPE_EDIRECTORY` zurück.
`boolean supportsExtension(string|array $oids)` | Erkennt ob extension unterstützt wird.
`string|null getVendorName()` | Holt vendorName.
`string|null getVendorVersion()` | Holt vendorVersion.
`string|null getDsaName()` | Holt dsaName.
`string|null getStatisticsErrors()` | Holt die Server Statistik "errors".
`string|null getStatisticsSecurityErrors()` | Holt die Server Statistik "securityErrors".
`string|null getStatisticsChainings()` | Holt die Server Statistik "chainings".
`string|null getStatisticsReferralsReturned()` | Holt die Server Statistik "referralsReturned".
`string|null getStatisticsExtendedOps()` | Holt die Server Statistik "extendedOps".
`string|null getStatisticsAbandonOps()` | Holt die Server Statistik "abandonOps".
`string|null getStatisticsWholeSubtreeSearchOps()` | Holt die Server Statistik "wholeSubtreeSearchOps".