Files
scylladb/sstables/sstable_version.hh

43 lines
1.2 KiB
C++

/*
* Copyright (C) 2018-present ScyllaDB
*
*/
/*
* This file is part of Scylla.
*
* Scylla is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Scylla is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Scylla. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "types.hh"
#include "version.hh"
#include "component_type.hh"
namespace sstables {
class sstable_version_constants {
public:
using component_map_t = std::unordered_map<component_type, sstring, enum_hash<component_type>>;
static const sstring TOC_SUFFIX;
static const sstring TEMPORARY_TOC_SUFFIX;
static const component_map_t& get_component_map(sstable_version_types);
sstable_version_constants() = delete;
protected:
static component_map_t create_component_map();
};
}