/* If.java Purpose: Description: History: Tue Sep 6 15:33:06 2005, Created by tomyeh Copyright (C) 2005 Potix Corporation. All Rights Reserved. {{IS_RIGHT This program is distributed under LGPL Version 2.1 in the hope that it will be useful, but WITHOUT ANY WARRANTY. }}IS_RIGHT */ package org.zkoss.web.servlet.dsp.action; import java.io.IOException; import java.io.StringWriter; import org.zkoss.web.servlet.dsp.DspException; /** * Tests whether an condition is true and render the child only * if the condition is true. * * @author tomyeh */ public class If extends AbstractAction { private boolean _cond, _trim; /** Returns the test result. */ public boolean getTest() { return _cond; } /** Sets the test result. */ public void setTest(boolean cond) { _cond = cond; } /** Returns whether to trim the result. * <p>Default: true. */ public boolean isTrim() { return _trim; } /** Sets whether to trim the result. */ public void setTrim(boolean trim) { _trim = trim; } //-- Action --// public void render(ActionContext ac, boolean nested) throws DspException, IOException { if (nested && _cond && isEffective()) { final StringWriter out = getFragmentOut(ac, _trim); renderFragment(ac, out, _trim); if (out != null) ac.getOut().write(out.toString()); } } //-- Object --// public String toString() { return "if"; } }