org.webmacro.engine
Class VoidMacro

java.lang.Object
  extended byorg.webmacro.engine.VoidMacro
All Implemented Interfaces:
Macro

public final class VoidMacro
extends java.lang.Object
implements Macro

VoidMacro doesn't output data to the output stream, but will log a debug message (if debugging is turned on) when either of it's methods are called.

In addition, since this is a special-case Macro, and really only used by the PropertyOperator and Variable classes, we have a public static field called instance that will return an already created instance of this guy. Since it doesn't do anything, we really only need 1 of them around.

Since:
0.96
Author:
e_ridge

Field Summary
static VoidMacro instance
           
 
Constructor Summary
VoidMacro()
           
 
Method Summary
 java.lang.Object evaluate(Context context)
          Always throws a new PropertyException.VoidValueException
 void write(FastWriter out, Context context)
          Interpret the directive and write it out, using the values in the supplied context as appropriate.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

instance

public static final VoidMacro instance
Constructor Detail

VoidMacro

public VoidMacro()
Method Detail

write

public void write(FastWriter out,
                  Context context)
           throws PropertyException,
                  java.io.IOException
Description copied from interface: Macro
Interpret the directive and write it out, using the values in the supplied context as appropriate.

Specified by:
write in interface Macro
Throws:
PropertyException - if required data was missing from context
java.io.IOException - if we could not successfully write to out

evaluate

public java.lang.Object evaluate(Context context)
                          throws PropertyException
Always throws a new PropertyException.VoidValueException

Specified by:
evaluate in interface Macro
Throws:
PropertyException - if required data was missing from context