本文整理汇总了Java中org.flywaydb.core.api.MigrationType类的典型用法代码示例。如果您正苦于以下问题:Java MigrationType类的具体用法?Java MigrationType怎么用?Java MigrationType使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
MigrationType类属于org.flywaydb.core.api包,在下文中一共展示了MigrationType类的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: insertIntoSchemaVersion
import org.flywaydb.core.api.MigrationType; //导入依赖的package包/类
/** Insere une version
* @param installedRank
* @param scriptFile
* @param installedOn
* @param executionTime
* @throws SQLException
* @throws MigrationException
*/
private void insertIntoSchemaVersion(int installedRank, String scriptFile, LocalDateTime installedOn, int executionTime) throws SQLException{
String path = "/db/migration/";
Pair<MigrationVersion, String> info =
MigrationInfoHelper.extractVersionAndDescription(scriptFile, flywayConfiguration.getSqlMigrationPrefix(), flywayConfiguration.getSqlMigrationSeparator(), flywayConfiguration.getSqlMigrationSuffix(), false);
ResolvedMigrationImpl migration = new ResolvedMigrationImpl();
migration.setVersion(info.getLeft());
migration.setDescription(info.getRight());
migration.setScript(scriptFile);
migration.setType(MigrationType.SQL);
String query = "INSERT INTO "+dbSupport.quote(flywayConfiguration.getTable())
+" VALUES ("+installedRank
+ ", '"+migration.getVersion()+"'"
+ ", '"+migration.getDescription()+"'"
+ ", '"+MigrationType.SQL+"'"
+ ", '"+scriptFile+"'"
+ ", "+calculateChecksum(path,scriptFile)
+ ", 'ecandidat'"
+ ", '" + installedOn.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) +"'"
+ ", "+executionTime
+ ", 1)";
jdbcTemplate.executeStatement(query);
}
开发者ID:EsupPortail,项目名称:esup-ecandidat,代码行数:33,代码来源:FlywayCallbackMigration.java
示例2: extractMigrationInfo
import org.flywaydb.core.api.MigrationType; //导入依赖的package包/类
/**
* Extracts the migration info for this resource.
*
* @param resource The resource to analyse.
* @return The migration info.
*/
private ResolvedMigrationImpl extractMigrationInfo(Resource resource) {
ResolvedMigrationImpl migration = new ResolvedMigrationImpl();
Pair<MigrationVersion, String> info =
MigrationInfoHelper.extractVersionAndDescription(resource.getFilename(),
shellMigrationPrefix, shellMigrationSeparator, shellMigrationSuffix, false);
migration.setVersion(info.getLeft());
migration.setDescription(info.getRight());
migration.setScript(extractScriptName(resource));
migration.setChecksum(calculateChecksum(resource.loadAsBytes()));
migration.setType(MigrationType.CUSTOM);
return migration;
}
开发者ID:hortonworks,项目名称:registry,代码行数:22,代码来源:ShellMigrationResolver.java
示例3: getType
import org.flywaydb.core.api.MigrationType; //导入依赖的package包/类
public MigrationType getType() {
return this.type;
}
开发者ID:vikrammane23,项目名称:https-github.com-g0t4-jenkins2-course-spring-boot,代码行数:4,代码来源:FlywayEndpoint.java
示例4: resolveSqlMigrations
import org.flywaydb.core.api.MigrationType; //导入依赖的package包/类
private List<ResolvedMigration> resolveSqlMigrations() throws IOException, SQLException {
LOG.info(
"Searching for sql scripts in locations {}",
Arrays.toString(flywayConfiguration.getLocations()));
final Map<Location, List<Resource>> allResources = finder.findResources(flywayConfiguration);
LOG.debug("Found scripts: {}", allResources);
final Map<String, Map<String, SqlScript>> scriptsInDir = new HashMap<>();
for (Location location : allResources.keySet()) {
final List<Resource> resources = allResources.get(location);
for (Resource resource : resources) {
final SqlScript newScript = scriptsCreator.createScript(location, resource);
if (!scriptsInDir.containsKey(newScript.dir)) {
scriptsInDir.put(newScript.dir, new HashMap<>(4));
}
final Map<String, SqlScript> existingScripts = scriptsInDir.get(newScript.dir);
final SqlScript existingScript = existingScripts.get(newScript.name);
if (existingScript == null) {
existingScripts.put(newScript.name, newScript);
} else if (Objects.equals(existingScript.vendor, newScript.vendor)) {
throw new FlywayException(
format(
"More than one script with name '%s' is registered for "
+ "database vendor '%s', script '%s' conflicts with '%s'",
newScript.name, existingScript.vendor, newScript, existingScript));
} else if (vendorName.equals(newScript.vendor)) {
existingScripts.put(newScript.name, newScript);
}
}
}
final Map<MigrationVersion, ResolvedMigration> migrations = new HashMap<>();
for (SqlScript script :
scriptsInDir
.values()
.stream()
.flatMap(scripts -> scripts.values().stream())
.collect(toList())) {
final ResolvedMigrationImpl migration = new ResolvedMigrationImpl();
migration.setVersion(versionResolver.resolve(script, flywayConfiguration));
migration.setScript(script.resource.getLocation());
migration.setPhysicalLocation(script.resource.getLocationOnDisk());
migration.setType(MigrationType.SQL);
migration.setDescription(script.name);
migration.setChecksum(
ByteSource.wrap(script.resource.loadAsBytes()).hash(Hashing.crc32()).asInt());
migration.setExecutor(
new SqlMigrationExecutor(
dbSupport, script.resource, placeholderReplacer, flywayConfiguration));
if (migrations.put(migration.getVersion(), migration) != null) {
throw new FlywayException("Two migrations with the same version detected");
}
}
return new ArrayList<>(migrations.values());
}
开发者ID:eclipse,项目名称:che,代码行数:56,代码来源:CustomSqlMigrationResolver.java
注:本文中的org.flywaydb.core.api.MigrationType类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论