Zend_Controller-Plugins-ActionStack.xml 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 15103 -->
  3. <!-- Reviewed: no -->
  4. <sect3 id="zend.controller.plugins.standard.actionstack">
  5. <title>ActionStack</title>
  6. <para>
  7. Das<code>ActionStack</code> Plugin erlaubt es einen Stack von Anfragen zu verwalten, und operiert
  8. als <code>postDispatch</code> Plugin. Wenn eine Weiterleitung (z.B. ein Aufruf zu einer anderen Aktion)
  9. bereits im aktuellen Anfrage Objekt gefunden wurde, führt es nicht durch. Trotzdem, wenn nicht,
  10. prüft es seinen Stack und entfernt den obersten Teil von Ihm und leitet diesen zu der Aktion weiter
  11. die in dieser Anfrage spezifiziert ist. Der Stack wird in der LIFO Reihenfolge bearbeitet.
  12. </para>
  13. <para>
  14. Das Plugin kann jederzeit vom Front Kontroller empfangen werden indem
  15. <classname>Zend_Controller_Front::getPlugin('Zend_Controller_Plugin_ActionStack')</classname> verwendet wird.
  16. Sobald das Plugin Objekt vorliegt, gibt es eine Anzahl von Mechanisman die verwendet werden können,
  17. um es zu manipulieren.
  18. </para>
  19. <itemizedlist>
  20. <listitem>
  21. <para>
  22. <code>getRegistry()</code> und <code>setRegistry()</code>.
  23. Intern verwendet <code>ActionStack</code> eine Instanz von <classname>Zend_Registry</classname>
  24. um den Stack zu speichern. Diese kann durch eine andere Registry Instanz ersetzt werden
  25. oder dieselbe mit diesen Zugriffsmethoden empfangen.
  26. </para>
  27. </listitem>
  28. <listitem>
  29. <para>
  30. <code>getRegistryKey()</code> und <code>setRegistryKey()</code>.
  31. Diese können verwendet werden um anzuzeigen welcher Registryschlüssel verwendet wird wenn
  32. der Stack herausgenommen wird. Der Standardwert ist 'Zend_Controller_Plugin_ActionStack'.
  33. </para>
  34. </listitem>
  35. <listitem>
  36. <para>
  37. <code>getStack()</code> erlaubt es den Stack von Aktionen in seiner Ganzheit zu empfangen.
  38. </para>
  39. </listitem>
  40. <listitem>
  41. <para>
  42. <code>pushStack()</code> und <code>popStack()</code> erlauben es dem Stack etwas hinzuzufügen
  43. und auch zu entfernen. <code>pushStack()</code> akzeptiert ein Anfrageobjekt.
  44. </para>
  45. </listitem>
  46. </itemizedlist>
  47. <para>
  48. Eine zusätzliche Methode, <code>forward()</code>, erwartet ein Anfrageobjekt, und setzt den Status
  49. des aktellen Anfrageobjektes im Front Kontroller auf den Status des angegebenen Anfrageobjekts,
  50. und markiert dieses als unerledigt (das forciert einen weiteren Durchlauf der Dispatch Schleife).
  51. </para>
  52. </sect3>
  53. <!--
  54. vim:se ts=4 sw=4 et:
  55. -->