Skip navigation links

Oracle® Coherence Java API Reference
Release 12.1.2.0.3

E26043-02


com.tangosol.coherence.config.xml.preprocessor
Class CacheDefaultsPreprocessor

java.lang.Object
  extended by com.tangosol.coherence.config.xml.preprocessor.CacheDefaultsPreprocessor

All Implemented Interfaces:
DocumentElementPreprocessor.ElementPreprocessor

public class CacheDefaultsPreprocessor
extends java.lang.Object
implements DocumentElementPreprocessor.ElementPreprocessor

A CacheDefaultsPreprocessor is an DocumentElementPreprocessor.ElementPreprocessor that introduces (via cloning) default xml content for xml elements where the said content is missing.

Ultimately this DocumentElementPreprocessor.ElementPreprocessor is designed to perform pre-processing of Coherence Cache <defaults> declarations, inserting them into the appropriate places in cache-config.xml documents.

Since:
Coherence 12.1.2
Author:
bo 2011.12.16
See Also:
OperationalDefaultsPreprocessor

Constructor Summary
CacheDefaultsPreprocessor(java.lang.String sDefaultsParentPath)
          Constructs a CacheDefaultsPreprocessor with a specific path to where default element content can be located.

 

Method Summary
 void addDefaultDefinition(java.lang.String sRequiredElementParentPath, java.lang.String sRequiredElementName)
          Adds a requirement that the specified "default" element must be added to (if not already defined) in the element specified by the defined parent path.
 boolean preprocess(ProcessingContext context, XmlElement element)
          Process an XmlElement, optionally mutating it (or it's children) if required.

 

Constructor Detail

CacheDefaultsPreprocessor

public CacheDefaultsPreprocessor(java.lang.String sDefaultsParentPath)
Constructs a CacheDefaultsPreprocessor with a specific path to where default element content can be located.

Example: new DefaultPreprocessor("/defaults");

Parameters:
sDefaultsParentPath - the absolute path to the XmlElement that contains (is the parent of) the default elements

Method Detail

preprocess

public boolean preprocess(ProcessingContext context,
                          XmlElement element)
                   throws ConfigurationException
Process an XmlElement, optionally mutating it (or it's children) if required.

Note: An implementation of this interface should avoid attempting to traverse child XmlElements. If you wish to manually traverse or change the entire document, you should instead use a DocumentPreprocessor.

Specified by:
preprocess in interface DocumentElementPreprocessor.ElementPreprocessor
Parameters:
context - the ProcessingContext in which the pre-processing is occuring
element - the XmlElement to preprocess
Returns:
true if the specified XmlElement should be re-preprocessed by this and other DocumentElementPreprocessor.ElementPreprocessors due to the XmlElement being modified, false otherwise.
Throws:
ConfigurationException - if during pre-processing of the XmlElement a configuration issue was discovered (or if pre-processing fails for some reason)

addDefaultDefinition

public void addDefaultDefinition(java.lang.String sRequiredElementParentPath,
                                 java.lang.String sRequiredElementName)
Adds a requirement that the specified "default" element must be added to (if not already defined) in the element specified by the defined parent path.

Paths used by this method are based those defined by the XmlHelper.findElement(XmlElement, String) method, with the exception that ".." is not supported.

For example 1: The following call specifies that the "serializer" should be cloned from the defined default path if it doesn't exist in the "/caching-schemes/distributed-scheme" element.

addDefaultDefinition("/caching-schemes/distributed-scheme", "serializer");

For example 2: The following call specifies that the "serializer" should be cloned from the defined default path if it doesn't exist in any "distributed-scheme" elements

addDefaultDefinition("distributed-scheme", "serializer");

Parameters:
sRequiredElementParentPath - the path of the parent for the required element
sRequiredElementName - the name of the element that should be cloned (if it doesn't exist in the specified parent path) from the defined default element path

Skip navigation links

Oracle® Coherence Java API Reference
Release 12.1.2.0.3

E26043-02


Copyright © 2000, 2014, Oracle and/or its affiliates. All rights reserved.