Project Wonder 5.0

er.extensions.components
Class ERXCachingWrapper

java.lang.Object
  extended by com.webobjects.appserver.WOElement
      extended by com.webobjects.appserver.WOComponent
          extended by er.extensions.components.ERXComponent
              extended by er.extensions.components.ERXNonSynchronizingComponent
                  extended by er.extensions.components.ERXStatelessComponent
                      extended by er.extensions.components.ERXCachingWrapper
All Implemented Interfaces:
com.webobjects.appserver.WOActionResults, com.webobjects.foundation.NSKeyValueCoding, com.webobjects.foundation.NSKeyValueCoding.ErrorHandling, com.webobjects.foundation.NSKeyValueCodingAdditions, com.webobjects.foundation.NSValidation, java.io.Serializable, java.lang.Cloneable

public class ERXCachingWrapper
extends ERXStatelessComponent

Wrapper that caches its content based on a set of bindings. Use this component to wrap parts of your HTML whose generation is costly.
Valid keys would be for example:

Basically, you would put there any key whose value would cause the content to change. Session IDs are replaced automatically. Don't use this wrapper if the content contains component actions. Drop only stateless components in this wrapper.

See Also:
Serialized Form
Author:
ak on 20.01.05
Bindings
keys the keys to use for caching
           
duration the duration the entry stays in the cache
           
entryName the name to cache on
           

Nested Class Summary
protected  class ERXCachingWrapper.Entry
          Simply cache entry class.
 
Nested classes/interfaces inherited from class com.webobjects.appserver.WOComponent
com.webobjects.appserver.WOComponent._EventLoggingEnabler, com.webobjects.appserver.WOComponent.Event
 
Nested classes/interfaces inherited from interface com.webobjects.foundation.NSKeyValueCodingAdditions
com.webobjects.foundation.NSKeyValueCodingAdditions.DefaultImplementation, com.webobjects.foundation.NSKeyValueCodingAdditions.Utility
 
Nested classes/interfaces inherited from interface com.webobjects.foundation.NSKeyValueCoding
com.webobjects.foundation.NSKeyValueCoding._BooleanFieldBinding, com.webobjects.foundation.NSKeyValueCoding._BooleanMethodBinding, com.webobjects.foundation.NSKeyValueCoding._FieldBinding, com.webobjects.foundation.NSKeyValueCoding._ForwardingBinding, com.webobjects.foundation.NSKeyValueCoding._KeyBinding, com.webobjects.foundation.NSKeyValueCoding._KeyBindingCreation, com.webobjects.foundation.NSKeyValueCoding._MethodBinding, com.webobjects.foundation.NSKeyValueCoding._NumberFieldBinding, com.webobjects.foundation.NSKeyValueCoding._NumberMethodBinding, com.webobjects.foundation.NSKeyValueCoding._ReflectionKeyBindingCreation, com.webobjects.foundation.NSKeyValueCoding.ErrorHandling, com.webobjects.foundation.NSKeyValueCoding.Null, com.webobjects.foundation.NSKeyValueCoding.UnknownKeyException, com.webobjects.foundation.NSKeyValueCoding.ValueAccessor
 
Nested classes/interfaces inherited from interface com.webobjects.foundation.NSValidation
com.webobjects.foundation.NSValidation._MethodBinding, com.webobjects.foundation.NSValidation._ValidationBinding, com.webobjects.foundation.NSValidation.DefaultImplementation, com.webobjects.foundation.NSValidation.Utility, com.webobjects.foundation.NSValidation.ValidationException
 
Field Summary
protected static java.util.Map cache
          The cached entries
protected  java.lang.Long cacheDuration
           
protected  ERXCachingWrapper.Entry entry
           
protected  java.lang.String entryName
           
protected  com.webobjects.foundation.NSArray keys
           
protected  com.webobjects.foundation.NSDictionary values
           
 
Fields inherited from class er.extensions.components.ERXComponent
_dynamicBindings
 
Fields inherited from class com.webobjects.appserver.WOComponent
_Extension, _IsEventLoggingEnabled, _keyAssociations
 
Fields inherited from interface com.webobjects.foundation.NSKeyValueCoding.ErrorHandling
_CLASS
 
Fields inherited from interface com.webobjects.foundation.NSKeyValueCodingAdditions
_CLASS, _KeyPathSeparatorChar, KeyPathSeparator
 
Fields inherited from interface com.webobjects.foundation.NSKeyValueCoding
NullValue
 
Fields inherited from interface com.webobjects.foundation.NSValidation
_CLASS
 
Constructor Summary
ERXCachingWrapper(com.webobjects.appserver.WOContext context)
          Public constructor
 
Method Summary
 void appendToResponse(com.webobjects.appserver.WOResponse response, com.webobjects.appserver.WOContext context)
          Calls ERXNonSynchronizingComponent.resetCachedBindingsInStatefulComponent() prior to super.appendToResponse.
 void awake()
           
protected  long cacheDuration()
           
protected  java.lang.String entryName()
           
 com.webobjects.foundation.NSKeyValueCoding formValues()
          Returns the form values as a KVC object.
 com.webobjects.foundation.NSKeyValueCoding headers()
          Returns the request headers as a KVC object.
 com.webobjects.appserver.WOActionResults invokeAction(com.webobjects.appserver.WORequest request, com.webobjects.appserver.WOContext context)
          Calls ERXNonSynchronizingComponent.resetCachedBindingsInStatefulComponent() prior to super.invokeAction.
protected  com.webobjects.foundation.NSArray keys()
           
 void takeValuesFromRequest(com.webobjects.appserver.WORequest request, com.webobjects.appserver.WOContext context)
          Calls ERXNonSynchronizingComponent.resetCachedBindingsInStatefulComponent() prior to super.takeValuesFromRequest.
protected  com.webobjects.foundation.NSDictionary values()
           
 
Methods inherited from class er.extensions.components.ERXStatelessComponent
isStateless, reset, valueForBooleanBinding, valueForBooleanBinding, valueForBooleanBinding, valueForIntBinding, valueForObjectBinding, valueForObjectBinding
 
Methods inherited from class er.extensions.components.ERXNonSynchronizingComponent
resetCachedBindingsInStatefulComponent, synchronizesVariablesWithBindings
 
Methods inherited from class er.extensions.components.ERXComponent
_awakeInContext, _checkAccess, _frameworkName, _includeCSSResources, _includeJavascriptResources, additionalCSSFiles, additionalJavascriptFiles, booleanValueForBinding, booleanValueForBinding, booleanValueForBinding, checkAccess, clickToOpenEnabled, componentName, defaultCSSPath, defaultJavascriptPath, dynamicBindings, floatValueForBinding, intValueForBinding, isPageAccessAllowed, localizer, objectValueForBinding, objectValueForBinding, pageWithName, postAppendToResponse, preAppendToResponse, primaryCSSFile, primaryJavascriptFile, stringValueForBinding, stringValueForBinding, useDefaultComponentCSS, useDefaultComponentJavascript
 
Methods inherited from class com.webobjects.appserver.WOComponent
_associationWithName, _childTemplate, _componentDefinition, _componentUnroll, _isPage, _setContext, _setIsPage, _setParent, _setSubcomponent, _sleepInContext, _subcomponentForElementWithID, _templateNameForClass, _unroll, application, baseURL, bindingKeys, canAccessFieldsDirectly, canGetValueForBinding, canSetValueForBinding, clone, context, debugString, descriptionForResponse, ensureAwakeInContext, frameworkName, generateResponse, handleQueryWithUnboundKey, handleTakeValueForUnboundKey, hasBinding, hasSession, isCachingEnabled, isEventLoggingEnabled, logString, name, pageWithName, parent, path, pathURL, performParentAction, pullValuesFromParent, pushValuesToParent, session, set_componentUnroll, set_unroll, setCachingEnabled, setValueForBinding, sleep, takeValueForKey, takeValueForKeyPath, template, templateWithHTMLString, templateWithName, toString, unableToSetNullForKey, validateTakeValueForKeyPath, validateValueForKey, validationFailedWithException, valueForBinding, valueForKey, valueForKeyPath
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

cache

protected static java.util.Map cache
The cached entries


keys

protected com.webobjects.foundation.NSArray keys

entryName

protected java.lang.String entryName

cacheDuration

protected java.lang.Long cacheDuration

entry

protected ERXCachingWrapper.Entry entry

values

protected com.webobjects.foundation.NSDictionary values
Constructor Detail

ERXCachingWrapper

public ERXCachingWrapper(com.webobjects.appserver.WOContext context)
Public constructor

Parameters:
context - the context
Method Detail

awake

public void awake()
Overrides:
awake in class com.webobjects.appserver.WOComponent

keys

protected com.webobjects.foundation.NSArray keys()

headers

public com.webobjects.foundation.NSKeyValueCoding headers()
Returns the request headers as a KVC object.


formValues

public com.webobjects.foundation.NSKeyValueCoding formValues()
Returns the form values as a KVC object.


entryName

protected java.lang.String entryName()

cacheDuration

protected long cacheDuration()

values

protected com.webobjects.foundation.NSDictionary values()

takeValuesFromRequest

public void takeValuesFromRequest(com.webobjects.appserver.WORequest request,
                                  com.webobjects.appserver.WOContext context)
Description copied from class: ERXNonSynchronizingComponent
Calls ERXNonSynchronizingComponent.resetCachedBindingsInStatefulComponent() prior to super.takeValuesFromRequest.

Overrides:
takeValuesFromRequest in class ERXNonSynchronizingComponent
Parameters:
request - from which the values will be taken
context - of the request

invokeAction

public com.webobjects.appserver.WOActionResults invokeAction(com.webobjects.appserver.WORequest request,
                                                             com.webobjects.appserver.WOContext context)
Description copied from class: ERXNonSynchronizingComponent
Calls ERXNonSynchronizingComponent.resetCachedBindingsInStatefulComponent() prior to super.invokeAction.

Overrides:
invokeAction in class ERXNonSynchronizingComponent
Parameters:
request - for which the action is invoked
context - of the request
Returns:
the result of invoking the action

appendToResponse

public void appendToResponse(com.webobjects.appserver.WOResponse response,
                             com.webobjects.appserver.WOContext context)
Description copied from class: ERXNonSynchronizingComponent
Calls ERXNonSynchronizingComponent.resetCachedBindingsInStatefulComponent() prior to super.appendToResponse.

Overrides:
appendToResponse in class ERXNonSynchronizingComponent
Parameters:
response - to which we are appending
context - context of the response

Last updated: Tue, Feb 21, 2017 • 05:45 PM CET

Copyright © 2002 – 2007 Project Wonder.