feat: BaseAPI의 launch()에 타입 지정

- APIRecoveryType이 명시
This commit is contained in:
2023-03-17 01:39:10 +09:00
parent 6b9cfe46a0
commit 4d340abdcf
77 changed files with 171 additions and 89 deletions
+2 -1
View File
@@ -6,6 +6,7 @@ use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\AuctionBuyRice; use sammo\AuctionBuyRice;
use sammo\AuctionUniqueItem; use sammo\AuctionUniqueItem;
use sammo\Enums\APIRecoveryType;
use sammo\Validator; use sammo\Validator;
use sammo\General; use sammo\General;
@@ -32,7 +33,7 @@ class BidBuyRiceAuction extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN; return static::REQ_GAME_LOGIN;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$auctionID = $this->args['auctionID']; $auctionID = $this->args['auctionID'];
$amount = $this->args['amount']; $amount = $this->args['amount'];
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Auction;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\AuctionSellRice; use sammo\AuctionSellRice;
use sammo\Enums\APIRecoveryType;
use sammo\Validator; use sammo\Validator;
use sammo\General; use sammo\General;
@@ -31,7 +32,7 @@ class BidSellRiceAuction extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN; return static::REQ_GAME_LOGIN;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$auctionID = $this->args['auctionID']; $auctionID = $this->args['auctionID'];
$amount = $this->args['amount']; $amount = $this->args['amount'];
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Auction;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\AuctionUniqueItem; use sammo\AuctionUniqueItem;
use sammo\Enums\APIRecoveryType;
use sammo\Validator; use sammo\Validator;
use sammo\GameConst; use sammo\GameConst;
use sammo\General; use sammo\General;
@@ -33,7 +34,7 @@ class BidUniqueAuction extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN; return static::REQ_GAME_LOGIN;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$auctionID = $this->args['auctionID']; $auctionID = $this->args['auctionID'];
$amount = $this->args['amount']; $amount = $this->args['amount'];
@@ -8,6 +8,7 @@ use sammo\AuctionSellRice;
use sammo\DB; use sammo\DB;
use sammo\DTO\AuctionBidItem; use sammo\DTO\AuctionBidItem;
use sammo\DTO\AuctionInfo; use sammo\DTO\AuctionInfo;
use sammo\Enums\APIRecoveryType;
use sammo\Enums\AuctionType; use sammo\Enums\AuctionType;
use sammo\Validator; use sammo\Validator;
use sammo\General; use sammo\General;
@@ -29,7 +30,7 @@ class GetActiveResourceAuctionList extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN; return static::REQ_GAME_LOGIN;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$db = DB::db(); $db = DB::db();
@@ -8,6 +8,7 @@ use sammo\AuctionUniqueItem;
use sammo\DB; use sammo\DB;
use sammo\DTO\AuctionBidItem; use sammo\DTO\AuctionBidItem;
use sammo\DTO\AuctionInfo; use sammo\DTO\AuctionInfo;
use sammo\Enums\APIRecoveryType;
use sammo\Enums\AuctionType; use sammo\Enums\AuctionType;
use sammo\Enums\InheritanceKey; use sammo\Enums\InheritanceKey;
use sammo\InheritancePointManager; use sammo\InheritancePointManager;
@@ -37,7 +38,7 @@ class GetUniqueItemAuctionDetail extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN; return static::REQ_GAME_LOGIN;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$db = DB::db(); $db = DB::db();
@@ -8,6 +8,7 @@ use sammo\AuctionUniqueItem;
use sammo\DB; use sammo\DB;
use sammo\DTO\AuctionBidItem; use sammo\DTO\AuctionBidItem;
use sammo\DTO\AuctionInfo; use sammo\DTO\AuctionInfo;
use sammo\Enums\APIRecoveryType;
use sammo\Enums\AuctionType; use sammo\Enums\AuctionType;
use sammo\TimeUtil; use sammo\TimeUtil;
use sammo\Util; use sammo\Util;
@@ -24,7 +25,7 @@ class GetUniqueItemAuctionList extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN; return static::REQ_GAME_LOGIN;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$db = DB::db(); $db = DB::db();
+2 -1
View File
@@ -6,6 +6,7 @@ use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\AuctionBuyRice; use sammo\AuctionBuyRice;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Validator; use sammo\Validator;
use sammo\GameConst; use sammo\GameConst;
use sammo\General; use sammo\General;
@@ -52,7 +53,7 @@ class OpenBuyRiceAuction extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN; return static::REQ_GAME_LOGIN;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
/** @var int */ /** @var int */
$amount = $this->args['amount']; $amount = $this->args['amount'];
@@ -6,6 +6,7 @@ use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\AuctionSellRice; use sammo\AuctionSellRice;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Validator; use sammo\Validator;
use sammo\GameConst; use sammo\GameConst;
use sammo\General; use sammo\General;
@@ -52,7 +53,7 @@ class OpenSellRiceAuction extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN; return static::REQ_GAME_LOGIN;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
/** @var int */ /** @var int */
$amount = $this->args['amount']; $amount = $this->args['amount'];
+2 -1
View File
@@ -6,6 +6,7 @@ use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\AuctionUniqueItem; use sammo\AuctionUniqueItem;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Validator; use sammo\Validator;
use sammo\GameConst; use sammo\GameConst;
use sammo\General; use sammo\General;
@@ -49,7 +50,7 @@ class OpenUniqueAuction extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN; return static::REQ_GAME_LOGIN;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$itemID = $this->args['itemID']; $itemID = $this->args['itemID'];
$amount = $this->args['amount']; $amount = $this->args['amount'];
+2 -1
View File
@@ -7,6 +7,7 @@ use DateTimeInterface;
use sammo\Betting; use sammo\Betting;
use sammo\DB; use sammo\DB;
use sammo\DTO\BettingItem; use sammo\DTO\BettingItem;
use sammo\Enums\APIRecoveryType;
use sammo\Validator; use sammo\Validator;
use sammo\GameConst; use sammo\GameConst;
use sammo\KVStorage; use sammo\KVStorage;
@@ -39,7 +40,7 @@ class Bet extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN; return static::REQ_GAME_LOGIN;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
/** @var int */ /** @var int */
$bettingID = $this->args['bettingID']; $bettingID = $this->args['bettingID'];
+2 -1
View File
@@ -6,6 +6,7 @@ use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\DTO\BettingInfo; use sammo\DTO\BettingInfo;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage; use sammo\KVStorage;
use sammo\Util; use sammo\Util;
use sammo\Validator; use sammo\Validator;
@@ -32,7 +33,7 @@ class GetBettingDetail extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$db = DB::db(); $db = DB::db();
+2 -1
View File
@@ -6,6 +6,7 @@ use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\DTO\BettingInfo; use sammo\DTO\BettingInfo;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage; use sammo\KVStorage;
use sammo\Validator; use sammo\Validator;
@@ -29,7 +30,7 @@ class GetBettingList extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$db = DB::db(); $db = DB::db();
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Command;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Json; use sammo\Json;
use sammo\KVStorage; use sammo\KVStorage;
use sammo\TimeUtil; use sammo\TimeUtil;
@@ -23,7 +24,7 @@ class GetReservedCommand extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$db = DB::db(); $db = DB::db();
+2 -1
View File
@@ -4,6 +4,7 @@ namespace sammo\API\Command;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\Enums\APIRecoveryType;
use sammo\Validator; use sammo\Validator;
use function sammo\pushGeneralCommand; use function sammo\pushGeneralCommand;
@@ -31,7 +32,7 @@ class PushCommand extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$amount = $this->args['amount']; $amount = $this->args['amount'];
if($amount == 0){ if($amount == 0){
+2 -1
View File
@@ -4,6 +4,7 @@ namespace sammo\API\Command;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\Enums\APIRecoveryType;
use sammo\Validator; use sammo\Validator;
use function sammo\repeatGeneralCommand; use function sammo\repeatGeneralCommand;
@@ -31,7 +32,7 @@ class RepeatCommand extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$amount = $this->args['amount']; $amount = $this->args['amount'];
+2 -1
View File
@@ -4,6 +4,7 @@ namespace sammo\API\Command;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\Enums\APIRecoveryType;
use sammo\GameConst; use sammo\GameConst;
use sammo\Util; use sammo\Util;
use sammo\Validator; use sammo\Validator;
@@ -36,7 +37,7 @@ class ReserveBulkCommand extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$briefList = []; $briefList = [];
foreach ($this->args as $idx => $turn) { foreach ($this->args as $idx => $turn) {
+2 -1
View File
@@ -4,6 +4,7 @@ namespace sammo\API\Command;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\Enums\APIRecoveryType;
use sammo\GameConst; use sammo\GameConst;
use sammo\Util; use sammo\Util;
use sammo\Validator; use sammo\Validator;
@@ -33,7 +34,7 @@ class ReserveCommand extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$action = $this->args['action']; $action = $this->args['action'];
$turnList = $this->args['turnList']; $turnList = $this->args['turnList'];
@@ -4,6 +4,7 @@ namespace sammo\API\General;
use sammo\Command\General\che_거병; use sammo\Command\General\che_거병;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Validator; use sammo\Validator;
use sammo\Session; use sammo\Session;
@@ -30,7 +31,7 @@ class BuildNationCandidate extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN; return static::REQ_GAME_LOGIN;
} }
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$userID = $session->userID; $userID = $session->userID;
+2 -1
View File
@@ -4,6 +4,7 @@ namespace sammo\API\General;
use sammo\DB; use sammo\DB;
use sammo\DummyGeneral; use sammo\DummyGeneral;
use sammo\Enums\APIRecoveryType;
use sammo\GameConst; use sammo\GameConst;
use sammo\Session; use sammo\Session;
use sammo\General; use sammo\General;
@@ -26,7 +27,7 @@ class DieOnPrestart extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN; return static::REQ_GAME_LOGIN;
} }
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
//로그인 검사 //로그인 검사
$userID = $session->userID; $userID = $session->userID;
+2 -1
View File
@@ -4,6 +4,7 @@ namespace sammo\API\General;
use Ds\Set; use Ds\Set;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Validator; use sammo\Validator;
use sammo\Session; use sammo\Session;
@@ -33,7 +34,7 @@ class DropItem extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN; return static::REQ_GAME_LOGIN;
} }
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$generalID = $session->generalID; $generalID = $session->generalID;
$me = General::createGeneralObjFromDB($generalID); $me = General::createGeneralObjFromDB($generalID);
+3 -1
View File
@@ -1,6 +1,7 @@
<?php <?php
namespace sammo\API\General; namespace sammo\API\General;
use sammo\Enums\APIRecoveryType;
use sammo\General; use sammo\General;
use sammo\Session; use sammo\Session;
@@ -17,7 +18,8 @@ class GetCommandTable extends \sammo\BaseAPI{
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag){ public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$generalID = $session->generalID; $generalID = $session->generalID;
$me = General::createGeneralObjFromDB($generalID); $me = General::createGeneralObjFromDB($generalID);
$commandTable = getCommandTable($me); $commandTable = getCommandTable($me);
+1 -1
View File
@@ -527,7 +527,7 @@ class GetFrontInfo extends \sammo\BaseAPI
return $result; return $result;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$generalID = $session->generalID; $generalID = $session->generalID;
//NOTE: 이 경우 staticNation 정보를 조회한다. //NOTE: 이 경우 staticNation 정보를 조회한다.
+2 -1
View File
@@ -7,6 +7,7 @@ use sammo\ActionLogger;
use sammo\Auction; use sammo\Auction;
use sammo\CityConst; use sammo\CityConst;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Enums\RankColumn; use sammo\Enums\RankColumn;
use sammo\GameConst; use sammo\GameConst;
use sammo\GameUnitConst; use sammo\GameUnitConst;
@@ -120,7 +121,7 @@ class Join extends \sammo\BaseAPI
return $targetBonusPointCnt; return $targetBonusPointCnt;
} }
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$userID = $session->userID; $userID = $session->userID;
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Global;
use sammo\Session; use sammo\Session;
use sammo\DB; use sammo\DB;
use DateTimeInterface; use DateTimeInterface;
use sammo\Enums\APIRecoveryType;
use sammo\TurnExecutionHelper; use sammo\TurnExecutionHelper;
use sammo\UniqueConst; use sammo\UniqueConst;
@@ -20,7 +21,7 @@ class ExecuteEngine extends \sammo\BaseAPI
return static::NO_SESSION; return static::NO_SESSION;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$reqServerID = $this->args['serverID'] ?? null; $reqServerID = $this->args['serverID'] ?? null;
if($reqServerID && $reqServerID !== UniqueConst::$serverID){ if($reqServerID && $reqServerID !== UniqueConst::$serverID){
+2 -1
View File
@@ -3,6 +3,7 @@
namespace sammo\API\Global; namespace sammo\API\Global;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Json; use sammo\Json;
use sammo\KVStorage; use sammo\KVStorage;
use sammo\RootDB; use sammo\RootDB;
@@ -33,7 +34,7 @@ class GeneralList extends \sammo\BaseAPI
return static::REQ_LOGIN; return static::REQ_LOGIN;
} }
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$db = DB::db(); $db = DB::db();
$gameStor = KVStorage::getStorage($db, 'game_env'); $gameStor = KVStorage::getStorage($db, 'game_env');
+2 -1
View File
@@ -6,6 +6,7 @@ use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use Nette\Caching\Cache; use Nette\Caching\Cache;
use sammo\APICacheResult; use sammo\APICacheResult;
use sammo\Enums\APIRecoveryType;
use sammo\GameConst; use sammo\GameConst;
use sammo\MapRequest; use sammo\MapRequest;
use sammo\TimeUtil; use sammo\TimeUtil;
@@ -44,7 +45,7 @@ class GetCachedMap extends \sammo\BaseAPI
return static::NO_SESSION; return static::NO_SESSION;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
if (!class_exists('\\sammo\\UniqueConst')) { if (!class_exists('\\sammo\\UniqueConst')) {
return '서버 초기화되지 않음'; return '서버 초기화되지 않음';
+2 -1
View File
@@ -9,6 +9,7 @@ use Nette\Caching\Cache;
use RuntimeException; use RuntimeException;
use sammo\APICacheResult; use sammo\APICacheResult;
use sammo\CityConst; use sammo\CityConst;
use sammo\Enums\APIRecoveryType;
use sammo\GameConst; use sammo\GameConst;
use sammo\GameUnitConst; use sammo\GameUnitConst;
use sammo\Json; use sammo\Json;
@@ -279,7 +280,7 @@ class GetConst extends \sammo\BaseAPI
]; ];
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$cacheDir = $this->rootPath . '/data/file_cache'; $cacheDir = $this->rootPath . '/data/file_cache';
+2 -1
View File
@@ -4,6 +4,7 @@ namespace sammo\API\Global;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\Enums\APIRecoveryType;
use function sammo\getCurrentHistory; use function sammo\getCurrentHistory;
@@ -19,7 +20,7 @@ class GetCurrentHistory extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$history = getCurrentHistory(); $history = getCurrentHistory();
+2 -1
View File
@@ -3,6 +3,7 @@
namespace sammo\API\Global; namespace sammo\API\Global;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Json; use sammo\Json;
use sammo\KVStorage; use sammo\KVStorage;
use sammo\Session; use sammo\Session;
@@ -22,7 +23,7 @@ class GetDiplomacy extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$userID = $session->userID; $userID = $session->userID;
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Global;
use LDTO\DTO; use LDTO\DTO;
use sammo\APICacheResult; use sammo\APICacheResult;
use sammo\BaseAPI; use sammo\BaseAPI;
use sammo\Enums\APIRecoveryType;
use sammo\GlobalMenu; use sammo\GlobalMenu;
use sammo\Session; use sammo\Session;
@@ -19,7 +20,7 @@ class GetGlobalMenu extends BaseAPI
return null; return null;
} }
function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag) function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
if ($reqEtag !== null) { if ($reqEtag !== null) {
$version = GlobalMenu::version; $version = GlobalMenu::version;
+2 -1
View File
@@ -6,6 +6,7 @@ use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\APICacheResult; use sammo\APICacheResult;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Json; use sammo\Json;
use sammo\UniqueConst; use sammo\UniqueConst;
use sammo\Util; use sammo\Util;
@@ -127,7 +128,7 @@ class GetHistory extends \sammo\BaseAPI
return $cachedHash; return $cachedHash;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$checkCache = $this->checkCached($reqEtag); $checkCache = $this->checkCached($reqEtag);
if ($checkCache) { if ($checkCache) {
+2 -1
View File
@@ -4,6 +4,7 @@ namespace sammo\API\Global;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\Enums\APIRecoveryType;
use sammo\MapRequest; use sammo\MapRequest;
use sammo\Validator; use sammo\Validator;
@@ -27,7 +28,7 @@ class GetMap extends \sammo\BaseAPI
return static::REQ_LOGIN | static::REQ_READ_ONLY; return static::REQ_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
return getWorldMap(new MapRequest([ return getWorldMap(new MapRequest([
'neutralView' => !!($this->args['neutralView'] ?? false), 'neutralView' => !!($this->args['neutralView'] ?? false),
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Global;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use function sammo\getAllNationStaticInfo; use function sammo\getAllNationStaticInfo;
use function sammo\getNationStaticInfo; use function sammo\getNationStaticInfo;
@@ -21,7 +22,7 @@ class GetNationList extends \sammo\BaseAPI
return static::REQ_LOGIN | static::REQ_READ_ONLY; return static::REQ_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$db = DB::db(); $db = DB::db();
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Global;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage; use sammo\KVStorage;
use sammo\Util; use sammo\Util;
use sammo\Validator; use sammo\Validator;
@@ -72,7 +73,7 @@ class GetRecentRecord extends \sammo\BaseAPI
return $history; return $history;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$db = DB::db(); $db = DB::db();
@@ -5,6 +5,7 @@ namespace sammo\API\InheritAction;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Enums\RankColumn; use sammo\Enums\RankColumn;
use sammo\GameConst; use sammo\GameConst;
use sammo\General; use sammo\General;
@@ -40,7 +41,7 @@ class BuyHiddenBuff extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN; return static::REQ_GAME_LOGIN;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$userID = $session->userID; $userID = $session->userID;
$generalID = $session->generalID; $generalID = $session->generalID;
@@ -5,6 +5,7 @@ namespace sammo\API\InheritAction;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Enums\RankColumn; use sammo\Enums\RankColumn;
use sammo\GameConst; use sammo\GameConst;
use sammo\General; use sammo\General;
@@ -25,7 +26,7 @@ class BuyRandomUnique extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN; return static::REQ_GAME_LOGIN;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$userID = $session->userID; $userID = $session->userID;
$generalID = $session->generalID; $generalID = $session->generalID;
+2 -1
View File
@@ -4,6 +4,7 @@ namespace sammo\API\InheritAction;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Session; use sammo\Session;
use sammo\Validator; use sammo\Validator;
use sammo\Util; use sammo\Util;
@@ -25,7 +26,7 @@ class GetMoreLog extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$userID = $session->userID; $userID = $session->userID;
$lastID = $this->args['lastID']; $lastID = $this->args['lastID'];
@@ -5,6 +5,7 @@ namespace sammo\API\InheritAction;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Enums\RankColumn; use sammo\Enums\RankColumn;
use sammo\GameConst; use sammo\GameConst;
use sammo\General; use sammo\General;
@@ -25,7 +26,7 @@ class ResetSpecialWar extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN; return static::REQ_GAME_LOGIN;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$userID = $session->userID; $userID = $session->userID;
$generalID = $session->generalID; $generalID = $session->generalID;
@@ -6,6 +6,7 @@ use DateTimeImmutable;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Enums\RankColumn; use sammo\Enums\RankColumn;
use sammo\GameConst; use sammo\GameConst;
use sammo\General; use sammo\General;
@@ -30,7 +31,7 @@ class ResetTurnTime extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN; return static::REQ_GAME_LOGIN;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$userID = $session->userID; $userID = $session->userID;
$generalID = $session->generalID; $generalID = $session->generalID;
@@ -5,6 +5,7 @@ namespace sammo\API\InheritAction;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Enums\RankColumn; use sammo\Enums\RankColumn;
use sammo\GameConst; use sammo\GameConst;
use sammo\General; use sammo\General;
@@ -36,7 +37,7 @@ class SetNextSpecialWar extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN; return static::REQ_GAME_LOGIN;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$userID = $session->userID; $userID = $session->userID;
$generalID = $session->generalID; $generalID = $session->generalID;
@@ -6,6 +6,7 @@ use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\DiplomaticMessage; use sammo\DiplomaticMessage;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage; use sammo\KVStorage;
use sammo\Message; use sammo\Message;
use sammo\Validator; use sammo\Validator;
@@ -31,7 +32,7 @@ class DecideMessageResponse extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN; return static::REQ_GAME_LOGIN;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$msgID = $this->args['msgID']; $msgID = $this->args['msgID'];
$msgResponse = $this->args['response']; $msgResponse = $this->args['response'];
+2 -1
View File
@@ -4,6 +4,7 @@ namespace sammo\API\Message;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\Enums\APIRecoveryType;
use sammo\Message; use sammo\Message;
use sammo\Validator; use sammo\Validator;
@@ -27,7 +28,7 @@ class DeleteMessage extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN; return static::REQ_GAME_LOGIN;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$msgID = $this->args['msgID']; $msgID = $this->args['msgID'];
+2 -1
View File
@@ -4,6 +4,7 @@ namespace sammo\API\Message;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\Enums\APIRecoveryType;
use function sammo\getMailboxList; use function sammo\getMailboxList;
@@ -18,7 +19,7 @@ class GetContactList extends \sammo\BaseAPI{
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
if(!$session->generalID){ if(!$session->generalID){
return [ return [
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Message;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Enums\MessageType; use sammo\Enums\MessageType;
use sammo\Json; use sammo\Json;
use sammo\Message; use sammo\Message;
@@ -65,7 +66,7 @@ class GetOldMessage extends \sammo\BaseAPI
} }
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$this->delayFrequentCall($session); $this->delayFrequentCall($session);
$session->setReadOnly(); $session->setReadOnly();
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Message;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Enums\MessageType; use sammo\Enums\MessageType;
use sammo\Json; use sammo\Json;
use sammo\Message; use sammo\Message;
@@ -61,7 +62,7 @@ class GetRecentMessage extends \sammo\BaseAPI
} }
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$this->delayFrequentCall($session); $this->delayFrequentCall($session);
$session->setReadOnly(); $session->setReadOnly();
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Message;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Enums\MessageType; use sammo\Enums\MessageType;
use sammo\Message; use sammo\Message;
use sammo\MessageTarget; use sammo\MessageTarget;
@@ -145,7 +146,7 @@ class SendMessage extends \sammo\BaseAPI
return $msg; return $msg;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$userID = $session->userID; $userID = $session->userID;
$mailbox = $this->args['mailbox']; $mailbox = $this->args['mailbox'];
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Misc;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\AppConf; use sammo\AppConf;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage; use sammo\KVStorage;
use sammo\RootDB; use sammo\RootDB;
use sammo\TimeUtil; use sammo\TimeUtil;
@@ -31,7 +32,7 @@ class UploadImage extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$imageData = base64_decode($this->args['imageData'], true); $imageData = base64_decode($this->args['imageData'], true);
if ($imageData === false) { if ($imageData === false) {
+4 -3
View File
@@ -4,6 +4,7 @@ namespace sammo\API\Nation;
use ArrayObject; use ArrayObject;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\General; use sammo\General;
use sammo\Session; use sammo\Session;
use sammo\Util; use sammo\Util;
@@ -133,7 +134,7 @@ class GeneralList extends \sammo\BaseAPI
return 1; return 1;
} }
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
increaseRefresh("세력장수", 1); increaseRefresh("세력장수", 1);
@@ -188,14 +189,14 @@ class GeneralList extends \sammo\BaseAPI
foreach($troops as $troop){ foreach($troops as $troop){
$reservedCommandTargetGeneralIDList[$troop['id']] = $troop['id']; $reservedCommandTargetGeneralIDList[$troop['id']] = $troop['id'];
} }
if($reservedCommandTargetGeneralIDList){ if($reservedCommandTargetGeneralIDList){
$rawTurnList = $db->query( $rawTurnList = $db->query(
'SELECT general_id, turn_idx, action, arg, brief FROM general_turn WHERE general_id IN %li AND turn_idx < 5 ORDER BY general_id asc, turn_idx asc', 'SELECT general_id, turn_idx, action, arg, brief FROM general_turn WHERE general_id IN %li AND turn_idx < 5 ORDER BY general_id asc, turn_idx asc',
array_values($reservedCommandTargetGeneralIDList) array_values($reservedCommandTargetGeneralIDList)
); );
foreach ($rawTurnList as $rawTurn) { foreach ($rawTurnList as $rawTurn) {
[ [
'general_id' => $generalID, 'general_id' => $generalID,
+2 -1
View File
@@ -3,6 +3,7 @@
namespace sammo\API\Nation; namespace sammo\API\Nation;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Session; use sammo\Session;
use sammo\Validator; use sammo\Validator;
@@ -99,7 +100,7 @@ class GetGeneralLog extends \sammo\BaseAPI
return $this->args['generalID']; return $this->args['generalID'];
} }
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$userID = $session->userID; $userID = $session->userID;
+2 -1
View File
@@ -3,6 +3,7 @@
namespace sammo\API\Nation; namespace sammo\API\Nation;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\GameConst; use sammo\GameConst;
use sammo\General; use sammo\General;
use sammo\KVStorage; use sammo\KVStorage;
@@ -40,7 +41,7 @@ class GetNationInfo extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$userID = $session->userID; $userID = $session->userID;
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Nation;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage; use sammo\KVStorage;
use sammo\Validator; use sammo\Validator;
use sammo\WebUtil; use sammo\WebUtil;
@@ -34,7 +35,7 @@ class SetBill extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$amount = $this->args['amount']; $amount = $this->args['amount'];
$userID = $session->userID; $userID = $session->userID;
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Nation;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage; use sammo\KVStorage;
use sammo\Validator; use sammo\Validator;
use sammo\WebUtil; use sammo\WebUtil;
@@ -32,7 +33,7 @@ class SetBlockScout extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$value = $this->args['value']; $value = $this->args['value'];
$userID = $session->userID; $userID = $session->userID;
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Nation;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage; use sammo\KVStorage;
use sammo\Validator; use sammo\Validator;
use sammo\WebUtil; use sammo\WebUtil;
@@ -32,7 +33,7 @@ class SetBlockWar extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$value = $this->args['value']; $value = $this->args['value'];
$userID = $session->userID; $userID = $session->userID;
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Nation;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage; use sammo\KVStorage;
use sammo\TimeUtil; use sammo\TimeUtil;
use sammo\Validator; use sammo\Validator;
@@ -32,7 +33,7 @@ class SetNotice extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$msg = $this->args['msg']; $msg = $this->args['msg'];
$userID = $session->userID; $userID = $session->userID;
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Nation;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage; use sammo\KVStorage;
use sammo\Validator; use sammo\Validator;
use sammo\WebUtil; use sammo\WebUtil;
@@ -34,7 +35,7 @@ class SetRate extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$amount = $this->args['amount']; $amount = $this->args['amount'];
$userID = $session->userID; $userID = $session->userID;
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Nation;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage; use sammo\KVStorage;
use sammo\Validator; use sammo\Validator;
use sammo\WebUtil; use sammo\WebUtil;
@@ -31,7 +32,7 @@ class SetScoutMsg extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$msg = $this->args['msg']; $msg = $this->args['msg'];
$userID = $session->userID; $userID = $session->userID;
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Nation;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage; use sammo\KVStorage;
use sammo\Validator; use sammo\Validator;
use sammo\WebUtil; use sammo\WebUtil;
@@ -34,7 +35,7 @@ class SetSecretLimit extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$amount = $this->args['amount']; $amount = $this->args['amount'];
$userID = $session->userID; $userID = $session->userID;
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Nation;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\StringUtil; use sammo\StringUtil;
use sammo\Validator; use sammo\Validator;
@@ -34,7 +35,7 @@ class SetTroopName extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$userID = $session->userID; $userID = $session->userID;
$db = DB::db(); $db = DB::db();
@@ -5,6 +5,7 @@ namespace sammo\API\NationCommand;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\GameConst; use sammo\GameConst;
use sammo\General; use sammo\General;
use sammo\Json; use sammo\Json;
@@ -29,7 +30,7 @@ class GetReservedCommand extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$db = DB::db(); $db = DB::db();
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\NationCommand;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Validator; use sammo\Validator;
use function sammo\pushNationCommand; use function sammo\pushNationCommand;
@@ -32,7 +33,7 @@ class PushCommand extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$amount = $this->args['amount']; $amount = $this->args['amount'];
if($amount == 0){ if($amount == 0){
@@ -5,6 +5,7 @@ namespace sammo\API\NationCommand;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Validator; use sammo\Validator;
use function sammo\repeatNationCommand; use function sammo\repeatNationCommand;
@@ -32,7 +33,7 @@ class RepeatCommand extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$amount = $this->args['amount']; $amount = $this->args['amount'];
@@ -4,6 +4,7 @@ namespace sammo\API\NationCommand;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\Enums\APIRecoveryType;
use sammo\GameConst; use sammo\GameConst;
use sammo\Util; use sammo\Util;
use sammo\Validator; use sammo\Validator;
@@ -36,7 +37,7 @@ class ReserveBulkCommand extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$briefList = []; $briefList = [];
foreach ($this->args as $idx => $turn) { foreach ($this->args as $idx => $turn) {
@@ -4,6 +4,7 @@ namespace sammo\API\NationCommand;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\Enums\APIRecoveryType;
use sammo\GameConst; use sammo\GameConst;
use sammo\Util; use sammo\Util;
use sammo\Validator; use sammo\Validator;
@@ -33,7 +34,7 @@ class ReserveCommand extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$action = $this->args['action']; $action = $this->args['action'];
$turnList = $this->args['turnList']; $turnList = $this->args['turnList'];
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Troop;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
class ExitTroop extends \sammo\BaseAPI class ExitTroop extends \sammo\BaseAPI
{ {
@@ -18,7 +19,7 @@ class ExitTroop extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN; return static::REQ_GAME_LOGIN;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$generalID = $session->generalID; $generalID = $session->generalID;
$db = DB::db(); $db = DB::db();
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Troop;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\StringUtil; use sammo\StringUtil;
use sammo\Validator; use sammo\Validator;
@@ -29,7 +30,7 @@ class JoinTroop extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN; return static::REQ_GAME_LOGIN;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$userID = $session->userID; $userID = $session->userID;
$troopID = $this->args['troopID']; $troopID = $this->args['troopID'];
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Troop;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Validator; use sammo\Validator;
class KickFromTroop extends \sammo\BaseAPI class KickFromTroop extends \sammo\BaseAPI
@@ -31,7 +32,7 @@ class KickFromTroop extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN; return static::REQ_GAME_LOGIN;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$generalID = $this->args['generalID']; $generalID = $this->args['generalID'];
$db = DB::db(); $db = DB::db();
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Troop;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\StringUtil; use sammo\StringUtil;
use sammo\Validator; use sammo\Validator;
@@ -29,7 +30,7 @@ class NewTroop extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN; return static::REQ_GAME_LOGIN;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$userID = $session->userID; $userID = $session->userID;
$troopName = StringUtil::neutralize($this->args['troopName']); $troopName = StringUtil::neutralize($this->args['troopName']);
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Troop;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\StringUtil; use sammo\StringUtil;
use sammo\Validator; use sammo\Validator;
@@ -33,7 +34,7 @@ class SetTroopName extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY; return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$userID = $session->userID; $userID = $session->userID;
$db = DB::db(); $db = DB::db();
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Vote;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\DTO\VoteComment; use sammo\DTO\VoteComment;
use sammo\Enums\APIRecoveryType;
use sammo\General; use sammo\General;
use sammo\Session; use sammo\Session;
use sammo\TimeUtil; use sammo\TimeUtil;
@@ -33,7 +34,7 @@ class AddComment extends \sammo\BaseAPI
return null; return null;
} }
function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$voteID = $this->args['voteID']; $voteID = $this->args['voteID'];
$text = mb_substr($this->args['text'], 0, 200); $text = mb_substr($this->args['text'], 0, 200);
+2 -1
View File
@@ -7,6 +7,7 @@ use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\DTO\VoteComment; use sammo\DTO\VoteComment;
use sammo\DTO\VoteInfo; use sammo\DTO\VoteInfo;
use sammo\Enums\APIRecoveryType;
use sammo\Json; use sammo\Json;
use sammo\KVStorage; use sammo\KVStorage;
use sammo\Validator; use sammo\Validator;
@@ -30,7 +31,7 @@ class GetVoteDetail extends \sammo\BaseAPI
return static::REQ_LOGIN | static::REQ_READ_ONLY; return static::REQ_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$voteID = $this->args['voteID']; $voteID = $this->args['voteID'];
$db = DB::db(); $db = DB::db();
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Vote;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\DTO\VoteInfo; use sammo\DTO\VoteInfo;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage; use sammo\KVStorage;
use sammo\Session; use sammo\Session;
@@ -21,7 +22,7 @@ class GetVoteList extends \sammo\BaseAPI
return static::REQ_LOGIN | static::REQ_READ_ONLY; return static::REQ_LOGIN | static::REQ_READ_ONLY;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$db = DB::db(); $db = DB::db();
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Vote;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\DTO\VoteInfo; use sammo\DTO\VoteInfo;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage; use sammo\KVStorage;
use sammo\Session; use sammo\Session;
use sammo\TimeUtil; use sammo\TimeUtil;
@@ -52,7 +53,7 @@ class NewVote extends \sammo\BaseAPI
$voteStor->setValue("vote_{$voteID}", $lastVoteInfo->toArray()); $voteStor->setValue("vote_{$voteID}", $lastVoteInfo->toArray());
} }
function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$isVoteAdmin = in_array('vote', $session->acl[DB::prefix()] ?? []); $isVoteAdmin = in_array('vote', $session->acl[DB::prefix()] ?? []);
$isVoteAdmin = $isVoteAdmin || $session->userGrade >= 5; $isVoteAdmin = $isVoteAdmin || $session->userGrade >= 5;
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Vote;
use DateTimeInterface; use DateTimeInterface;
use sammo\DB; use sammo\DB;
use sammo\DTO\VoteInfo; use sammo\DTO\VoteInfo;
use sammo\Enums\APIRecoveryType;
use sammo\General; use sammo\General;
use sammo\Json; use sammo\Json;
use sammo\KVStorage; use sammo\KVStorage;
@@ -42,7 +43,7 @@ class Vote extends \sammo\BaseAPI
return null; return null;
} }
function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$voteID = $this->args['voteID']; $voteID = $this->args['voteID'];
+4 -2
View File
@@ -5,7 +5,9 @@ namespace sammo\API\Login;
use DateTime; use DateTime;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\APIHelper;
use sammo\BaseAPI; use sammo\BaseAPI;
use sammo\Enums\APIRecoveryType;
use sammo\Json; use sammo\Json;
use sammo\KakaoUtil; use sammo\KakaoUtil;
use sammo\RootDB; use sammo\RootDB;
@@ -78,7 +80,7 @@ class LoginByID extends \sammo\BaseAPI
return [$tokenID, $token]; return [$tokenID, $token];
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$RootDB = RootDB::db(); $RootDB = RootDB::db();
if ($session->isLoggedIn()) { if ($session->isLoggedIn()) {
@@ -143,7 +145,7 @@ class LoginByID extends \sammo\BaseAPI
return [ return [
'result' => false, 'result' => false,
'reqOTP' => $oauthReqOTP, 'reqOTP' => $oauthReqOTP,
'reason' => $oauthFailReason 'reason' => $oauthFailReason,
]; ];
} }
} }
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Login;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\BaseAPI; use sammo\BaseAPI;
use sammo\Enums\APIRecoveryType;
use sammo\Json; use sammo\Json;
use sammo\KakaoUtil; use sammo\KakaoUtil;
use sammo\RootDB; use sammo\RootDB;
@@ -36,7 +37,7 @@ class LoginByToken extends LoginByID
return null; return null;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{ {
$loginNonce = $session->loginNonce ?? null; $loginNonce = $session->loginNonce ?? null;
$loginNonceExpired = $session->loginNonceExpired ?? null; $loginNonceExpired = $session->loginNonceExpired ?? null;
+10 -7
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Login;
use sammo\Session; use sammo\Session;
use DateTimeInterface; use DateTimeInterface;
use sammo\BaseAPI; use sammo\BaseAPI;
use sammo\Enums\APIRecoveryType;
use sammo\Json; use sammo\Json;
use sammo\KakaoUtil; use sammo\KakaoUtil;
use sammo\RootDB; use sammo\RootDB;
@@ -12,9 +13,11 @@ use sammo\TimeUtil;
use sammo\Util; use sammo\Util;
use sammo\Validator; use sammo\Validator;
class ReqNonce extends BaseAPI{ class ReqNonce extends BaseAPI
{
public function getRequiredSessionMode(): int { public function getRequiredSessionMode(): int
{
return \sammo\BaseAPI::NO_LOGIN; return \sammo\BaseAPI::NO_LOGIN;
} }
@@ -23,15 +26,15 @@ class ReqNonce extends BaseAPI{
return null; return null;
} }
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) { public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$loginNonce = Util::randomStr(16); $loginNonce = Util::randomStr(16);
$loginNonceExpired = TimeUtil::nowAddSeconds(2); $loginNonceExpired = TimeUtil::nowAddSeconds(2);
$session->loginNonce = $loginNonce; $session->loginNonce = $loginNonce;
$session->loginNonceExpired = $loginNonceExpired; $session->loginNonceExpired = $loginNonceExpired;
return [ return [
'result'=>true, 'result' => true,
'loginNonce'=>$loginNonce, 'loginNonce' => $loginNonce,
]; ];
} }
}
}
+7 -4
View File
@@ -2,6 +2,8 @@
namespace sammo; namespace sammo;
use sammo\Enums\APIRecoveryType;
abstract class BaseAPI abstract class BaseAPI
{ {
const NO_SESSION = -1; const NO_SESSION = -1;
@@ -13,7 +15,8 @@ abstract class BaseAPI
static array $sensitiveArgs = []; static array $sensitiveArgs = [];
static bool $allowExternalAPI = true; static bool $allowExternalAPI = true;
public function getFilteredArgs(): array { public function getFilteredArgs(): array
{
$filteredArgs = $this->args; $filteredArgs = $this->args;
foreach (static::$sensitiveArgs as $argName) { foreach (static::$sensitiveArgs as $argName) {
if (isset($filteredArgs[$argName])) { if (isset($filteredArgs[$argName])) {
@@ -33,10 +36,10 @@ abstract class BaseAPI
abstract public function getRequiredSessionMode(): int; abstract public function getRequiredSessionMode(): int;
abstract function validateArgs(): ?string; abstract function validateArgs(): ?string;
/** @return null|string|array */ abstract function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType;
abstract function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag);
public function tryCache():?APICacheResult{ public function tryCache(): ?APICacheResult
{
return null; return null;
} }
} }