org.codehaus.plexus.component.manager
Class KeepAliveSingletonComponentManager

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

public class KeepAliveSingletonComponentManager
extends AbstractComponentManager

This ensures a component is only used as a singleton, and is only shutdown when the container shuts down.

Version:
$Id: KeepAliveSingletonComponentManager.java 1750 2005-04-19 07:45:02Z brett $
Author:
Bert van Brakel

Field Summary
private  java.lang.Object lock
           
private  java.lang.Object singleton
           
 
Fields inherited from class org.codehaus.plexus.component.manager.AbstractComponentManager
 
Fields inherited from interface org.codehaus.plexus.component.manager.ComponentManager
ROLE
 
Constructor Summary
KeepAliveSingletonComponentManager()
           
 
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, getComponentDescriptor, getConnections, getContainer, 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

lock

private java.lang.Object lock

singleton

private java.lang.Object singleton
Constructor Detail

KeepAliveSingletonComponentManager

public KeepAliveSingletonComponentManager()
Method Detail

release

public void release(java.lang.Object component)

dispose

public void dispose()
             throws ComponentLifecycleException
Throws:
ComponentLifecycleException

getComponent

public java.lang.Object getComponent()
                              throws ComponentInstantiationException,
                                     ComponentLifecycleException
Throws:
ComponentInstantiationException
ComponentLifecycleException