Package com.tangosol.config.expression
Class ValueMacroExpression.MacroExpansionProcessor
- java.lang.Object
-
- com.tangosol.config.expression.ValueMacroExpression.MacroExpansionProcessor
-
- Direct Known Subclasses:
ValueMacroExpression.DefaultDelimiterExpansionProcessor
,ValueMacroExpression.OffsetLengthSubstringExpansionProcessor
- Enclosing class:
- ValueMacroExpression
protected static class ValueMacroExpression.MacroExpansionProcessor extends Object
A Macro Expansion Processor for a macro not containing any registered delimiters.
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
MacroExpansionProcessor()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
canProcess(String sMacro)
Return true iffsMacro
contains the delimiter that this processor handles.String
getDelimiter()
Return delimiter being used by the processor.String
process(String sMacro, ParameterResolver resolver, int cDepth)
Process macro parameter expansion onsMacro
containing no registered delimiters.boolean
validateMacroExpansion(String sProp, String sPropValue, String sDefault, int cDepth)
Validate macro expansion is not self referencing or contain circular references that will never complete expansion.
-
-
-
Method Detail
-
process
public String process(String sMacro, ParameterResolver resolver, int cDepth)
Process macro parameter expansion onsMacro
containing no registered delimiters.
-
canProcess
public boolean canProcess(String sMacro)
Return true iffsMacro
contains the delimiter that this processor handles.- Parameters:
sMacro
- the macro parameter- Returns:
- true iff this processor can process
sMacro
-
getDelimiter
public String getDelimiter()
Return delimiter being used by the processor.- Returns:
- delimiter used by the processor or empty string if processor does not have a delimiter
-
validateMacroExpansion
public boolean validateMacroExpansion(String sProp, String sPropValue, String sDefault, int cDepth)
Validate macro expansion is not self referencing or contain circular references that will never complete expansion.- Parameters:
sProp
- the propertysPropValue
- the expanded property valuecDepth
- count of macro expansions- Returns:
- false if self referencing in macro expansion or exceed {#link #MAX_MACRO_EXPANSIONS}; otherwise return true
-
-