Zend_Ldap-API-Ldap-Node.xml 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 17230 -->
  3. <!-- Reviewed: no -->
  4. <sect3 id="zend.ldap.api.reference.zend-ldap-node">
  5. <title>Zend_Ldap_Node</title>
  6. <para>
  7. <classname>Zend_Ldap_Node</classname> includes the magic propery accessors
  8. <methodname>__set()</methodname>, <methodname>__get()</methodname>,
  9. <methodname>__unset()</methodname> and <methodname>__isset()</methodname> to access the
  10. attributes by their name. They proxy to
  11. <methodname>Zend_Ldap_Node::setAttribute()</methodname>,
  12. <methodname>Zend_Ldap_Node::getAttribute()</methodname>,
  13. <methodname>Zend_Ldap_Node::deleteAttribute()</methodname> and
  14. <methodname>Zend_Ldap_Node::existsAttribute()</methodname> respectively. Furthermore the
  15. class implements <code>ArrayAccess</code> for array-style-access to the attributes.
  16. <classname>Zend_Ldap_Node</classname> also implements <code>Iterator</code> and
  17. <code>RecursiveIterato</code> to allow for recursive tree-traversal.
  18. </para>
  19. <table id="zend.ldap.api.reference.zend-ldap-node.table">
  20. <title>Zend_Ldap_Node API</title>
  21. <tgroup cols="2">
  22. <thead>
  23. <row>
  24. <entry>Method</entry>
  25. <entry>Description</entry>
  26. </row>
  27. </thead>
  28. <tbody>
  29. <row>
  30. <entry><code>Zend_Ldap getLdap()</code></entry>
  31. <entry>
  32. Returns the current <acronym>LDAP</acronym> connection. Throws
  33. <classname>Zend_Ldap_Exception</classname> if current node is in detached
  34. mode (not connected to a <classname>Zend_Ldap</classname> instance).
  35. </entry>
  36. </row>
  37. <row>
  38. <entry>
  39. <code>Zend_Ldap_Node attachLdap(Zend_Ldap
  40. $ldap)</code>
  41. </entry>
  42. <entry>
  43. Attach the current node to the <varname>$ldap</varname>
  44. <classname>Zend_Ldap</classname> instance. Throws
  45. <classname>Zend_Ldap_Exception</classname> if <varname>$ldap</varname> is
  46. not responsible for the current node (node is not a child of the
  47. <varname>$ldap</varname> base DN).
  48. </entry>
  49. </row>
  50. <row>
  51. <entry><code>Zend_Ldap_Node detachLdap()</code></entry>
  52. <entry>Hängt den Node von der <acronym>LDAP</acronym> Verbindung ab.</entry>
  53. </row>
  54. <row>
  55. <entry><code>boolean isAttached()</code></entry>
  56. <entry>
  57. Prüft ob der aktuelle Node an eine <acronym>LDAP</acronym> Verbindung
  58. angehängt ist.
  59. </entry>
  60. </row>
  61. <row>
  62. <entry>
  63. <emphasis><code>Zend_Ldap_Node
  64. create(string|array|Zend_Ldap_Dn $dn, array $objectClass)</code>
  65. </emphasis>
  66. </entry>
  67. <entry>
  68. Factory Methode um einen neuen abgehängten
  69. <classname>Zend_Ldap_Node</classname> für einen angegebenen DN zu erstellen.
  70. Erstellt einen neuen <classname>Zend_Ldap_Node</classname> mit dem DN
  71. <varname>$dn</varname> und der Objektklasse <varname>$objectClass</varname>.
  72. </entry>
  73. </row>
  74. <row>
  75. <entry>
  76. <emphasis><code>Zend_Ldap_Node
  77. fromLdap(string|array|Zend_Ldap_Dn $dn, Zend_Ldap $ldap)</code>
  78. </emphasis>
  79. </entry>
  80. <entry>
  81. Factory Methode um einen angehängten <classname>Zend_Ldap_Node</classname>
  82. für einen angegebenen DN zu erstellen. Lädt einen existierenden
  83. <classname>Zend_Ldap_Node</classname> mit dem DN <varname>$dn</varname> von
  84. der <acronym>LDAP</acronym> Verbindung <varname>$ldap</varname>.
  85. </entry>
  86. </row>
  87. <row>
  88. <entry>
  89. <emphasis><code>Zend_Ldap_Node fromArray((array $data,
  90. boolean $fromDataSource)</code> </emphasis>
  91. </entry>
  92. <entry>
  93. Factory Methode um einen abgehängten <classname>Zend_Ldap_Node</classname>
  94. aus den Array Daten <varname>$data</varname> zu erstellen. Wenn
  95. <varname>$fromDataSource</varname> <constant>TRUE</constant> ist (der
  96. Standardwert ist <constant>FALSE</constant>), werden die Daten als, in einem
  97. <acronym>LDAP</acronym> Baum vorhanden, betrachtet.
  98. </entry>
  99. </row>
  100. <row>
  101. <entry><code>boolean isNew()</code></entry>
  102. <entry>
  103. Sagt ob der Node als Neu betrachtet wird (nicht auf dem Server vorhanden).
  104. Es ist zu beachten dass das nicht sagt ob der Node wirklich auf dem Server
  105. vorhanden ist. Man muss <methodname>Zend_Ldap_Node::exists()</methodname>
  106. verwenden um zu sehen ob der Node dort bereits existiert.
  107. </entry>
  108. </row>
  109. <row>
  110. <entry><code>boolean willBeDeleted()</code></entry>
  111. <entry>
  112. Sagt ob dieser Node gelöscht wird sobald
  113. <methodname>Zend_Ldap_Node::update()</methodname> aufgerufen wird.
  114. Tells if this node is going to be deleted once
  115. <methodname>Zend_Ldap_Node::update()</methodname> is called.
  116. </entry>
  117. </row>
  118. <row>
  119. <entry><code>Zend_Ldap_Node delete()</code></entry>
  120. <entry>
  121. Markiert den Node als gelöscht. Nodes werden beim Aufruf von
  122. <methodname>Zend_Ldap_Node::update()</methodname> gelöscht, wenn
  123. <methodname>Zend_Ldap_Node::willBeDeleted()</methodname> true ist.
  124. </entry>
  125. </row>
  126. <row>
  127. <entry><code>boolean willBeMoved()</code></entry>
  128. <entry>
  129. Sagt ob dieser Node verschoben wird sobald
  130. <methodname>Zend_Ldap_Node::update()</methodname> aufgerufen wird.
  131. </entry>
  132. </row>
  133. <row>
  134. <entry><code>Zend_Ldap_Node update(Zend_Ldap $ldap)</code></entry>
  135. <entry>
  136. Sendet alle wartenden Änderungen an den <acronym>LDAP</acronym> Server. Wenn
  137. <varname>$ldap</varname> unterdrückt wird, dann wird die aktuelle
  138. <acronym>LDAP</acronym> Verbindung verwendet. Wenn der aktuelle Node von
  139. einer <acronym>LDAP</acronym> Verbindung getrennt ist, wird eine
  140. <classname>Zend_Ldap_Exception</classname> geworfen. Wenn
  141. <varname>$ldap</varname> angegeben wird, dann wird der aktuelle Node an die
  142. angegebene <acronym>LDAP</acronym> Verbindung angehängt.
  143. </entry>
  144. </row>
  145. <row>
  146. <entry><code>Zend_Ldap_Dn getCurrentDn()</code></entry>
  147. <entry>
  148. Gibt den aktuellen DN des aktuellen Nodes als Zend_Ldap_Dn zurück. Das
  149. reflektiert mögliche rename-Operationen.
  150. </entry>
  151. </row>
  152. <row>
  153. <entry><code>Zend_Ldap_Dn getDn()</code></entry>
  154. <entry>
  155. Gibt den originalen DN des aktuellen Nodes als Zend_Ldap_Dn zurück. Das
  156. reflektiert mögliche rename-Operationen.
  157. </entry>
  158. </row>
  159. <row>
  160. <entry><code>string getDnString(string $caseFold)</code></entry>
  161. <entry>
  162. Gibt den originalen DN des aktuellen Nodes als String zurück. Das
  163. reflektiert mögliche rename-Operationen.
  164. </entry>
  165. </row>
  166. <row>
  167. <entry><code>array getDnArray(string $caseFold)</code></entry>
  168. <entry>
  169. Gibt den originalen DN des aktuellen Nodes als Array zurück. Das reflektiert
  170. mögliche rename-Operationen.
  171. </entry>
  172. </row>
  173. <row>
  174. <entry><code>string getRdnString(string $caseFold)</code></entry>
  175. <entry>
  176. Gibt den <acronym>RDN</acronym> des aktuellen Nodes als String zurück. Das
  177. reflektiert mögliche rename-Operationen.
  178. </entry>
  179. </row>
  180. <row>
  181. <entry><code>array getRdnArray(string $caseFold)</code></entry>
  182. <entry>
  183. Gibt den <acronym>RDN</acronym> des aktuellen Nodes als Array zurück. Das
  184. reflektiert mögliche rename-Operationen.
  185. </entry>
  186. </row>
  187. <row>
  188. <entry>
  189. <code>Zend_Ldap_Node setDn(Zend_Ldap_Dn|string|array
  190. $newDn)</code>
  191. </entry>
  192. <entry>
  193. Setzt den neuen DB für diesen Node und verschiebt diesen Node effektiv
  194. sobald <methodname>Zend_Ldap_Node::update()</methodname> aufgerufen wird.
  195. </entry>
  196. </row>
  197. <row>
  198. <entry>
  199. <code>Zend_Ldap_Node move(Zend_Ldap_Dn|string|array
  200. $newDn)</code>
  201. </entry>
  202. <entry>
  203. Das ist ein Alias für <methodname>Zend_Ldap_Node::setDn()</methodname>.
  204. </entry>
  205. </row>
  206. <row>
  207. <entry>
  208. <code>Zend_Ldap_Node rename(Zend_Ldap_Dn|string|array
  209. $newDn)</code>
  210. </entry>
  211. <entry>
  212. Das ist ein Alias für <methodname>Zend_Ldap_Node::setDn()</methodname>.
  213. </entry>
  214. </row>
  215. <row>
  216. <entry><code>array getObjectClass()</code></entry>
  217. <entry>Gibt objectClass des Nodes zurück.</entry>
  218. </row>
  219. <row>
  220. <entry>
  221. <code>Zend_Ldap_Node setObjectClass(array|string
  222. $value)</code>
  223. </entry>
  224. <entry>Setzt das objectClass Attribut.</entry>
  225. </row>
  226. <row>
  227. <entry>
  228. <code>Zend_Ldap_Node appendObjectClass(array|string
  229. $value)</code>
  230. </entry>
  231. <entry>Stellt dem objectClass Attribut voran.</entry>
  232. </row>
  233. <row>
  234. <entry><code>string toLdif(array $options)</code></entry>
  235. <entry>
  236. Gibt eine <acronym>LDIF</acronym> Repräsentation des aktuellen Nodes zurück.
  237. <varname>$options</varname> wird an
  238. <classname>Zend_Ldap_Ldif_Encoder</classname> übergeben.
  239. </entry>
  240. </row>
  241. <row>
  242. <entry><code>array getChangedData()</code></entry>
  243. <entry>
  244. Gibt geänderte Node Daten zurück. Das Array enthält alle geänderten
  245. Attribute. Dieses format kann in <methodname>Zend_Ldap::add()</methodname>
  246. und <methodname>Zend_Ldap::update()</methodname> verwendet werden.
  247. </entry>
  248. </row>
  249. <row>
  250. <entry><code>array getChanges()</code></entry>
  251. <entry>Gibt alle gemachten Änderungen zurück.</entry>
  252. </row>
  253. <row>
  254. <entry><code>string toString()</code></entry>
  255. <entry>
  256. Gibt den DN des aktuellen Nodes zurück - leitet auf
  257. <methodname>Zend_Ldap_Dn::getDnString()</methodname> weiter.
  258. </entry>
  259. </row>
  260. <row>
  261. <entry><code>string __toString()</code></entry>
  262. <entry>
  263. Castet auf eine String Repräsentation - leitet auf
  264. <methodname>Zend_Ldap_Dn::toString()</methodname> weiter.
  265. </entry>
  266. </row>
  267. <row>
  268. <entry>
  269. <code>array toArray(boolean
  270. $includeSystemAttributes)</code>
  271. </entry>
  272. <entry>
  273. Gibt eine Array Repräsentation des aktuellen Nodes zurück. Wenn
  274. <varname>$includeSystemAttributes</varname> <constant>FALSE</constant> ist
  275. (der Standardwert ist <constant>TRUE</constant>), werden Systemspezifische
  276. Attribute vom Array entfernt. Anders als
  277. <methodname>Zend_Ldap_Node::getAttributes()</methodname> enthält das
  278. resultierende Array den DN mit dem Schlüssel <code>'dn'</code>.
  279. </entry>
  280. </row>
  281. <row>
  282. <entry>
  283. <code>string toJson(boolean
  284. $includeSystemAttributes)</code>
  285. </entry>
  286. <entry>
  287. Gibt eine <acronym>JSON</acronym> Repräsentation des aktuellen Nodes zurück
  288. wobei <methodname>Zend_Ldap_Node::toArray()</methodname> verwendet wird.
  289. </entry>
  290. </row>
  291. <row>
  292. <entry>
  293. <code>array getData(boolean
  294. $includeSystemAttributes)</code>
  295. </entry>
  296. <entry>
  297. Gibt die Attribute des Nodes zurück. Das Array enthält alle Attribute in Ihrem
  298. internen Format (keine Konvertierung).
  299. </entry>
  300. </row>
  301. <row>
  302. <entry>
  303. <code>boolean existsAttribute(string $name, boolean
  304. $emptyExists)</code>
  305. </entry>
  306. <entry>
  307. Prüft ob ein angegebenes Attribut existiert. Wenn
  308. <varname>$emptyExists</varname> <constant>FALSE</constant> ist werden leere
  309. Attrbute (welche nur array() enthalten) als nicht-existent betrachtet und es
  310. wird <constant>FALSE</constant> zurückgegeben. Wenn
  311. <varname>$emptyExists</varname> true ist werden leere Attribute als existent
  312. betrachtet und es wird <constant>TRUE</constant> zurückgegeben. In diesem
  313. Fall gibt die Methode nur dann <constant>FALSE</constant> zurck wenn der
  314. Name des Attributs in der Sammlung der Schlüssel fehlt.
  315. </entry>
  316. </row>
  317. <row>
  318. <entry>
  319. <code>boolean attributeHasValue(string $name, mixed|array
  320. $value)</code>
  321. </entry>
  322. <entry>
  323. Prüft ob die angegebenen Werte im Attribut existieren. Die Methode gibt nur
  324. dann <constant>TRUE</constant> zurück wenn alle Werte von
  325. <varname>$value</varname> im Attribut vorhanden sind. Der Vergleich wird
  326. strikt durchgeführt (er respektiert den Datentyp).
  327. </entry>
  328. </row>
  329. <row>
  330. <entry><code>integer count()</code></entry>
  331. <entry>
  332. Gibt die Anzahl der Attribute im Node zurück. Implementiert Countable.
  333. </entry>
  334. </row>
  335. <row>
  336. <entry>
  337. <code>mixed getAttribute(string $name, integer|null
  338. $index)</code>
  339. </entry>
  340. <entry>
  341. Holt ein <acronym>LDAP</acronym> Attribut. Die Datenkonvertierung wird
  342. angewendet durch Verwendung von
  343. <methodname>Zend_Ldap_Attribute::getAttribute()</methodname>.
  344. </entry>
  345. </row>
  346. <row>
  347. <entry>
  348. <code>array getAttributes(boolean
  349. $includeSystemAttributes)</code>
  350. </entry>
  351. <entry>
  352. Holt alle Attribute des Nodes. Wenn
  353. <varname>$includeSystemAttributes</varname> <constant>FALSE</constant> ist
  354. (der Standardwert ist <constant>TRUE</constant>) dann werden die System
  355. spezifischen Attribute vom Array entfernt.
  356. </entry>
  357. </row>
  358. <row>
  359. <entry>
  360. <code>Zend_Ldap_Node setAttribute(string $name, mixed
  361. $value)</code>
  362. </entry>
  363. <entry>
  364. Setzt ein <acronym>LDAP</acronym> Attribut. Die Datenkonvertierung wird
  365. angewendet durch Verwendung von
  366. <methodname>Zend_Ldap_Attribute::setAttribute()</methodname>.
  367. </entry>
  368. </row>
  369. <row>
  370. <entry>
  371. <code>Zend_Ldap_Node appendToAttribute(string $name, mixed
  372. $value)</code>
  373. </entry>
  374. <entry>
  375. Hängt etwas an ein <acronym>LDAP</acronym> Attribut an. Die
  376. Datenkonvertierung wird angewendet durch Verwendung von
  377. <methodname>Zend_Ldap_Attribute::setAttribute()</methodname>.
  378. </entry>
  379. </row>
  380. <row>
  381. <entry>
  382. <code>array|integer getDateTimeAttribute(string $name,
  383. integer|null $index)</code>
  384. </entry>
  385. <entry>
  386. Holt ein <acronym>LDAP</acronym> Date/Time Attribut. Die Datenkonvertierung
  387. wird angewendet durch Verwendung von
  388. <methodname>Zend_Ldap_Attribute::setDateTimeAttribute()</methodname>.
  389. </entry>
  390. </row>
  391. <row>
  392. <entry>
  393. <code>Zend_Ldap_Node setDateTimeAttribute(string $name,
  394. integer|array $value, boolean $utc)</code>
  395. </entry>
  396. <entry>
  397. Setzt ein <acronym>LDAP</acronym> Date/Time Attribut. Die Datenkonvertierung
  398. wird angewendet durch Verwendung von
  399. <methodname>Zend_Ldap_Attribute::setDateTimeAttribute()</methodname>.
  400. </entry>
  401. </row>
  402. <row>
  403. <entry>
  404. <code>Zend_Ldap_Node appendToDateTimeAttribute(string $name,
  405. integer|array $value, boolean $utc)</code>
  406. </entry>
  407. <entry>
  408. Hängt etwas an ein <acronym>LDAP</acronym> Date/Time Attribut an. Die
  409. Datenkonvertierung wird angewendet durch Verwendung von
  410. <methodname>Zend_Ldap_Attribute::setDateTimeAttribute()</methodname>.
  411. </entry>
  412. </row>
  413. <row>
  414. <entry>
  415. <code>Zend_Ldap_Node setPasswordAttribute(string $password,
  416. string $hashType, string $attribName)</code>
  417. </entry>
  418. <entry>
  419. Setzt ein <acronym>LDAP</acronym> Passwort bei
  420. <varname>$attribName</varname> (der Standardwert ist
  421. <code>'userPassword'</code>) auf <varname>$password</varname> mit dem
  422. Hashtyp <varname>$hashType</varname> (der Standardwert ist
  423. <constant>Zend_Ldap_Attribute::PASSWORD_HASH_MD5</constant>).
  424. </entry>
  425. </row>
  426. <row>
  427. <entry>
  428. <code>Zend_Ldap_Node deleteAttribute(string
  429. $name)</code>
  430. </entry>
  431. <entry>Löscht ein <acronym>LDAP</acronym> Attribut.</entry>
  432. </row>
  433. <row>
  434. <entry>
  435. <code>void removeDuplicatesFromAttribute(string
  436. $name)</code>
  437. </entry>
  438. <entry>
  439. Entfernt doppelte Werte von einem <acronym>LDAP</acronym> Attribut.
  440. </entry>
  441. </row>
  442. <row>
  443. <entry>
  444. <code>void removeFromAttribute(string $attribName,
  445. mixed|array $value)</code>
  446. </entry>
  447. <entry>
  448. Entfernt die angegebenen Werte von einem <acronym>LDAP</acronym> Attribut.
  449. </entry>
  450. </row>
  451. <row>
  452. <entry><code>boolean exists(Zend_Ldap $ldap)</code></entry>
  453. <entry>
  454. Prüft ob der aktuelle Node im angegebenen <acronym>LDAP</acronym> Server
  455. existiert (der aktuelle Server wird verwendet wenn
  456. <constant>NULL</constant> übergeben wird).
  457. </entry>
  458. </row>
  459. <row>
  460. <entry><code>Zend_Ldap_Node reload(Zend_Ldap $ldap)</code></entry>
  461. <entry>
  462. Lädt die Attribute des aktuellen Nodes nochmalig vom angegebenen
  463. <acronym>LDAP</acronym> Server (der aktuelle Server wird verwendet wenn
  464. <constant>NULL</constant> übergeben wird).
  465. </entry>
  466. </row>
  467. <row>
  468. <entry>
  469. <code>Zend_Ldap_Node_Collection
  470. searchSubtree(string|Zend_Ldap_Filter_Abstract $filter, integer
  471. $scope, string $sort)</code>
  472. </entry>
  473. <entry>
  474. Sucht den Unterbaum des Nodes mit dem angegebenen <varname>$filter</varname>
  475. und den angegebenen Suchparametern ab. Siehe
  476. <methodname>Zend_Ldap::search()</methodname> für Details über die
  477. Parameter <varname>$scope</varname> und <varname>$sort</varname>.
  478. </entry>
  479. </row>
  480. <row>
  481. <entry>
  482. <code>integer countSubtree(string|Zend_Ldap_Filter_Abstract
  483. $filter, integer $scope)</code>
  484. </entry>
  485. <entry>
  486. Zählt die Elemente des Unterbaums vom Node welche dem angegebenen
  487. <varname>$filter</varname> entsprechen und dem angegebenen Suchbereich.
  488. Siehe <methodname>Zend_Ldap::search()</methodname> für Details über den
  489. <varname>$scope</varname> Parameter.
  490. </entry>
  491. </row>
  492. <row>
  493. <entry><code>integer countChildren()</code></entry>
  494. <entry>Zählt die Kinder des Nodes.</entry>
  495. </row>
  496. <row>
  497. <entry>
  498. <code>Zend_Ldap_Node_Collection
  499. searchChildren(string|Zend_Ldap_Filter_Abstract $filter, string
  500. $sort)</code>
  501. </entry>
  502. <entry>
  503. Sucht nach Kindern des Nodes die dem angegebenen <varname>$filter</varname>
  504. entsprechen. Siehe <methodname>Zend_Ldap::search()</methodname> für Details
  505. über den <varname>$sort</varname> Parameter.
  506. </entry>
  507. </row>
  508. <row>
  509. <entry><code>boolean hasChildren()</code></entry>
  510. <entry>Gibt zurück ob der aktuelle Node Kinder hat.</entry>
  511. </row>
  512. <row>
  513. <entry>
  514. <code>Zend_Ldap_Node_ChildrenIterator
  515. getChildren()</code>
  516. </entry>
  517. <entry>Gibt alle Kinder des aktuellen Nodes zurück.</entry>
  518. </row>
  519. <row>
  520. <entry>
  521. <code>Zend_Ldap_Node getParent(Zend_Ldap
  522. $ldap)</code>
  523. </entry>
  524. <entry>
  525. Gibt den Elternteil des aktuellen Nodes zurück wobei die
  526. <acronym>LDAP</acronym> Verbindung <varname>$ldap</varname> verwendet wird
  527. (verwendet die aktuelle <acronym>LDAP</acronym> Verbindung wenn diese nicht
  528. angegeben wird).
  529. </entry>
  530. </row>
  531. </tbody>
  532. </tgroup>
  533. </table>
  534. </sect3>