github.com/cosmos/cosmos-sdk@v0.50.10/x/gov/keeper/migrations.go (about)

     1  package keeper
     2  
     3  import (
     4  	sdk "github.com/cosmos/cosmos-sdk/types"
     5  	"github.com/cosmos/cosmos-sdk/x/gov/exported"
     6  	v2 "github.com/cosmos/cosmos-sdk/x/gov/migrations/v2"
     7  	v3 "github.com/cosmos/cosmos-sdk/x/gov/migrations/v3"
     8  	v4 "github.com/cosmos/cosmos-sdk/x/gov/migrations/v4"
     9  	v5 "github.com/cosmos/cosmos-sdk/x/gov/migrations/v5"
    10  )
    11  
    12  // Migrator is a struct for handling in-place store migrations.
    13  type Migrator struct {
    14  	keeper         *Keeper
    15  	legacySubspace exported.ParamSubspace
    16  }
    17  
    18  // NewMigrator returns a new Migrator.
    19  func NewMigrator(keeper *Keeper, legacySubspace exported.ParamSubspace) Migrator {
    20  	return Migrator{
    21  		keeper:         keeper,
    22  		legacySubspace: legacySubspace,
    23  	}
    24  }
    25  
    26  // Migrate1to2 migrates from version 1 to 2.
    27  func (m Migrator) Migrate1to2(ctx sdk.Context) error {
    28  	return v2.MigrateStore(ctx, m.keeper.storeService, m.keeper.cdc)
    29  }
    30  
    31  // Migrate2to3 migrates from version 2 to 3.
    32  func (m Migrator) Migrate2to3(ctx sdk.Context) error {
    33  	return v3.MigrateStore(ctx, m.keeper.storeService, m.keeper.cdc)
    34  }
    35  
    36  // Migrate3to4 migrates from version 3 to 4.
    37  func (m Migrator) Migrate3to4(ctx sdk.Context) error {
    38  	return v4.MigrateStore(ctx, m.keeper.storeService, m.legacySubspace, m.keeper.cdc)
    39  }
    40  
    41  // Migrate4to5 migrates from version 4 to 5.
    42  func (m Migrator) Migrate4to5(ctx sdk.Context) error {
    43  	return v5.MigrateStore(ctx, m.keeper.storeService, m.keeper.cdc, m.keeper.Constitution)
    44  }