package org.molgenis.bootstrap; import org.molgenis.framework.MolgenisUpgrade; import org.molgenis.framework.MolgenisUpgradeService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import static java.util.Objects.requireNonNull; /** * Registers and executes {@link MolgenisUpgrade upgrades} during application bootstrapping. */ @Component public class MolgenisUpgradeBootstrapper { private final MolgenisUpgradeService upgradeService; @Autowired public MolgenisUpgradeBootstrapper(MolgenisUpgradeService upgradeService) { this.upgradeService = requireNonNull(upgradeService); } void bootstrap() { // add upgrade steps here // upgradeService.addUpgrade(new Step1Xxx(...)); // upgradeService.addUpgrade(new Step2Yyy(...)); // upgradeService.addUpgrade(new Step3Zzz(...)); upgradeService.upgrade(); } }