org.codehaus.plexus.component.manager
Class ClassicSingletonComponentManager

java.lang.Object
  extended byorg.codehaus.plexus.component.manager.AbstractComponentManager
      extended byorg.codehaus.plexus.component.manager.ClassicSingletonComponentManager
All Implemented Interfaces:
java.lang.Cloneable, ComponentManager

public class ClassicSingletonComponentManager
extends AbstractComponentManager

This ensures only a single manager of a a component exists. Once no more connections for this component exists it is disposed.

Version:
$Id: ClassicSingletonComponentManager.java,v 1.4 2003/12/21 15:27:10 jvanzyl Exp $
Author:
Jason van Zyl, Bert van Brakel

Field Summary
private  java.lang.Object singleton
           
 
Fields inherited from class org.codehaus.plexus.component.manager.AbstractComponentManager
 
Constructor Summary
ClassicSingletonComponentManager()
           
 
Method Summary
 void dispose()
           
 java.lang.Object getComponent()
           
 void release(java.lang.Object component)
           
 
Methods inherited from class org.codehaus.plexus.component.manager.AbstractComponentManager
connected, copy, createComponentInstance, decrementConnectionCount, endComponentLifecycle, getClassLoader, getComponentDescriptor, getConnections, getId, getLifecycleHandler, getLogger, incrementConnectionCount, initialize, resume, setup, startComponentLifecycle, suspend
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

singleton

private java.lang.Object singleton
Constructor Detail

ClassicSingletonComponentManager

public ClassicSingletonComponentManager()
Method Detail

release

public void release(java.lang.Object component)
See Also:
ComponentManager.release(java.lang.Object)

dispose

public void dispose()

getComponent

public java.lang.Object getComponent()
                              throws java.lang.Exception
Throws:
java.lang.Exception