Example #1
0
 /**
  * Create Meta class from provided configuration and values.
  *
  * @param Context             $context
  * @param string|array|object $values
  * @param array               $configuration
  */
 public function __construct(Context $context, $values, $configuration)
 {
     $this->context = $context;
     $this->values = $values;
     $this->configuration = $configuration;
     if (is_array($this->values)) {
         $this->fillFromArray($this->values, $this->configuration);
     } elseif (is_string($this->values) && $this->isJson($this->values)) {
         $this->fillFromArray(json_decode($this->values, true), $this->configuration);
     } elseif (is_object($this->values)) {
         $this->fillFromObject($this->values, $this->configuration);
     }
     $this->context->registerMeta($this);
 }