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/16 01:01:05 UTC

svn commit: r1158057 - /incubator/flume/branches/flume-728/flume-ng-node/src/main/java/org/apache/flume/node/FlumeNode.java

Author: esammer
Date: Mon Aug 15 23:01:05 2011
New Revision: 1158057

URL: http://svn.apache.org/viewvc?rev=1158057&view=rev
Log:
- Switched FlumeNode over to LifecycleSupervisor controlled NodeManager in
  anticipation of other services (like ConfigurationClient).

Modified:
    incubator/flume/branches/flume-728/flume-ng-node/src/main/java/org/apache/flume/node/FlumeNode.java

Modified: incubator/flume/branches/flume-728/flume-ng-node/src/main/java/org/apache/flume/node/FlumeNode.java
URL: http://svn.apache.org/viewvc/incubator/flume/branches/flume-728/flume-ng-node/src/main/java/org/apache/flume/node/FlumeNode.java?rev=1158057&r1=1158056&r2=1158057&view=diff
==============================================================================
--- incubator/flume/branches/flume-728/flume-ng-node/src/main/java/org/apache/flume/node/FlumeNode.java (original)
+++ incubator/flume/branches/flume-728/flume-ng-node/src/main/java/org/apache/flume/node/FlumeNode.java Mon Aug 15 23:01:05 2011
@@ -4,6 +4,8 @@ import org.apache.flume.Context;
 import org.apache.flume.lifecycle.LifecycleAware;
 import org.apache.flume.lifecycle.LifecycleException;
 import org.apache.flume.lifecycle.LifecycleState;
+import org.apache.flume.lifecycle.LifecycleSupervisor;
+import org.apache.flume.lifecycle.LifecycleSupervisor.SupervisorPolicy;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -17,6 +19,11 @@ public class FlumeNode implements Lifecy
   private LifecycleState lifecycleState;
   private NodeManager nodeManager;
   private NodeConfigurationClient configurationClient;
+  private LifecycleSupervisor supervisor;
+
+  public FlumeNode() {
+    supervisor = new LifecycleSupervisor();
+  }
 
   @Override
   public void start(Context context) throws LifecycleException,
@@ -26,9 +33,12 @@ public class FlumeNode implements Lifecy
     Preconditions.checkState(nodeManager != null,
         "Node manager can not be null");
 
+    supervisor.start(context);
+
     logger.info("Flume node starting - {}", name);
 
-    nodeManager.start(context);
+    supervisor.supervise(nodeManager,
+        new SupervisorPolicy.AlwaysRestartPolicy(), LifecycleState.START);
 
     lifecycleState = LifecycleState.START;
   }
@@ -39,7 +49,7 @@ public class FlumeNode implements Lifecy
 
     logger.info("Flume node stopping - {}", name);
 
-    nodeManager.stop(context);
+    supervisor.stop(context);
 
     lifecycleState = LifecycleState.STOP;
   }