36 assert(is_a($metadataDescription,
'MetadataDescription'));
39 $descriptionMetadataSchema = $metadataDescription->getMetadataSchema();
40 $recordMetadataSchema = $this->getMetadataSchema();
41 if ($descriptionMetadataSchema->getName() != $recordMetadataSchema->getName())
return false;
45 $applicationEntityId = $this->getApplicationEntityIdFromMetadataDescription($metadataDescription);
46 if (isset($this->_descriptions[$applicationEntityId]) && !$replace)
return false;
49 $this->_descriptions[$applicationEntityId] =& $metadataDescription;
60 if (isset($applicationEntityId) && isset($this->_descriptions[$applicationEntityId])) {
61 unset($this->_descriptions[$applicationEntityId]);
83 assert(isset($applicationEntityId));
86 if (isset($this->_descriptions[$applicationEntityId])) {
87 return $this->_descriptions[$applicationEntityId];
103 $this->_descriptions = array();
106 foreach($descriptions as $description) {
108 $this->_descriptions = array();