forked from devsam/core
내부 코드 사용례에서 General 테이블의 column을 일부만 가져오는 경우가 다수 있습니다. 다만 General 클래스에서 각종 iAction에 해당하는 트리거 함수 호출을 위해서는 모든 column을 다 가져와야 정상 동작이 가능한 만큼, iAction interface를 구현한 General 클래스와, 구현하지 않은 GeneralLite 클래스 둘로 나눕니다. 또한 General 클래스에서는 필요한 column을 다 가져오도록 변경합니다. Reviewed-on: https://storage.hided.net/gitea/devsam/core/pulls/236
32 lines
826 B
PHP
32 lines
826 B
PHP
<?php
|
|
namespace sammo\API\General;
|
|
|
|
use sammo\Enums\APIRecoveryType;
|
|
use sammo\General;
|
|
use sammo\Session;
|
|
|
|
use function sammo\getCommandTable;
|
|
|
|
//getCommandTable 호출을 대신하는 API
|
|
|
|
class GetCommandTable extends \sammo\BaseAPI{
|
|
public function validateArgs(): ?string{
|
|
return null;
|
|
}
|
|
|
|
public function getRequiredSessionMode(): int{
|
|
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
|
|
}
|
|
|
|
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
|
|
{
|
|
$generalID = $session->generalID;
|
|
$me = General::createObjFromDB($generalID);
|
|
$commandTable = getCommandTable($me);
|
|
|
|
return [
|
|
'result'=>true,
|
|
'commandTable' => $commandTable,
|
|
];
|
|
}
|
|
} |