diff options
Diffstat (limited to 'src/main/java/dev/dnpm/oshelper/migration/MigrationUtils.java')
| -rw-r--r-- | src/main/java/dev/dnpm/oshelper/migration/MigrationUtils.java | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/main/java/dev/dnpm/oshelper/migration/MigrationUtils.java b/src/main/java/dev/dnpm/oshelper/migration/MigrationUtils.java index bde2612..fd17f22 100644 --- a/src/main/java/dev/dnpm/oshelper/migration/MigrationUtils.java +++ b/src/main/java/dev/dnpm/oshelper/migration/MigrationUtils.java @@ -24,6 +24,7 @@ import java.util.List; import java.util.stream.Collectors; import org.springframework.core.io.Resource; import org.springframework.core.io.support.ResourcePatternResolver; +import org.springframework.dao.EmptyResultDataAccessException; import org.springframework.jdbc.core.JdbcTemplate; /** @@ -39,6 +40,19 @@ class MigrationUtils { (rs, rowNum) -> rs.getString("update_script")); } + static boolean requiredFormRevisionAvailable( + JdbcTemplate jdbcTemplate, String formName, String minRev, String maxRev) { + try { + return 1 + == jdbcTemplate.queryForObject( + "SELECT COUNT(*) FROM data_form WHERE name = ? AND revision >= ? AND revision <= ?", + new Object[] {formName, minRev, maxRev}, + Integer.class); + } catch (EmptyResultDataAccessException e) { + return false; + } + } + static List<String> getDatabaseMigrationScripts(ResourcePatternResolver resourcePatternResolver) throws IOException { var resources = |
