public class ParameterMacroExpression<T> extends Object implements com.tangosol.config.expression.Expression<T>, ExternalizableLite, PortableObject
ParameterMacroExpression
is an Expression
representing the use of a Coherence Parameter Macro,
typically occurring with in a Coherence Cache Configuration file.
Coherence Macro Parameters are syntactically represented as follows:
{parameter-name [default-value]}
When a ParameterMacroExpression
is evaluated the parameter-name and it's associated value is resolved by
consulting the provided ParameterResolver
. If the parameter is resolvable,
the value of the resolved parameter is returned. If it's not resolvable the default value is returned.
Note: Returned values are always coerced into the type defined by the Expression
.
Constructor and Description |
---|
ParameterMacroExpression()
Default constructor needed for serialization.
|
ParameterMacroExpression(String sExpression,
Class<T> clzResultType)
Construct a
ParameterMacroExpression . |
Modifier and Type | Method and Description |
---|---|
T |
evaluate(com.tangosol.config.expression.ParameterResolver resolver)
Evaluates the
Expression to produce a value of type T. |
void |
readExternal(DataInput in)
Restore the contents of this object by loading the object's state from
the passed DataInput object.
|
void |
readExternal(PofReader in)
Restore the contents of a user type instance by reading its state using
the specified PofReader object.
|
String |
toString() |
void |
writeExternal(DataOutput out)
Save the contents of this object by storing the object's state into
the passed DataOutput object.
|
void |
writeExternal(PofWriter out)
Save the contents of a POF user type instance by writing its state using
the specified PofWriter object.
|
public ParameterMacroExpression()
public ParameterMacroExpression(String sExpression, Class<T> clzResultType)
ParameterMacroExpression
.sExpression
- a string representation of the Expression
clzResultType
- the type of value the Expression
will return when evaluatedpublic T evaluate(com.tangosol.config.expression.ParameterResolver resolver)
Expression
to produce a value of type T.evaluate
in interface com.tangosol.config.expression.Expression<T>
resolver
- the ParameterResolver
for resolving any parameters used by the Expression
public void readExternal(DataInput in) throws IOException
readExternal
in interface ExternalizableLite
in
- the DataInput stream to read data from in order to restore
the state of this objectIOException
- if an I/O exception occursNotActiveException
- if the object is not in its initial
state, and therefore cannot be deserialized intopublic void writeExternal(DataOutput out) throws IOException
writeExternal
in interface ExternalizableLite
out
- the DataOutput stream to write the state of this object toIOException
- if an I/O exception occurspublic void readExternal(PofReader in) throws IOException
readExternal
in interface PortableObject
in
- the PofReader from which to read the object's stateIOException
- if an I/O error occurspublic void writeExternal(PofWriter out) throws IOException
writeExternal
in interface PortableObject
out
- the PofWriter to which to write the object's stateIOException
- if an I/O error occurs