sgns::IMigrationStep¶
Interface for a migration step between two schema versions.
#include <IMigrationStep.hpp>
Inherited by sgns::Migration0_2_0To1_0_0, sgns::Migration1_0_0To3_4_0, sgns::Migration3_4_0To3_5_0, sgns::Migration3_5_0To3_5_1, sgns::Migration3_5_1To3_6_0
Public Functions¶
| Name | |
|---|---|
| virtual | ~IMigrationStep() =default |
| virtual std::string | FromVersion() const =0 Get the version from which the migration starts. |
| virtual std::string | ToVersion() const =0 Get the version to which the migration applies. |
| virtual outcome::result< void > | Init() =0 Initializes internal variables after constructor. |
| virtual outcome::result< void > | Apply() =0 Execute the migration logic. |
| virtual outcome::result< void > | ShutDown() =0 Shuts down internal variables. |
| virtual outcome::result< bool > | IsRequired() const =0 Check if migration is required. |
| std::tuple< int, int, int > | ParseVersion(const std::string & version) const |
| bool | IsVersionLessThan(const std::string & lhs, const std::string & rhs) const |
Public Functions Documentation¶
function ~IMigrationStep¶
function FromVersion¶
Get the version from which the migration starts.
Return: The source version string.
Reimplemented by: sgns::Migration0_2_0To1_0_0::FromVersion, sgns::Migration1_0_0To3_4_0::FromVersion, sgns::Migration3_4_0To3_5_0::FromVersion, sgns::Migration3_5_0To3_5_1::FromVersion, sgns::Migration3_5_1To3_6_0::FromVersion
function ToVersion¶
Get the version to which the migration applies.
Return: The target version string.
Reimplemented by: sgns::Migration0_2_0To1_0_0::ToVersion, sgns::Migration1_0_0To3_4_0::ToVersion, sgns::Migration3_4_0To3_5_0::ToVersion, sgns::Migration3_5_0To3_5_1::ToVersion, sgns::Migration3_5_1To3_6_0::ToVersion
function Init¶
Initializes internal variables after constructor.
Return: Outcome of the operation
Reimplemented by: sgns::Migration0_2_0To1_0_0::Init, sgns::Migration1_0_0To3_4_0::Init, sgns::Migration3_4_0To3_5_0::Init, sgns::Migration3_5_0To3_5_1::Init, sgns::Migration3_5_1To3_6_0::Init
function Apply¶
Execute the migration logic.
Return: Outcome of the operation.
Reimplemented by: sgns::Migration0_2_0To1_0_0::Apply, sgns::Migration1_0_0To3_4_0::Apply, sgns::Migration3_4_0To3_5_0::Apply, sgns::Migration3_5_0To3_5_1::Apply, sgns::Migration3_5_1To3_6_0::Apply
function ShutDown¶
Shuts down internal variables.
Return: Outcome of the operation
Reimplemented by: sgns::Migration0_2_0To1_0_0::ShutDown, sgns::Migration1_0_0To3_4_0::ShutDown, sgns::Migration3_4_0To3_5_0::ShutDown, sgns::Migration3_5_0To3_5_1::ShutDown, sgns::Migration3_5_1To3_6_0::ShutDown
function IsRequired¶
Check if migration is required.
Return: outcome::result
Reimplemented by: sgns::Migration0_2_0To1_0_0::IsRequired, sgns::Migration1_0_0To3_4_0::IsRequired, sgns::Migration3_4_0To3_5_0::IsRequired, sgns::Migration3_5_0To3_5_1::IsRequired, sgns::Migration3_5_1To3_6_0::IsRequired
function ParseVersion¶
function IsVersionLessThan¶
Updated on 2026-03-04 at 13:10:43 -0800