Top Description Fields Constructors Methods
javassist.scopedpool

public Class ScopedClassPoolRepositoryImpl

extends Object
implements ScopedClassPoolRepository
Class Inheritance
All Implemented Interfaces
javassist.scopedpool.ScopedClassPoolRepository
Imports
java.util.ArrayList, .Collections, .List, .Map, .WeakHashMap, javassist.ClassPool, .LoaderClassPath

An implementation of ScopedClassPoolRepository. It is an singleton.
Author
Kabir Khan
Version
$Revision: 1.4 $

Field Summary

Modifier and TypeField and Description
protected ClassPool
classpool

The default class pool

protected ScopedClassPoolFactory
factory

The factory for creating class pools

private static final ScopedClassPoolRepositoryImpl
instance

The instance

private boolean
prune

Whether to prune

pack-priv boolean
pruneWhenCached

Whether to prune when added to the classpool's cache

protected Map<ClassLoader, ScopedClassPool>
registeredCLs

The registered classloaders

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
public void
clearUnregisteredClassLoaders()

Implements javassist.scopedpool.ScopedClassPoolRepository.clearUnregisteredClassLoaders.

This method will check to see if a register classloader has been undeployed (as in JBoss)

public ScopedClassPool

Returns:

the classpool
createScopedClassPool
(ClassLoader
the classloader.
cl
,
ClassPool
the original classpool.
src
)

Implements javassist.scopedpool.ScopedClassPoolRepository.createScopedClassPool.

Create a scoped classpool.

public ClassPool
findClassPool(ClassLoader
the classloader.
cl
)

Implements javassist.scopedpool.ScopedClassPoolRepository.findClassPool.

Finds a scoped classpool registered under the passed in classloader.

public ScopedClassPoolFactory
public static ScopedClassPoolRepository

Returns:

the instance.
getInstance
()

Get the instance.

public Map<ClassLoader, ScopedClassPool>
public void
public boolean

Returns:

the prune.
isPrune
()

Implements javassist.scopedpool.ScopedClassPoolRepository.isPrune.

Returns the value of the prune attribute.

public ClassPool

Returns:

the classpool
registerClassLoader
(ClassLoader
the classloader.
ucl
)

Implements javassist.scopedpool.ScopedClassPoolRepository.registerClassLoader.

Register a classloader.

public void
public void
setPrune(boolean
a new value.
prune
)

Implements javassist.scopedpool.ScopedClassPoolRepository.setPrune.

Set the prune attribute.

public void
unregisterClassLoader(ClassLoader
the classloader the pool is stored under.
cl
)

Implements javassist.scopedpool.ScopedClassPoolRepository.unregisterClassLoader.

Unregisters a classpool and unregisters its classloader.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

classpoolback to summary
protected ClassPool classpool

The default class pool

factoryback to summary
protected ScopedClassPoolFactory factory

The factory for creating class pools

instanceback to summary
private static final ScopedClassPoolRepositoryImpl instance

The instance

pruneback to summary
private boolean prune

Whether to prune

pruneWhenCachedback to summary
pack-priv boolean pruneWhenCached

Whether to prune when added to the classpool's cache

registeredCLsback to summary
protected Map<ClassLoader, ScopedClassPool> registeredCLs

The registered classloaders

Constructor Detail

ScopedClassPoolRepositoryImplback to summary
private ScopedClassPoolRepositoryImpl()

Singleton.

Method Detail

clearUnregisteredClassLoadersback to summary
public void clearUnregisteredClassLoaders()

Implements javassist.scopedpool.ScopedClassPoolRepository.clearUnregisteredClassLoaders.

This method will check to see if a register classloader has been undeployed (as in JBoss)

Annotations
@Override
createScopedClassPoolback to summary
public ScopedClassPool createScopedClassPool(ClassLoader cl, ClassPool src)

Implements javassist.scopedpool.ScopedClassPoolRepository.createScopedClassPool.

Create a scoped classpool.

Parameters
cl:ClassLoader

the classloader.

src:ClassPool

the original classpool.

Returns:ScopedClassPool

the classpool

Annotations
@Override
findClassPoolback to summary
public ClassPool findClassPool(ClassLoader cl)

Implements javassist.scopedpool.ScopedClassPoolRepository.findClassPool.

Doc from javassist.scopedpool.ScopedClassPoolRepository.findClassPool.

Finds a scoped classpool registered under the passed in classloader.

Parameters
cl:ClassLoader

the classloader.

Returns:ClassPool

the classpool.

Annotations
@Override
getClassPoolFactoryback to summary
public ScopedClassPoolFactory getClassPoolFactory()

Implements javassist.scopedpool.ScopedClassPoolRepository.getClassPoolFactory.

Doc from javassist.scopedpool.ScopedClassPoolRepository.getClassPoolFactory.

Obtains the recorded factory.

Annotations
@Override
getInstanceback to summary
public static ScopedClassPoolRepository getInstance()

Get the instance.

Returns:ScopedClassPoolRepository

the instance.

getRegisteredCLsback to summary
public Map<ClassLoader, ScopedClassPool> getRegisteredCLs()

Implements javassist.scopedpool.ScopedClassPoolRepository.getRegisteredCLs.

Get the registered classloaders.

Returns:Map<ClassLoader, ScopedClassPool>

Doc from javassist.scopedpool.ScopedClassPoolRepository.getRegisteredCLs.

the registered classloaders.

Annotations
@Override
insertDelegateback to summary
public void insertDelegate(ScopedClassPoolRepository delegate)
isPruneback to summary
public boolean isPrune()

Implements javassist.scopedpool.ScopedClassPoolRepository.isPrune.

Returns the value of the prune attribute.

Returns:boolean

the prune.

Annotations
@Override
registerClassLoaderback to summary
public ClassPool registerClassLoader(ClassLoader ucl)

Implements javassist.scopedpool.ScopedClassPoolRepository.registerClassLoader.

Register a classloader.

Parameters
ucl:ClassLoader

the classloader.

Returns:ClassPool

the classpool

Annotations
@Override
setClassPoolFactoryback to summary
public void setClassPoolFactory(ScopedClassPoolFactory factory)

Implements javassist.scopedpool.ScopedClassPoolRepository.setClassPoolFactory.

Doc from javassist.scopedpool.ScopedClassPoolRepository.setClassPoolFactory.

Records a factory.

Annotations
@Override
setPruneback to summary
public void setPrune(boolean prune)

Implements javassist.scopedpool.ScopedClassPoolRepository.setPrune.

Set the prune attribute.

Parameters
prune:boolean

a new value.

Annotations
@Override
unregisterClassLoaderback to summary
public void unregisterClassLoader(ClassLoader cl)

Implements javassist.scopedpool.ScopedClassPoolRepository.unregisterClassLoader.

Doc from javassist.scopedpool.ScopedClassPoolRepository.unregisterClassLoader.

Unregisters a classpool and unregisters its classloader.

Parameters
cl:ClassLoader

the classloader the pool is stored under.

Annotations
@Override