eu.lindenbaum.maven.erlang
Class NodeShutdownHook

java.lang.Object
  extended by java.lang.Thread
      extended by eu.lindenbaum.maven.erlang.NodeShutdownHook
All Implemented Interfaces:
Runnable

public final class NodeShutdownHook
extends Thread

Provides JVM unique shutdown hooks that stop erlang backend nodes.

Author:
Tobias Schlager tobias.schlager@lindenbaum.eu

Nested Class Summary
 
Nested classes/interfaces inherited from class java.lang.Thread
Thread.State, Thread.UncaughtExceptionHandler
 
Field Summary
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Method Summary
static NodeShutdownHook get(String nodeName, String nodeCookie)
          Returns an JVM unique instance of a NodeShutdownHook per node name.
 void run()
          Shuts down the node refered to by nodeName using erlang:halt/0.
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, clone, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Method Detail

get

public static NodeShutdownHook get(String nodeName,
                                   String nodeCookie)
Returns an JVM unique instance of a NodeShutdownHook per node name. Shutdown hook registration is not done automatically and must be done in a separate step.

Parameters:
nodeName - name of the erlang node to shut down
nodeCookie - cookie of the erlang node to shut down
Returns:
an instance of NodeShutdownHook, never null

run

public void run()
Shuts down the node refered to by nodeName using erlang:halt/0.

Specified by:
run in interface Runnable
Overrides:
run in class Thread


Copyright © 2012 Lindenbaum GmbH. All Rights Reserved.