Class ZkInfo

java.lang.Object
org.zkoss.zk.ui.metainfo.ZkInfo
All Implemented Interfaces:
Serializable, NodeInfo, Condition

public class ZkInfo extends Object
Represents the zk element in a ZUML page.
Since:
3.5.0
Author:
tomyeh
See Also:
  • Constructor Details

  • Method Details

    • withSwitch

      public boolean withSwitch()
      Returns whether the switch condition is defined.
    • setSwitch

      public void setSwitch(String switchc)
      Sets the switch condition.
      Parameters:
      switchc - the switch condition; EL allowed. Ignored if null. Note: if it is an empty string, the switch condition (returned by resolveSwitch(org.zkoss.zk.ui.Page, org.zkoss.zk.ui.Component)) is an empty string.
    • resolveSwitch

      public Object resolveSwitch(Page page, Component comp)
      Returns the switch condition's value; evaluate EL expression if any.

      Note: unlike resolveCase(org.zkoss.zk.ui.Page, org.zkoss.zk.ui.Component), it might return null even if withSwitch() is true.

    • withCase

      public boolean withCase()
      Returns whether the case condition is defined.
    • setCase

      public void setCase(String casec)
      Sets the case condition.
    • resolveCase

      public Object[] resolveCase(Page page, Component comp)
      Returns the case condition's value, or null if no case is specified (i.e., withCase() is false. It evaluates EL expression if any.
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • resolveForEach

      public ForEach resolveForEach(Page page, Component comp)
      Returns the forEach object if the forEach attribute is defined (or ForEachBranchInfo.setForEach(java.lang.String, java.lang.String, java.lang.String) is called).

      If comp is not null, both pagedef and page are ignored. If comp is null, page must be specified.

      Parameters:
      page - the page. It is used only if comp is null.
      comp - the component.
      Returns:
      the forEach object to iterate this info multiple times, or null if this info shall be interpreted only once.
    • setForEach

      public void setForEach(String expr, String begin, String end)
      Sets the forEach attribute, which is usually an expression.
      Parameters:
      expr - the expression to return a collection of objects, or null/empty to denote no iteration.
    • setForEach

      public void setForEach(String expr, String begin, String end, String step)
      Sets the forEach attribute, which is usually an expression.
      Parameters:
      expr - the expression to return a collection of objects, or null/empty to denote no iteration.
      Since:
      8.0.0
    • withForEach

      public boolean withForEach()
      Returns whether the forEach condition is defined.
    • getCondition

      public ConditionImpl getCondition()
      Returns the effectiveness condition.
    • setCondition

      public void setCondition(ConditionImpl cond)
      Sets the effectiveness condition.
    • withCondition

      public boolean withCondition()
      Tests if the condition is set
    • appendChild

      public void appendChild(NodeInfo child)
      Description copied from interface: NodeInfo
      Append a child
      Specified by:
      appendChild in interface NodeInfo
    • removeChild

      public boolean removeChild(NodeInfo child)
      Description copied from interface: NodeInfo
      Removes a child.
      Specified by:
      removeChild in interface NodeInfo
    • getChildren

      public List<NodeInfo> getChildren()
      Description copied from interface: NodeInfo
      Returns a readonly list of children.

      Note: the returned list is readonly. To modify, please use NodeInfo.appendChild(org.zkoss.zk.ui.metainfo.NodeInfo) and NodeInfo.removeChild(org.zkoss.zk.ui.metainfo.NodeInfo) instead.

      Specified by:
      getChildren in interface NodeInfo
    • isEffective

      public boolean isEffective(Component comp)
      Description copied from interface: Condition
      Used to evaluate whether it is effective.
      Specified by:
      isEffective in interface Condition
      Parameters:
      comp - used as the self variable. Ignored if null.
    • isEffective

      public boolean isEffective(Page page)
      Description copied from interface: Condition
      Used to evaluate whether it is effective.
      Specified by:
      isEffective in interface Condition
      Parameters:
      page - used as the self variable. Ignored if null.
    • getEvaluatorRef

      public EvaluatorRef getEvaluatorRef()
      Description copied from interface: NodeInfo
      Returns the evaluator reference.
      Specified by:
      getEvaluatorRef in interface NodeInfo
    • getPageDefinition

      public PageDefinition getPageDefinition()
      Description copied from interface: NodeInfo
      Returns the page definition, i.e., the root node, or null if not available.
      Specified by:
      getPageDefinition in interface NodeInfo
    • getEvaluator

      public Evaluator getEvaluator()
      Description copied from interface: NodeInfo
      Returns the evaluator.

      All nodes in the same ZUML tree has the same evaluator reference (inherited from the root node, PageDefinition.getEvaluatorRef()).

      Specified by:
      getEvaluator in interface NodeInfo
    • getParent

      public NodeInfo getParent()
      Description copied from interface: NodeInfo
      Returns the parent, or null if it has no parent.
      Specified by:
      getParent in interface NodeInfo