summaryrefslogtreecommitdiff
path: root/battleNetApi/src/tokenPool.cpp
blob: 08770e86fc16d3beac18fbcc778642fd13c84f03 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <tokenPool.hpp>

std::optional<Token> TokenPool::availableToken() {
    if (aTokenContainer.empty()) {
        return std::nullopt;
    }
    Token aOutputToken{aTokenContainer.front()};
    aTokenContainer.pop();
    return aOutputToken;
}

void TokenPool::feedTokenSource(const std::string &iJsonPath) { aTokenContainer.emplace(iJsonPath); }

void TokenPool::feedTokenSource(const std::span<std::string> &iJsonPaths) {
    for (const std::string &iJsonPath : iJsonPaths) {
        feedTokenSource(iJsonPath);
    }
}