summaryrefslogtreecommitdiff
path: root/battleNetApi/src/tokenPool.cpp
blob: b74aae5f2eaded9f702616f33703372c94634d90 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#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);
    }
}