views:

18

answers:

0

Background of question

Analysis of Zend_Log reveals following Class Diagram

Zend_Log:

  • uses ReflectionClass & Zend_Log_Exception
  • maintains reference to array of Zend_Log_Writer_Abstract
  • maintains references to array of Zend_Log_Filter_Interface

Zend_Log_Writer_Abstract

  • maintains reference to array of Zend_Log_Filter_Interface
  • maintains reference to Zend_Log_Formatter_Interface

alt text

Questions

  1. Zend_Log_Filter_Interface relates with Zend_Log_Filter_Suppress, Zend_Log_Filter_Message & Zend_Log_Filter_Priority as depicted, is this correctly laid out in Class Diagram?
  2. Is it okay to say that, the Zend_Log contains reference to array of Zend_Log_Filter_Interface and this is composition relationship (similarly for Zend_Log_Writer_Abstract)?
  3. As it is obvious that Zend_Log_Filter_Interface is contained by both Zend_Log & Zend_Log_Writer_Abstract, while Zend_Log contains Zend_Log_Writer_Abstract, that makes Zend_Log_Filter referenced by both container (Zend_Log) and contained (Zend_Log_Writer_Abstract); is that some "Design Pattern", if yes what is the name?

Regards!