/**
  * @param IEntity $entity
  * @return int
  */
 public function add(IEntity $entity)
 {
     //supported components
     foreach ($entity->getOpenStackComponents(true) as $component) {
         $entity->getManyManyComponents('Components')->Add($component);
     }
     //supported versions
     foreach ($entity->getSupportedApiVersions(true) as $supported_version) {
         $entity->getComponents('SupportedApiVersions')->add($supported_version);
     }
     return $entity->write();
 }