/**
  * {@inheritdoc}
  */
 public function handle($model, DefinitionMapper $mapper, Filter $filter = null, $elementId = null, Definition $parent = null)
 {
     $definition = $this->createInstance($model, $mapper, $filter, $elementId);
     $this->optionsBuilder->build($definition, $model);
     $this->build($definition, $model, $mapper, $filter, $parent);
     return $definition;
 }
 /**
  * {@inheritdoc}
  */
 protected function build(Definition $definition, \Model $model, DefinitionMapper $mapper, Filter $filter = null, Definition $parent = null)
 {
     if (!empty($this->providers[$model->tile_provider]['options'])) {
         OptionsBuilder::applyOptions($this->providers[$model->tile_provider]['options'], $definition, $model);
     }
 }