Esempio n. 1
0
 /**
  * generate interface names implemented by the class
  *
  * @param AbstractModel $model
  * @return $this
  */
 public function generateInterfaces(AbstractModel $model)
 {
     $config = $this->config;
     $this->implements = [];
     if (isset($config['implements']['implement'])) {
         foreach ($config['implements']['implement'] as $implement) {
             if ($model->validateDepend($implement)) {
                 $scope = isset($implement['scope']) ? $implement['scope'] : $this->getDefaultScope();
                 $processor = $this->getImplementProcessor($scope);
                 $processor->setModel($model);
                 $this->implements = array_merge($this->implements, $processor->process($implement));
             }
         }
     }
     return $this;
 }