/** * Converts an embedded bean to an ID, removed the bean property and * stores the bean in the embedded beans array. * * @param array $embeddedBeans destination array for embedded bean * @param RedBean_OODBBean $bean target bean * @param string $property property that contains the embedded bean * @param RedBean_OODBBean $value embedded bean itself */ private function processEmbeddedBean(&$embeddedBeans, $bean, $property, RedBean_OODBBean $value) { $linkField = $property . '_id'; $bean->{$linkField} = $this->prepareEmbeddedBean($value); $bean->setMeta('cast.' . $linkField, 'id'); $embeddedBeans[$linkField] = $value; $bean->removeProperty($property); }