biz.junginger.modules.util
Class AbstractThreadModule

java.lang.Object
  extended byjava.lang.Thread
      extended bybiz.junginger.modules.util.AbstractThreadModule
All Implemented Interfaces:
Module, java.lang.Runnable

public class AbstractThreadModule
extends java.lang.Thread
implements Module

Subject to the MyModules Software Licence (based on the Apache Software License).
Copyright (c) 2003 Markus Oliver Junginger. All rights reserved.
http://www.junginger.biz

Version:
$Id: $
Author:
Markus Oliver Junginger

Field Summary
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
AbstractThreadModule()
           
 
Method Summary
 void moduleDestroy()
          Destroys the module. The module should free all resources. The module will not be used after this call.
 void moduleInit(java.util.Map modules)
          Initialization phase TWO of the module. Its individual dependencies ARE met. This is the main initialization phase and the module can use other modules, on which it depends.
 void modulePrepare(java.util.Properties properties)
          Initialization phase ONE of the module. Its individual dependencies ARE NOT met. To support multi-threading more efficiently, the module can prepare itself as much as possible at this point.
 void moduleStart()
          Starts the Thread.
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getContextClassLoader, getName, getPriority, getThreadGroup, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, run, setContextClassLoader, setDaemon, setName, setPriority, sleep, sleep, start, stop, stop, suspend, toString, yield
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

AbstractThreadModule

public AbstractThreadModule()
Method Detail

modulePrepare

public void modulePrepare(java.util.Properties properties)
                   throws java.lang.Exception
Initialization phase ONE of the module. Its individual dependencies ARE NOT met. To support multi-threading more efficiently, the module can prepare itself as much as possible at this point.

Specified by:
modulePrepare in interface Module
Throws:
java.lang.Exception

moduleInit

public void moduleInit(java.util.Map modules)
                throws java.lang.Exception
Initialization phase TWO of the module. Its individual dependencies ARE met. This is the main initialization phase and the module can use other modules, on which it depends.

Specified by:
moduleInit in interface Module
Throws:
java.lang.Exception

moduleStart

public void moduleStart()
                 throws java.lang.Exception
Starts the Thread. If sub-classes override this method they must call start() themselves.

Specified by:
moduleStart in interface Module
Throws:
java.lang.Exception

moduleDestroy

public void moduleDestroy()
Destroys the module. The module should free all resources. The module will not be used after this call.

Specified by:
moduleDestroy in interface Module