content_title = lang("{$this->getService()->getClassName()}.title"); $this->class_path .= $this->getService()->getClassName(); $this->uri_path .= strtolower($this->getService()->getClassName('/')) . '/'; // $this->view_path .= strtolower($this->getService()->getClassName()) . DIRECTORY_SEPARATOR; } public function getService(): LineService { if (!$this->_service) { $this->_service = new LineService(); } return $this->_service; } final public function getIPService(): IpService { if (!$this->_ipService) { $this->_ipService = new IpService(); } return $this->_ipService; } //Index,FieldForm관련 //생성 protected function create_process(array $formDatas): LineEntity { //Line 등록 if (!$this->getService()->getHelper()->isValidCIDR($formDatas['bandwith'])) { throw new \Exception("{$formDatas['bandwith']}는 CIDR 형식에 부합되지 않습니다."); } //부모처리 $entity = parent::create_process($formDatas); //Prefixed IP to array 자동 등록 foreach ($this->getService()->getHelper()->cidrToIpRange($formDatas['bandwith']) as $ip) { $this->getIPService()->createByLineInfo($entity, $ip); } return $entity; } }