Anpassen von Zend_Queue Erstellung eigener Adapter Zend_Queue akzeptiert jeden Adapter der Zend_Queue_Adapter_AdapterAbstract implementiert. Man kann eigene Adapter erstellen indem einer der existierenden Adapter, oder die abstrakte Klasse Zend_Queue_Adapter_AdapterAbstract erweitert wird. Es wird empfohlen Zend_Queue_Adapter_Array anzuschauen da dieser Adapter in seiner Konzeption der einfachste ist. 'queue1', 'driverOptions' => array( 'host' => '127.0.0.1', 'port' => '3306', 'username' => 'queue', 'password' => 'queue', 'dbname' => 'queue', 'type' => 'pdo_mysql' ) ); $adapter = new Custom_DbForUpdate($options); $queue = new Zend_Queue($adapter, $options); ]]> Man kann den Adapter auch im Betrieb ändern. setAdapter($adapter); echo "Adapter: ", get_class($queue->getAdapter()), "\n"; ]]> or 'queue1', 'namespace' => 'Custom', 'driverOptions' => array( 'host' => '127.0.0.1', 'port' => '3306', 'username' => 'queue', 'password' => 'queue', 'dbname' => 'queue', 'type' => 'pdo_mysql' ) ); $queue = new Zend_Queue('DbForUpdate', $config); // loads Custom_DbForUpdate ]]> Eine eigene Nachrichtenklasse erstellen Zend_Queue akzeptiert auch eigene Nachrichten Klassen. Unsere Variablen beginnen mit einem Unterstrich. Zum Beispiel: Man kann die bestehende Nachrichten Klasse erweitern. Siehe den Beispielcode in tests/Zend/Queue/Custom/Message.php. Erstellen einer eigenen Nachrichten Iterator Klasse Zend_Queue akzeptiert auch eine eigene Nachrichten Iterator Klasse. Diese Nachrichten Iterator Klasse wird verwendet um Nachrichten von Zend_Queue_Adapter_Abstract::recieve() zurckzugeben. Zend_Queue_Abstract::receive() sollte immer eine Controller Klasse zurückgeben so wie Zend_Queue_Message_Iterator selbst wenn nur eine Nachricht vorhanden ist. Siehe den Beispiel Dateinamen in tests/Zend/Queue/Custom/Messages.php. Erstellen einer eigenen Queue Klasse Zend_Queue kann auch sehr einfach überladen werden. Siehe den Beispiel Dateinamen in tests/Zend/Queue/Custom/Queue.php.