Class ZScript

java.lang.Object
org.zkoss.zk.ui.metainfo.ZScript
All Implemented Interfaces:
Serializable

public class ZScript extends Object implements Serializable
Represents a zscript content.
Author:
tomyeh
See Also:
  • Constructor Details

    • ZScript

      public ZScript(String zslang, String content)
      Creates a zscript with the content directly.
      Parameters:
      zslang - the scripting language. If null, it is the same as Page.getZScriptLanguage().
      content - the zscript content
      See Also:
    • ZScript

      public ZScript(String zslang, URL url)
      Creates a zscript with an URL that is used to load the content.
    • ZScript

      public ZScript(EvaluatorRef evalr, String zslang, String url, org.zkoss.util.resource.Locator locator)
      Creates a zscript with an URL that is used to load the content.
      Parameters:
      evalr - the evaluator used to evaluate
      Throws:
      IllegalArgumentException - if url or locator is null, or url contains EL and evalr is null.
  • Method Details

    • parseContent

      public static final ZScript parseContent(String content)
      Parses the content into a ZScript instance.

      This method assumes the content is in the following format:
      lang:codes
      codes

      For example, "javascript:var m = 0;" returns "javascript", while "var m = 0;" returns null.

      Note: if the language doesn't exist, null is returned. Reason: the above syntax may be conflict with some scripting languages.

      Note: no space is allowed.

      Parameters:
      content - the content of zscript codes
      Since:
      3.0.0
    • parseContent

      public static final ZScript parseContent(String content, int lineno)
      Parses the content into a ZScript instance.

      It is similar to parseContent(String) except it allows the caller to specify the line number of the first line of the content.

      Parameters:
      content - the content of zscript codes
      lineno - the line number of the first line. Ignored if zero (or negative).
      Since:
      3.6.1
    • getLanguage

      public String getLanguage()
      Returns the scripting language, or null if the default scripting language is preferred.
    • setLanguage

      public void setLanguage(String zslang)
      Sets the scripting language.
      Parameters:
      zslang - the scripting language. If null, the default scripting language is assume.
    • getRawContent

      public String getRawContent()
      Returns the raw content. It is the content specified in the constructor (ZScript(String, String). If URL is specified in the constructor, null is returned.

      On the other hand, getContent(org.zkoss.zk.ui.Page, org.zkoss.zk.ui.Component) will load the content automatically if URL is specified.

      Returns:
      the raw content specified in the constructor, or null if URL is specified instead.
    • getContent

      public String getContent(Page page, Component comp)
      Returns the content of zscript. If URL is specified, this method loads the content from it. If URL is an EL expression, it will be evaluated first.
      Parameters:
      page - the page when this zscript is interpreted. Used only if this object is constructed with ZScript(EvaluatorRef, String, String, Locator).
      comp - the component when this zscript is interpreted. Used only if this object is constructed with ZScript(EvaluatorRef, String, String, Locator).
      Throws:
      UiException - if failed to load the content
    • toString

      public String toString()
      Overrides:
      toString in class Object