public function remove(IEntity $entity)
{
$this->beginTransaction();
$primary = [];
$id = (array) $entity->getPersistedId();
foreach ($this->getStorageReflection()->getStoragePrimaryKey() as $key) {
$primary[$key] = array_shift($id);
}
$this->processRemove($entity, $primary);
}