cfmgrv4 init...3

This commit is contained in:
최준흠 2024-10-22 15:59:24 +09:00
parent be926fbd93
commit aafc837bd9
3 changed files with 37 additions and 29 deletions

View File

@ -61,16 +61,19 @@ class Account extends Cloudflare
log_message("notice", "\n----------Auth {$this->getAuthEntity()->getTitle()}의 Account 처리 시작-----------"); log_message("notice", "\n----------Auth {$this->getAuthEntity()->getTitle()}의 Account 처리 시작-----------");
$entitys = []; $entitys = [];
try { try {
$results_array = $this->reload_procedure("accounts"); $results = $this->reload_procedure("accounts");
if (count(value: $results_array) > 0) { $total = count(value: $results);
foreach ($results_array as $results) { if ($total > 0) {
$cnt = 1;
foreach ($results as $result) { foreach ($results as $result) {
if (!is_object($result) || get_class($result) !== 'stdClass') { if (!is_object($result) || get_class($result) !== 'stdClass') {
throw new \Exception("Account: result is not a stdClass:\n" . var_export($result, true) . "\n"); throw new \Exception("Account: result is not a stdClass:\n" . var_export($result, true) . "\n");
} }
$formDatas = $this->getArrayByResult($result); $formDatas = $this->getArrayByResult($result);
$entitys[$formDatas[AccountModel::PK]] = $this->getModel()->modify(new AccountEntity(), $formDatas); $entity = $this->getModel()->modify(new AccountEntity(), $formDatas);
} log_message("debug", "[{$this->getMySocket()::$_request}] :{$cnt}/{$total} => {$entity->getTitle()} Account 처리");
$entitys[$entity->getPK()] = $entity;
$cnt++;
} }
//부모키를 기준으로 CF에 존재하지 않는 데이터 삭제용 //부모키를 기준으로 CF에 존재하지 않는 데이터 삭제용
$this->getModel()->where(AccountModel::PARENT, $this->getAuthEntity()->getPK()); $this->getModel()->where(AccountModel::PARENT, $this->getAuthEntity()->getPK());

View File

@ -143,16 +143,19 @@ class Record extends Cloudflare
log_message("notice", "\n-----------Zone {$this->getParentEntity()->getTitle()}의 Record 처리 시작-----------"); log_message("notice", "\n-----------Zone {$this->getParentEntity()->getTitle()}의 Record 처리 시작-----------");
$entitys = []; $entitys = [];
try { try {
$results_array = $this->reload_procedure("zones/{$this->getParentEntity()->getPK()}/dns_records"); $results = $this->reload_procedure("zones/{$this->getParentEntity()->getPK()}/dns_records");
if (count(value: $results_array) > 0) { $total = count(value: $results);
foreach ($results_array as $results) { if ($total > 0) {
$cnt = 1;
foreach ($results as $result) { foreach ($results as $result) {
if (!is_object($result) || get_class($result) !== 'stdClass') { if (!is_object($result) || get_class($result) !== 'stdClass') {
throw new \Exception("Record: result is not a stdClass:\n" . var_export($result, true) . "\n"); throw new \Exception("Record: result is not a stdClass:\n" . var_export($result, true) . "\n");
} }
$formDatas = $this->getArrayByResult($result); $formDatas = $this->getArrayByResult($result);
$entitys[$formDatas[RecordModel::PK]] = $this->getModel()->modify(new RecordEntity(), $formDatas); $entity = $this->getModel()->modify(new RecordEntity(), $formDatas);
} log_message("debug", "[{$this->getMySocket()::$_request}] :{$cnt}/{$total} => {$entity->getTitle()} Record 처리");
$entitys[$entity->getPK()] = $entity;
$cnt++;
} }
//부모키를 기준으로 CF에 존재하지 않는 데이터 DB삭제 //부모키를 기준으로 CF에 존재하지 않는 데이터 DB삭제
$this->getModel()->where(RecordModel::PARENT, $this->getParentEntity()->getPK()); $this->getModel()->where(RecordModel::PARENT, $this->getParentEntity()->getPK());

View File

@ -149,18 +149,20 @@ class Zone extends Cloudflare
log_message("notice", "\n-----------Account {$this->getParentEntity()->getTitle()}의 Zone처리 시작-----------"); log_message("notice", "\n-----------Account {$this->getParentEntity()->getTitle()}의 Zone처리 시작-----------");
$entitys = []; $entitys = [];
try { try {
$results_array = $this->reload_procedure("zones"); $results = $this->reload_procedure("zones");
if (count(value: $results_array) > 0) { $cnt = 1;
foreach ($results_array as $results) { $total = count(value: $results);
if ($total > 0) {
foreach ($results as $result) { foreach ($results as $result) {
if (!is_object($result) || get_class($result) !== 'stdClass') { if (!is_object($result) || get_class($result) !== 'stdClass') {
throw new \Exception("Zone: result is not a stdClass:\n" . var_export($result, true) . "\n"); throw new \Exception("Zone: result is not a stdClass:\n" . var_export($result, true) . "\n");
} }
$formDatas = $this->getArrayByResult($result); $formDatas = $this->getArrayByResult($result);
$formDatas = $this->getCFSetting($formDatas[ZoneModel::PK], $formDatas); $formDatas = $this->getCFSetting($formDatas[ZoneModel::PK], $formDatas);
$entitys[$formDatas[ZoneModel::PK]] = $this->getModel()->modify(new ZoneEntity(), $formDatas); $entity = $this->getModel()->modify(new ZoneEntity(), $formDatas);
} log_message("debug", "[{$this->getMySocket()::$_request}] :{$cnt}/{$total} => {$entity->getTitle()} Zone 처리");
log_message("debug", "현재 [" . $this->getMySocket()::$_request . "]"); $entitys[$entity->getPK()] = $entity;
$cnt++;
} }
//부모키를 기준으로 CF에 존재하지 않는 데이터 삭제용 //부모키를 기준으로 CF에 존재하지 않는 데이터 삭제용
$this->getModel()->where(ZoneModel::PARENT, value: $this->getParentEntity()->getPK()); $this->getModel()->where(ZoneModel::PARENT, value: $this->getParentEntity()->getPK());