From 5f9cfda7bed75141d086f2f275a97cef1ae1f666 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=B5=9C=EC=A4=80=ED=9D=A0?= Date: Mon, 14 Oct 2024 16:02:53 +0900 Subject: [PATCH] cfmgrv4 init...1 --- app/Controllers/Admin/Cloudflare/AccountController.php | 6 +++++- app/Controllers/Admin/Cloudflare/RecordController.php | 6 +++++- app/Controllers/Admin/Cloudflare/ZoneController.php | 6 +++++- 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/app/Controllers/Admin/Cloudflare/AccountController.php b/app/Controllers/Admin/Cloudflare/AccountController.php index 0bace40..5c33c94 100644 --- a/app/Controllers/Admin/Cloudflare/AccountController.php +++ b/app/Controllers/Admin/Cloudflare/AccountController.php @@ -15,6 +15,7 @@ class AccountController extends CloudflareController { private $_model = null; private $_auth_entity = null; + private $_myLibrays = []; public function initController(RequestInterface $request, ResponseInterface $response, LoggerInterface $logger) { parent::initController($request, $response, $logger); @@ -32,7 +33,10 @@ class AccountController extends CloudflareController } final protected function getMyLibrary(): Account { - return new Account($this->_auth_entity); + if (!isset($this->_myLibrays[$this->_auth_entity->getPK()])) { + $this->_myLibrays[$this->_auth_entity->getPK()] = new Account($this->_auth_entity); + } + return $this->_myLibrays[$this->_auth_entity->getPK()]; } protected function getFormFieldOption(string $field, array $options = []): array { diff --git a/app/Controllers/Admin/Cloudflare/RecordController.php b/app/Controllers/Admin/Cloudflare/RecordController.php index 24d9155..42e4982 100644 --- a/app/Controllers/Admin/Cloudflare/RecordController.php +++ b/app/Controllers/Admin/Cloudflare/RecordController.php @@ -15,6 +15,7 @@ use Psr\Log\LoggerInterface; class RecordController extends CloudflareController { private $_zone_entity = null; + private $_myLibrays = []; public function initController(RequestInterface $request, ResponseInterface $response, LoggerInterface $logger) { parent::initController($request, $response, $logger); @@ -32,7 +33,10 @@ class RecordController extends CloudflareController } final protected function getMyLibrary(): Record { - return new Record($this->_zone_entity); + if (!isset($this->_myLibrays[$this->_zone_entity->getPK()])) { + $this->_myLibrays[$this->_zone_entity->getPK()] = new Record($this->_zone_entity); + } + return $this->_myLibrays[$this->_zone_entity->getPK()]; } protected function getFormFieldOption(string $field, array $options = []): array { diff --git a/app/Controllers/Admin/Cloudflare/ZoneController.php b/app/Controllers/Admin/Cloudflare/ZoneController.php index b9aee01..2df9d07 100644 --- a/app/Controllers/Admin/Cloudflare/ZoneController.php +++ b/app/Controllers/Admin/Cloudflare/ZoneController.php @@ -16,6 +16,7 @@ use Psr\Log\LoggerInterface; class ZoneController extends CloudflareController { private $_account_entity = null; + private $_myLibrays = []; private $_model = null; public function initController(RequestInterface $request, ResponseInterface $response, LoggerInterface $logger) { @@ -34,7 +35,10 @@ class ZoneController extends CloudflareController } final protected function getMyLibrary(): Zone { - return new Zone($this->_account_entity); + if (!isset($this->_myLibrays[$this->_account_entity->getPK()])) { + $this->_myLibrays[$this->_account_entity->getPK()] = new Zone($this->_account_entity); + } + return $this->_myLibrays[$this->_account_entity->getPK()]; } protected function getFormFieldOption(string $field, array $options = []): array {