[java-identity-provider COMMIT] /trunk/idp-attribute-resolver-impl/src/test/java/net/shibboleth/idp/attribute/resolve...
noreply at shibboleth.net
noreply at shibboleth.net
Tue Mar 19 00:32:09 EDT 2013
Author: dfisher
Date: Tue Mar 19 00:32:09 2013
New Revision: 4346
URL: http://svn.shibboleth.net/view/java-identity-provider?rev=4346&view=rev
Log:
Add support for initializing a database from a file.
File format supports multiple insert statements.
Modified:
trunk/idp-attribute-resolver-impl/src/test/java/net/shibboleth/idp/attribute/resolver/impl/DatabaseTestingSupport.java
Modified: trunk/idp-attribute-resolver-impl/src/test/java/net/shibboleth/idp/attribute/resolver/impl/DatabaseTestingSupport.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-attribute-resolver-impl/src/test/java/net/shibboleth/idp/attribute/resolver/impl/DatabaseTestingSupport.java?rev=4346&r1=4345&r2=4346&view=diff
==============================================================================
--- trunk/idp-attribute-resolver-impl/src/test/java/net/shibboleth/idp/attribute/resolver/impl/DatabaseTestingSupport.java (original)
+++ trunk/idp-attribute-resolver-impl/src/test/java/net/shibboleth/idp/attribute/resolver/impl/DatabaseTestingSupport.java Tue Mar 19 00:32:09 2013
@@ -45,30 +45,44 @@
protected static void InitializeDataSource(@Nullable String initializingSQLFile, DataSource source) {
+ final String sql = ReadSqlFromFile(initializingSQLFile);
+ if (sql == null) {
+ return;
+ }
+ ExecuteUpdate(sql, source);
+ }
+
+ protected static String ReadSqlFromFile(@Nullable String initializingSQLFile) {
+
final String file = StringSupport.trimOrNull(initializingSQLFile);
if (null == file) {
- return;
+ return null;
}
final InputStream is = DatabaseTestingSupport.class.getResourceAsStream(file);
if (null == is) {
log.warn("Could not locate SQL file called {} ", file);
- return;
+ return null;
}
String sql;
try {
sql = StringSupport.trimOrNull(CharStreams.toString(new InputStreamReader(is)));
} catch (IOException e) {
log.warn("Could not read SQL file called {}.", file);
- return;
+ return null;
}
if (null == sql) {
log.warn("SQL file called {} was empty.", file);
- return;
+ return null;
}
+
+ return sql;
+ }
+
+ protected static void ExecuteUpdate(@Nullable String sql, DataSource source) {
log.debug("Applying SQL: \n {}", sql);
@@ -109,7 +123,13 @@
return GetDataSourceFromUrl(initializingSQLFile, "jdbc:hsqldb:hsql:" + server);
}
- JDBCDataSource jdbcSource = new JDBCDataSource();
+ public static void InitializeDataSourceFromFile(String sqlFile, DataSource source) {
+ final String sql = ReadSqlFromFile(sqlFile);
+ final String[] statements = sql.split(";");
+ for (String statement : statements) {
+ ExecuteUpdate(statement.trim(), source);
+ }
+ }
protected static DataSource GetDataSourceFromUrl(String initializingSQLFile, String JdbcUri) {
JDBCDataSource jdbcSource = new JDBCDataSource();
More information about the commits
mailing list