* @package tao */ interface tao_helpers_translation_Annotable { // --- OPERATIONS --- /** * Sets the collection of annotations bound to this Translation Object. * * @access public * @author Jerome Bogaerts, * @param array annotations An associative array of annotations where keys are the annotation names and values are annotation values. * @return void */ public function setAnnotations($annotations); /** * Returns an associative array that represents a collection of annotations * keys are annotation names and values annotation values. * * @access public * @author Jerome Bogaerts, * @return array */ public function getAnnotations(); /** * Adds an annotation with a given name and value. If value is not provided, * annotation will be taken into account as a flag. * * @access public * @author Jerome Bogaerts, * @param string name The name of the annotation to add. * @param string value The value of the annotation to add. * @return void */ public function addAnnotation($name, $value = ''); /** * Removes an annotation for a given annotation name. * * @access public * @author Jerome Bogaerts, * @param string name The name of the annotation to remove. * @return void */ public function removeAnnotation($name); /** * Get an annotation for a given annotation name. Returns an associative * where keys are 'name' and 'value'. * * @access public * @author Jerome Bogaerts, * @param string name * @return array */ public function getAnnotation($name); } /* end of interface tao_helpers_translation_Annotable */