cern::gp::nodes::impl::CacheablePropertySupport Class Reference

Inheritance diagram for cern::gp::nodes::impl::CacheablePropertySupport:
Inheritance graph
[legend]
Collaboration diagram for cern::gp::nodes::impl::CacheablePropertySupport:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 CacheablePropertySupport (Object instance, Class valueType, Method getter, Method setter, CachingStrategy cachingStrategy)
Object getValue () throws IllegalAccessException, IllegalArgumentException, InvocationTargetException
void setValue (Object newValue) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException
PropertyEditor getPropertyEditor ()
void resetCache ()

Private Attributes

Object cachedValue
CachingStrategy cachingStrategy

Detailed Description

<font size="-1" color="#FF0000">**For internal use only** </font> A version of PropertySupport that caches the property value to avoid that the underlying Bean has to handle bursts of getValue() calls. The caching strategy is given at construction time.

Author:
Lionel Mestre
Version:
Revision
1.2
Date
2006/09/25 08:52:36

Constructor & Destructor Documentation

cern::gp::nodes::impl::CacheablePropertySupport::CacheablePropertySupport ( Object  instance,
Class  valueType,
Method  getter,
Method  setter,
CachingStrategy  cachingStrategy 
) [inline]

Member Function Documentation

PropertyEditor cern::gp::nodes::impl::CacheablePropertySupport::getPropertyEditor (  )  [inline]

Returns an instance of property editor for this property. The implementation reconizes a special type of PropertyEditor that implements cern.gp.beans.BeanDependentPropertyEditor and invoke their initialization method.

Returns:
the property editor or null if there should not be any editor.
See also:
cern.gp.beans.BeanDependentPropertyEditor
Object cern::gp::nodes::impl::CacheablePropertySupport::getValue (  )  throws IllegalAccessException, IllegalArgumentException, InvocationTargetException [inline]

overrides getValue, and accesses the Bean only if the cache has expired

References cachedValue, cachingStrategy, cern::gp::nodes::cache::CachingStrategy::isCacheValid(), and cern::gp::nodes::cache::CachingStrategy::validateCache().

void cern::gp::nodes::impl::CacheablePropertySupport::resetCache (  )  [inline]
void cern::gp::nodes::impl::CacheablePropertySupport::setValue ( Object  newValue  )  throws IllegalAccessException, IllegalArgumentException, InvocationTargetException [inline]

overrides setValue, and caches the value

References cachedValue, cachingStrategy, and cern::gp::nodes::cache::CachingStrategy::validateCache().


Member Data Documentation

cached value

Referenced by getValue(), and setValue().

Referenced by getValue(), resetCache(), and setValue().


The documentation for this class was generated from the following file:

Generated by  doxygen 1.6.2