/**
  * Use config.checkfront_map to get info from $data array and map to model fields.
  *
  * @param array $data
  * @param bool $updateNulls - if true and value not found then update model field to null.
  * @param string $forAction - key in the checkfront_map to use to lookup path/localName map
  * @return $this
  * @throws CheckfrontException
  * @fluent
  */
 public function fromCheckfront(array $data, $forAction = self::DefaultFromAction, $updateNulls = true)
 {
     if (!($map = $this->checkfront_map($forAction))) {
         throw new CheckfrontException("No map for action '{$forAction}'");
     }
     $data = $this->cast($data);
     CheckfrontModule::map_to_model($data, $map, $this, $updateNulls);
     return $this;
 }