org.inria.ns.reflex.processor.exp
Class MacroProperty

java.lang.Object
  extended by org.inria.ns.reflex.processor.PropertyResolver.Impl
      extended by org.inria.ns.reflex.processor.exp.MacroProperty
All Implemented Interfaces:
PropertyResolver

public class MacroProperty
extends PropertyResolver.Impl

At runtime, the MacroProperty defines a predefined property backed by an inline implementation.

A macro property is registered when a module definition uses <exp:property> without the source attribute.

Author:
Philippe Poulard

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.inria.ns.reflex.processor.PropertyResolver
PropertyResolver.Impl
 
Constructor Summary
MacroProperty(AbstractAction actions)
          Creates a new macro function.
 
Method Summary
 Object getPropertyValue(DataSet dataSet, QName propertyName)
          Return null.
 
Methods inherited from class org.inria.ns.reflex.processor.PropertyResolver.Impl
removeProperty, setPropertyValue
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MacroProperty

public MacroProperty(AbstractAction actions)
Creates a new macro function. The macro function unmarshals its subactions before creation. Unlike other actions, the macro action has no method named "unmarshal".

Parameters:
actions - The action container.
Method Detail

getPropertyValue

public Object getPropertyValue(DataSet dataSet,
                               QName propertyName)
                        throws RecoverableException
Return null.

Specified by:
getPropertyValue in interface PropertyResolver
Overrides:
getPropertyValue in class PropertyResolver.Impl
Parameters:
dataSet - The set of datas used when the action is running. A concrete implementation must never try to find the property required in the data set because it would cause an infinite loop ! The data set may be used to retrieve other properties that can't be delivered by the current implementation of this interface.
propertyName - The name of the property.
Returns:
null.
Throws:
RecoverableException - When the property cause an error.