jasco.runtime.aspect.factory
Class AbstractAspectFactory

java.lang.Object
  extended by jasco.runtime.aspect.factory.AbstractAspectFactory
All Implemented Interfaces:
IAspectFactory
Direct Known Subclasses:
DefaultAspectFactory, WeakReferenceAspectFactory

public abstract class AbstractAspectFactory
extends java.lang.Object
implements IAspectFactory

convenience class. Remmebers hook instances for given keys.

Author:
Wim

Constructor Summary
AbstractAspectFactory(java.util.Map myTable)
           
 
Method Summary
 IHook fetchHook(java.lang.Object key)
          fetches a hook for a given key
 java.util.Iterator getAll()
          Returns all aspect iunstances currently managed by the factory.
 IHook getAspectInstance(MethodJoinpoint jp, IAspectInstanceCreator creator)
          Returns the aspect instance applicable at this joinpoint.
 IHook getAspectInstance(java.lang.Object key, IAspectInstanceCreator creator)
           
abstract  java.lang.Object getKey(MethodJoinpoint jp)
          Returns the key for looking up hooks given this joinpoint.
 void storeHook(java.lang.Object key, IHook aHook)
          stores a hook for a given key
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractAspectFactory

public AbstractAspectFactory(java.util.Map myTable)
Method Detail

getAspectInstance

public IHook getAspectInstance(MethodJoinpoint jp,
                               IAspectInstanceCreator creator)
Description copied from interface: IAspectFactory
Returns the aspect instance applicable at this joinpoint. Use the creator for instantiating new hooks if necessary. Return value might be null, a default aspect instance will be used then.

Specified by:
getAspectInstance in interface IAspectFactory
Parameters:
jp - current joinpoint
creator - new hook creator
Returns:
the hook instance for jp

getAspectInstance

public IHook getAspectInstance(java.lang.Object key,
                               IAspectInstanceCreator creator)

getKey

public abstract java.lang.Object getKey(MethodJoinpoint jp)
Returns the key for looking up hooks given this joinpoint. Key may be null, default hook is used in that case.

Parameters:
jp - joinpoint
Returns:
a key for looking up hooks

fetchHook

public IHook fetchHook(java.lang.Object key)
fetches a hook for a given key

Parameters:
key - a key for looking up hooks
Returns:
a hook instance

storeHook

public void storeHook(java.lang.Object key,
                      IHook aHook)
stores a hook for a given key

Parameters:
key -
aHook - a hook

getAll

public java.util.Iterator getAll()
Description copied from interface: IAspectFactory
Returns all aspect iunstances currently managed by the factory.

Specified by:
getAll in interface IAspectFactory