mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-06-16 05:55:20 +00:00
24 lines
691 B
C++
24 lines
691 B
C++
#include "ProtocolBase.h"
|
|
|
|
#include "Protocol10.h"
|
|
|
|
const std::map<uint8_t, ProtocolBase::Constructor> ProtocolBase::constructors = {
|
|
{10, std::make_unique<Protocol10>},
|
|
};
|
|
|
|
const uint32_t ProtocolBase::actual_version = 10;
|
|
const uint32_t ProtocolBase::minimal_version = 10;
|
|
|
|
std::unique_ptr<ProtocolBase> ProtocolBase::CreateProtocol(uint32_t version) {
|
|
auto protocol = constructors.find(version);
|
|
if (protocol == constructors.end())
|
|
return nullptr;
|
|
return protocol->second();
|
|
}
|
|
|
|
bool ProtocolBase::IsSupported(uint32_t version) {
|
|
return constructors.find(version) != constructors.end();
|
|
}
|
|
|
|
ProtocolBase::ProtocolBase(uint32_t version) : version(version) {}
|