You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flume.apache.org by es...@apache.org on 2011/08/25 20:49:51 UTC
svn commit: r1161687 - in
/incubator/flume/branches/flume-728/flume-ng-core/src/main/java/org/apache/flume/conf:
./ Configurable.java Configurables.java
Author: esammer
Date: Thu Aug 25 18:49:51 2011
New Revision: 1161687
URL: http://svn.apache.org/viewvc?rev=1161687&view=rev
Log:
- Created a Configurable interface and Configurables utils for working with instances of the former.
Added:
incubator/flume/branches/flume-728/flume-ng-core/src/main/java/org/apache/flume/conf/
incubator/flume/branches/flume-728/flume-ng-core/src/main/java/org/apache/flume/conf/Configurable.java
incubator/flume/branches/flume-728/flume-ng-core/src/main/java/org/apache/flume/conf/Configurables.java
Added: incubator/flume/branches/flume-728/flume-ng-core/src/main/java/org/apache/flume/conf/Configurable.java
URL: http://svn.apache.org/viewvc/incubator/flume/branches/flume-728/flume-ng-core/src/main/java/org/apache/flume/conf/Configurable.java?rev=1161687&view=auto
==============================================================================
--- incubator/flume/branches/flume-728/flume-ng-core/src/main/java/org/apache/flume/conf/Configurable.java (added)
+++ incubator/flume/branches/flume-728/flume-ng-core/src/main/java/org/apache/flume/conf/Configurable.java Thu Aug 25 18:49:51 2011
@@ -0,0 +1,9 @@
+package org.apache.flume.conf;
+
+import org.apache.flume.Context;
+
+public interface Configurable {
+
+ public void configure(Context context);
+
+}
Added: incubator/flume/branches/flume-728/flume-ng-core/src/main/java/org/apache/flume/conf/Configurables.java
URL: http://svn.apache.org/viewvc/incubator/flume/branches/flume-728/flume-ng-core/src/main/java/org/apache/flume/conf/Configurables.java?rev=1161687&view=auto
==============================================================================
--- incubator/flume/branches/flume-728/flume-ng-core/src/main/java/org/apache/flume/conf/Configurables.java (added)
+++ incubator/flume/branches/flume-728/flume-ng-core/src/main/java/org/apache/flume/conf/Configurables.java Thu Aug 25 18:49:51 2011
@@ -0,0 +1,29 @@
+package org.apache.flume.conf;
+
+import org.apache.flume.Context;
+
+/**
+ * Methods for working with {@link Configurable}s.
+ */
+public class Configurables {
+
+ /**
+ * Check that {@code target} implements {@link Configurable} and, if so, ask
+ * it to configure itself using the supplied {@code context}.
+ *
+ * @param target
+ * An object that potentially implements Configurable.
+ * @param context
+ * The configuration context
+ * @return true if {@code target} implements Configurable, false otherwise.
+ */
+ public static boolean configure(Object target, Context context) {
+ if (target instanceof Configurable) {
+ ((Configurable) target).configure(context);
+ return true;
+ }
+
+ return false;
+ }
+
+}