You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flume.apache.org by ar...@apache.org on 2011/12/16 01:31:25 UTC
svn commit: r1215007 - in /incubator/flume/branches/flume-728:
flume-ng-channels/flume-jdbc-channel/src/main/java/org/apache/flume/channel/jdbc/
flume-ng-channels/flume-jdbc-channel/src/main/java/org/apache/flume/channel/jdbc/impl/
flume-ng-channels/fl...
Author: arvind
Date: Fri Dec 16 00:31:24 2011
New Revision: 1215007
URL: http://svn.apache.org/viewvc?rev=1215007&view=rev
Log:
FLUME-869. Allow location of derby.log to be configured.
Modified:
incubator/flume/branches/flume-728/flume-ng-channels/flume-jdbc-channel/src/main/java/org/apache/flume/channel/jdbc/ConfigurationConstants.java
incubator/flume/branches/flume-728/flume-ng-channels/flume-jdbc-channel/src/main/java/org/apache/flume/channel/jdbc/impl/JdbcChannelProviderImpl.java
incubator/flume/branches/flume-728/flume-ng-channels/flume-jdbc-channel/src/test/java/org/apache/flume/channel/jdbc/TestJdbcChannelProvider.java
incubator/flume/branches/flume-728/flume-ng-core/src/main/java/org/apache/flume/Context.java
Modified: incubator/flume/branches/flume-728/flume-ng-channels/flume-jdbc-channel/src/main/java/org/apache/flume/channel/jdbc/ConfigurationConstants.java
URL: http://svn.apache.org/viewvc/incubator/flume/branches/flume-728/flume-ng-channels/flume-jdbc-channel/src/main/java/org/apache/flume/channel/jdbc/ConfigurationConstants.java?rev=1215007&r1=1215006&r2=1215007&view=diff
==============================================================================
--- incubator/flume/branches/flume-728/flume-ng-channels/flume-jdbc-channel/src/main/java/org/apache/flume/channel/jdbc/ConfigurationConstants.java (original)
+++ incubator/flume/branches/flume-728/flume-ng-channels/flume-jdbc-channel/src/main/java/org/apache/flume/channel/jdbc/ConfigurationConstants.java Fri Dec 16 00:31:24 2011
@@ -24,6 +24,9 @@ public final class ConfigurationConstant
public static final String PREFIX = "org.apache.flume.channel.jdbc.";
+ public static final String CONFIG_JDBC_SYSPRO_PREFIX =
+ PREFIX + "sysprop.";
+
public static final String CONFIG_JDBC_DRIVER_CLASS =
PREFIX + "driver.class";
Modified: incubator/flume/branches/flume-728/flume-ng-channels/flume-jdbc-channel/src/main/java/org/apache/flume/channel/jdbc/impl/JdbcChannelProviderImpl.java
URL: http://svn.apache.org/viewvc/incubator/flume/branches/flume-728/flume-ng-channels/flume-jdbc-channel/src/main/java/org/apache/flume/channel/jdbc/impl/JdbcChannelProviderImpl.java?rev=1215007&r1=1215006&r2=1215007&view=diff
==============================================================================
--- incubator/flume/branches/flume-728/flume-ng-channels/flume-jdbc-channel/src/main/java/org/apache/flume/channel/jdbc/impl/JdbcChannelProviderImpl.java (original)
+++ incubator/flume/branches/flume-728/flume-ng-channels/flume-jdbc-channel/src/main/java/org/apache/flume/channel/jdbc/impl/JdbcChannelProviderImpl.java Fri Dec 16 00:31:24 2011
@@ -25,6 +25,7 @@ import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Enumeration;
+import java.util.Map;
import java.util.Properties;
import javax.sql.DataSource;
@@ -95,11 +96,26 @@ public class JdbcChannelProviderImpl imp
+ context);
}
+ initializeSystemProperties(context);
initializeDataSource(context);
initializeSchema(context);
initializeChannelState(context);
}
+ private void initializeSystemProperties(Context context) {
+ Map<String, Object> sysProps = context.getSubProperties(
+ ConfigurationConstants.CONFIG_JDBC_SYSPRO_PREFIX);
+
+ for (String key: sysProps.keySet()) {
+ Object object = sysProps.get(key);
+ String value = "";
+ if (object != null) {
+ value = object.toString();
+ }
+ System.setProperty(key, value);
+ }
+ }
+
private void initializeChannelState(Context context) {
String maxCapacityStr = context.getString(
ConfigurationConstants.CONFIG_MAX_CAPACITY, "0");
Modified: incubator/flume/branches/flume-728/flume-ng-channels/flume-jdbc-channel/src/test/java/org/apache/flume/channel/jdbc/TestJdbcChannelProvider.java
URL: http://svn.apache.org/viewvc/incubator/flume/branches/flume-728/flume-ng-channels/flume-jdbc-channel/src/test/java/org/apache/flume/channel/jdbc/TestJdbcChannelProvider.java?rev=1215007&r1=1215006&r2=1215007&view=diff
==============================================================================
--- incubator/flume/branches/flume-728/flume-ng-channels/flume-jdbc-channel/src/test/java/org/apache/flume/channel/jdbc/TestJdbcChannelProvider.java (original)
+++ incubator/flume/branches/flume-728/flume-ng-channels/flume-jdbc-channel/src/test/java/org/apache/flume/channel/jdbc/TestJdbcChannelProvider.java Fri Dec 16 00:31:24 2011
@@ -67,6 +67,12 @@ public class TestJdbcChannelProvider {
File tmpDir = new File("target/test");
tmpDir.mkdirs();
+ File derbyLogFile = new File(tmpDir, "derbytest.log");
+ String derbyLogFilePath = derbyLogFile.getCanonicalPath();
+
+ derbyCtx.put(ConfigurationConstants.CONFIG_JDBC_SYSPRO_PREFIX
+ + "derby.stream.error.file", derbyLogFilePath);
+
// Use a temp file to create a temporary directory
File tempFile = File.createTempFile("temp", "_db", tmpDir);
String absFileName = tempFile.getCanonicalPath();
Modified: incubator/flume/branches/flume-728/flume-ng-core/src/main/java/org/apache/flume/Context.java
URL: http://svn.apache.org/viewvc/incubator/flume/branches/flume-728/flume-ng-core/src/main/java/org/apache/flume/Context.java?rev=1215007&r1=1215006&r2=1215007&view=diff
==============================================================================
--- incubator/flume/branches/flume-728/flume-ng-core/src/main/java/org/apache/flume/Context.java (original)
+++ incubator/flume/branches/flume-728/flume-ng-core/src/main/java/org/apache/flume/Context.java Fri Dec 16 00:31:24 2011
@@ -30,6 +30,19 @@ public class Context {
parameters = new HashMap<String, Object>();
}
+ public Map<String, Object> getSubProperties(String prefix) {
+ Map<String, Object> result = new HashMap<String, Object>();
+
+ for (String key : parameters.keySet()) {
+ if (key.startsWith(prefix)) {
+ String name = key.substring(prefix.length());
+ result.put(name, parameters.get(key));
+ }
+ }
+
+ return result;
+ }
+
public void put(String key, Object value) {
parameters.put(key, value);
}