/**
  * Used to internally populate this object with the appropriate type checks
  *
  * @param array $params
  * @throws \InvalidArgumentException If no parent device set
  */
 protected function populateRecord(array $params = array())
 {
     if (!isset($params['parent'])) {
         throw new \InvalidArgumentException('You must set a `parent` device');
     }
     $this->setDeviceParent($params['parent']);
     unset($params['parent']);
     parent::populate($params);
 }