/**
  * Loads an entity or creates a new one if it does not already exist.
  *
  * @param  Metadata $metadata
  * @param  array    $data
  * @param  bool     $column
  * @param  bool     $convert
  * @return object
  */
 public function load(Metadata $metadata, array $data, $column = false, $convert = false)
 {
     $entity = $metadata->newInstance();
     $metadata->setValues($entity, $data, $column, $convert);
     $this->trigger(Events::INIT, $metadata, [$entity]);
     return $entity;
 }