diff -r 5b37998e522e -r 162c1de6545a web/lib/Zend/CodeGenerator/Abstract.php --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/web/lib/Zend/CodeGenerator/Abstract.php Fri Mar 11 15:05:35 2011 +0100 @@ -0,0 +1,147 @@ +_init(); + if ($options != null) { + // use Zend_Config objects if provided + if ($options instanceof Zend_Config) { + $options = $options->toArray(); + } + // pass arrays to setOptions + if (is_array($options)) { + $this->setOptions($options); + } + } + $this->_prepare(); + } + + /** + * setConfig() + * + * @param Zend_Config $config + * @return Zend_CodeGenerator_Abstract + */ + public function setConfig(Zend_Config $config) + { + $this->setOptions($config->toArray()); + return $this; + } + + /** + * setOptions() + * + * @param array $options + * @return Zend_CodeGenerator_Abstract + */ + public function setOptions(Array $options) + { + foreach ($options as $optionName => $optionValue) { + $methodName = 'set' . $optionName; + if (method_exists($this, $methodName)) { + $this->{$methodName}($optionValue); + } + } + return $this; + } + + /** + * setSourceContent() + * + * @param string $sourceContent + */ + public function setSourceContent($sourceContent) + { + $this->_sourceContent = $sourceContent; + return; + } + + /** + * getSourceContent() + * + * @return string + */ + public function getSourceContent() + { + return $this->_sourceContent; + } + + /** + * _init() - this is called before the constuctor + * + */ + protected function _init() + { + + } + + /** + * _prepare() - this is called at construction completion + * + */ + protected function _prepare() + { + + } + + /** + * generate() - must be implemented by the child + * + */ + abstract public function generate(); + + /** + * __toString() - casting to a string will in turn call generate() + * + * @return string + */ + final public function __toString() + { + return $this->generate(); + } + +}