Zend_Controller-Plugins-ActionStack.xml 2.9 KB

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