Package com.linkedin.helix.tools

Source Code of com.linkedin.helix.tools.AdminTestHelper$AdminThread

package com.linkedin.helix.tools;

import java.util.concurrent.CountDownLatch;

import com.linkedin.helix.webapp.HelixAdminWebApp;

public class AdminTestHelper
{

  public static class AdminThread
  {
    Thread _adminThread;
    CountDownLatch _stopCountDown = new CountDownLatch(1);
    String _zkAddr;
    int _port;
   
    public AdminThread(String zkAddr, int port)
    {
      _zkAddr = zkAddr;
      _port = port;
    }
   
    public void start()
    {
      Thread adminThread = new Thread(new Runnable()
      {
        @Override
        public void run()
        {
          HelixAdminWebApp app = null;
          try
          {
            app = new HelixAdminWebApp(_zkAddr, _port);
            app.start();
            // Thread.currentThread().join();
            _stopCountDown.await();
          }
          catch (Exception e)
          {
            e.printStackTrace();
          }
          finally
          {
            if (app != null)
            {
//              System.err.println("Stopping HelixAdminWebApp");
              app.stop();
            }
          }
        }
      });

      adminThread.setDaemon(true);
      adminThread.start();
    }
   
    public void stop()
    {
      _stopCountDown.countDown();
    }
  }
 
}
TOP

Related Classes of com.linkedin.helix.tools.AdminTestHelper$AdminThread

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.