Qwylt

java.lang.module.spi
Class ConnectionCoordinator

java.lang.Object
  extended by java.lang.module.spi.ConnectionCoordinator
Direct Known Subclasses:
ConnectionCoordinator.Default

public abstract class ConnectionCoordinator
extends java.lang.Object

This class coordinates import resolution for and across ModuleArchive instances, ensuring that cyclic imports do not result in deadlock. A singleton is required to ensure that all threads requiring resolution share a common mechanism.

Since:
Dec 19, 2008
Author:
Bryan Atsatt

Nested Class Summary
static class ConnectionCoordinator.Default
          A ConnectionCoordinator that initializes connections on a single private thread to prevent deadlocks due to import cycles.
 
Constructor Summary
ConnectionCoordinator()
           
 
Method Summary
protected abstract  void start()
          Start this coordinator.
protected abstract  void stop()
          Stop this coordinator.
protected abstract  void submit(ModuleState moduleState)
          Submit the specified state to be driven to either the CONNECTED or FAILED status.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ConnectionCoordinator

public ConnectionCoordinator()
Method Detail

start

protected abstract void start()
Start this coordinator.


stop

protected abstract void stop()
Stop this coordinator.


submit

protected abstract void submit(ModuleState moduleState)
                        throws java.lang.InterruptedException
Submit the specified state to be driven to either the CONNECTED or FAILED status.

Parameters:
moduleState - The module state.
Throws:
java.lang.InterruptedException - if interrupted.

Qwylt

Send comments or questions to Bryan Atsatt