@Override public void insertNewChange(final Change change, final DeployExecution deployExecution) { sqlExecutor.executeWithinContext(change.getPhysicalSchema(env), new Procedure<Connection>() { @Override public void value(Connection conn) { insertNewChangeInternal(conn, change, deployExecution); } }); }
@Override public void updateOrInsertChange(final Change change, final DeployExecution deployExecution) { sqlExecutor.executeWithinContext(change.getPhysicalSchema(env), new Procedure<Connection>() { @Override public void value(Connection conn) { int numRowsUpdated = updateInternal(conn, change, deployExecution); if (numRowsUpdated == 0) { insertNewChangeInternal(conn, change, deployExecution); } } }); }
@Override public void deleteChange(final Change change) { sqlExecutor.executeWithinContext(change.getPhysicalSchema(env), new Procedure<Connection>() { @Override public void value(Connection conn) { sqlExecutor.getJdbcTemplate().update( conn, "DELETE FROM " + env.getPlatform().getSchemaPrefix(change.getPhysicalSchema(env)) + dbChangeTable + " WHERE " + changeNameColumn + " = ? AND OBJECTNAME = ?" , change.getChangeName(), change.getObjectName()); } }); }
@Override public void deploy(final Change change, final CommandExecutionContext cec) { sqlExecutor.executeWithinContext(change.getPhysicalSchema(env), new Procedure<Connection>() { @Override public void value(Connection conn) { baseArtifactDeployer.deployArtifact(conn, change); if (AbstractDbChangeTypeBehavior.this.shouldApplyGrants(change)) { AbstractDbChangeTypeBehavior.this.applyGrants(conn, change.getPhysicalSchema(env), change.getObjectName(), env.getPermissions(change), cec); } } }); }
@Override public void deleteChange(final Change change) { sqlExecutor.executeWithinContext(change.getPhysicalSchema(env), new Procedure<Connection>() { @Override public void value(Connection conn) { sqlExecutor.getJdbcTemplate().update( conn, "DELETE FROM " + env.getPlatform().getSchemaPrefix(change.getPhysicalSchema(env)) + dbChangeTable + " WHERE " + changeNameColumn + " = ? AND OBJECTNAME = ?" , change.getChangeName(), change.getObjectName()); } }); }
@Override public void updateOrInsertChange(final Change change, final DeployExecution deployExecution) { sqlExecutor.executeWithinContext(change.getPhysicalSchema(env), new Procedure<Connection>() { @Override public void value(Connection conn) { int numRowsUpdated = updateInternal(conn, change, deployExecution); if (numRowsUpdated == 0) { insertNewChangeInternal(conn, change, deployExecution); } } }); }
@Override public void insertNewChange(final Change change, final DeployExecution deployExecution) { sqlExecutor.executeWithinContext(change.getPhysicalSchema(env), new Procedure<Connection>() { @Override public void value(Connection conn) { insertNewChangeInternal(conn, change, deployExecution); } }); }
@Override protected String generateDropChangeRaw(Connection conn, Change change) { StringBuilder sb = new StringBuilder(); for (String functionName : this.getQualifiedObjectNames(conn, change.getPhysicalSchema(env), change.getObjectName()).getTwo()) { sb.append("DROP FUNCTION ").append(functionName).append(";\n"); } return sb.toString(); } }
@Override public void deploy(Change change, CommandExecutionContext cec) { MongoDatabase database = mongoClient.getDatabase(change.getPhysicalSchema(env).getPhysicalName()); final BasicDBObject command = new BasicDBObject(); command.put("eval", change.getConvertedContent()); Document result = database.runCommand(command); LOG.info("Result: {}", result); }
@Override public void deploy(Change change, CommandExecutionContext cec) { MongoDatabase database = mongoClient.getDatabase(change.getPhysicalSchema(env).getPhysicalName()); final BasicDBObject command = new BasicDBObject(); command.put("eval", change.getConvertedContent()); Document result = database.runCommand(command); LOG.info("Result: {}", result); }
@Override protected String generateDropChangeRaw(Connection conn, Change change) { StringBuilder sb = new StringBuilder(); final ImmutableCollection<DaRoutine> routines = getDbMetadataManager().getRoutineInfo(change.getPhysicalSchema(env), change.getObjectName()); LOG.info("Found {} routines with name {} to drop", routines.size(), change.getObjectName()); for (DaRoutine routine : routines) { sb.append("DROP SPECIFIC ").append(getDbChangeType().getDefaultObjectKeyword()).append(" ").append(routine.getSpecificName()).append("\nGO\n"); } return sb.toString(); } }
@Override protected String generateDropChangeRaw(Connection conn, Change change) { StringBuilder sb = new StringBuilder(); final ImmutableCollection<DaRoutine> routines = getDbMetadataManager().getRoutineInfo(change.getPhysicalSchema(env), change.getObjectName()); LOG.info("Found {} routines with name {} to drop", routines.size(), change.getObjectName()); for (DaRoutine routine : routines) { sb.append("DROP SPECIFIC ").append(getDbChangeType().getDefaultObjectKeyword()).append(" ").append(routine.getSpecificName()).append("\nGO\n"); } return sb.toString(); } }
@Override protected String generateDropChangeRaw(Connection conn, Change change) { return "DROP TYPE" + " " + getDbPlatform().getSubschemaPrefix(change.getPhysicalSchema(env)) + change.getObjectName(); } }
@Override protected String generateDropChangeRaw(Connection conn, Change change) { return "DROP TYPE" + " " + getDbPlatform().getSubschemaPrefix(change.getPhysicalSchema(env)) + change.getObjectName(); } }
@Override public void value(Connection conn) { baseArtifactDeployer.deployArtifact(conn, change); if (AbstractDbChangeTypeBehavior.this.shouldApplyGrants(change)) { AbstractDbChangeTypeBehavior.this.applyGrants(conn, change.getPhysicalSchema(env), change.getObjectName(), env.getPermissions(change), cec); } } });
protected String generateDropChangeRaw(Connection conn, Change change) { String defaultObjectKeyword = dbChangeType.getDefaultObjectKeyword(); if (defaultObjectKeyword == null) { return ""; } else { return "DROP " + defaultObjectKeyword + " " + env.getPlatform().getSubschemaPrefix(change.getPhysicalSchema(env)) + change.getObjectName(); } }
protected String generateDropChangeRaw(Connection conn, Change change) { String defaultObjectKeyword = dbChangeType.getDefaultObjectKeyword(); if (defaultObjectKeyword == null) { return ""; } else { return "DROP " + defaultObjectKeyword + " " + env.getPlatform().getSubschemaPrefix(change.getPhysicalSchema(env)) + change.getObjectName(); } }
@Override public void value(Connection conn) { baseArtifactDeployer.deployArtifact(conn, change); if (AbstractDbChangeTypeBehavior.this.shouldApplyGrants(change)) { AbstractDbChangeTypeBehavior.this.applyGrants(conn, change.getPhysicalSchema(env), change.getObjectName(), env.getPermissions(change), cec); } } });
@Override public void value(Connection conn) { sqlExecutor.getJdbcTemplate().update( conn, "DELETE FROM " + env.getPlatform().getSchemaPrefix(change.getPhysicalSchema(env)) + dbChangeTable + " WHERE " + changeNameColumn + " = ? AND OBJECTNAME = ?" , change.getChangeName(), change.getObjectName()); } });
@Override public void value(Connection conn) { sqlExecutor.getJdbcTemplate().update( conn, "DELETE FROM " + env.getPlatform().getSchemaPrefix(change.getPhysicalSchema(env)) + dbChangeTable + " WHERE " + changeNameColumn + " = ? AND OBJECTNAME = ?" , change.getChangeName(), change.getObjectName()); } });