ZF-7637: New property to allow overriding class name

Description

Could you do the same thing as "_messageClass" in the class "Zend_Mail_Storage_Abstract" allowing to use personal class to store Mail Message. In my application I use this class, but I'm oblige to copy/paste a big method which avoid any update of the framework.

class Mail_Storage_Imap extends Zend_Mail_Storage_Imap {

    protected $_folderClass = 'Zend_Mail_Storage_Folder';

    public function __construct($params){
        parent::__construct($params);

        $this->onInit();
    }

    public function onInit(){
        $this->_messageClass = 'Mail_Message';
        $this->_folderClass  = 'Mail_Storage_Folder';
    }

    /**
     * get root folder or given folder
     *
     * @param  string $rootFolder get folder structure for given folder, else root
     * @return Zend_Mail_Storage_Folder root or wanted folder
     * @throws Zend_Mail_Storage_Exception
     * @throws Zend_Mail_Protocol_Exception
     */
    public function getFolders($rootFolder = null)
    {
        ...
        $root = new $this->_folderClass('/', '/', false);
        ...
        $folder = new $this->_folderClass($localName, $globalName, $selectable);
        ...
    }
}

I hope I could help you, Bye.

Comments

Bulk change of all issues last updated before 1st January 2010 as "Won't Fix".

Feel free to re-open and provide a patch if you want to fix this issue.