Class AuResponse

    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected java.lang.String _cmd  
      protected java.lang.Object[] _data
      Either String or DeferredValue.
      static int SC_ACTIVATION_TIMEOUT
      ZK-Error (5502) indicating the request is aborted, because it is waiting too long for the completion of the previous request.
      static int SC_OUT_OF_SEQUENCE
      ZK-Error (5501) indicating the request is out-of-sequence.
    • Constructor Summary

      Constructors 
      Constructor Description
      AuResponse​(java.lang.String cmd)
      Constructs a component-independent response.
      AuResponse​(java.lang.String cmd, java.lang.Object data)
      Constructs a component-independent response.
      AuResponse​(java.lang.String cmd, java.lang.Object[] data)
      Constructs a component-independent response.
      AuResponse​(java.lang.String cmd, Component depends, java.lang.Object data)
      Constructs a response with one or zero data.
      AuResponse​(java.lang.String cmd, Component depends, java.lang.Object[] data)
      Constructs a response with multiple data.
      AuResponse​(java.lang.String cmd, Page depends, java.lang.Object data)
      Constructs a response with single data.
      AuResponse​(java.lang.String cmd, Page depends, java.lang.Object[] data)
      Constructs a response with multiple data.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean equals​(java.lang.Object o)  
      java.lang.String getCommand()
      Returns the command of this response (never null).
      java.lang.Object getDepends()
      Returns the component or page that this response depends on.
      java.util.List<java.lang.Object> getEncodedData()
      Returns the evaluated result of the associated data of this response (might be null).
      java.lang.String getOverrideKey()
      Returns the override key.
      java.lang.Object[] getRawData()
      Returns the associated data of this response in the original format (might be null).
      int hashCode()  
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    • Field Detail

      • SC_OUT_OF_SEQUENCE

        public static final int SC_OUT_OF_SEQUENCE
        ZK-Error (5501) indicating the request is out-of-sequence. ZK-Error is returned as the response header of a failed AU request.
        Since:
        5.0.4
        See Also:
        Constant Field Values
      • SC_ACTIVATION_TIMEOUT

        public static final int SC_ACTIVATION_TIMEOUT
        ZK-Error (5502) indicating the request is aborted, because it is waiting too long for the completion of the previous request. ZK-Error is returned as the response header of a failed AU request.
        Since:
        6.5.2
        See Also:
        Constant Field Values
      • _cmd

        protected java.lang.String _cmd
      • _data

        protected java.lang.Object[] _data
        Either String or DeferredValue.
    • Constructor Detail

      • AuResponse

        public AuResponse​(java.lang.String cmd)
        Constructs a component-independent response.
        Since:
        5.0.0 (becomes public)
      • AuResponse

        public AuResponse​(java.lang.String cmd,
                          java.lang.Object data)
        Constructs a component-independent response.
        Parameters:
        data - the data. It can be null, String, Date, and any kind of objects that the client accepts (marshaled by JSON).
        Since:
        5.0.0 (becomes public)
      • AuResponse

        public AuResponse​(java.lang.String cmd,
                          java.lang.Object[] data)
        Constructs a component-independent response.
        Since:
        5.0.0 (becomes public)
      • AuResponse

        public AuResponse​(java.lang.String cmd,
                          Component depends,
                          java.lang.Object data)
        Constructs a response with one or zero data.
        Parameters:
        depends - specifies whether this response depends on whether the depends component. If depends is not null, this response shall be purged if the depends component is removed. If null, this response is called component-independent, and always sent to the client.

        Note: info of the depends component doesn't send to the client. It is used only to optimize what responses to send.

        data - specifies the data to be sent. If null, no data at all.
        Since:
        5.0.0 (becomes public)
      • AuResponse

        public AuResponse​(java.lang.String cmd,
                          Component depends,
                          java.lang.Object[] data)
        Constructs a response with multiple data.
        Since:
        5.0.0 (becomes public)
      • AuResponse

        public AuResponse​(java.lang.String cmd,
                          Page depends,
                          java.lang.Object data)
        Constructs a response with single data.
        Since:
        5.0.0 (becomes public)
      • AuResponse

        public AuResponse​(java.lang.String cmd,
                          Page depends,
                          java.lang.Object[] data)
        Constructs a response with multiple data.
        Parameters:
        data - an array of data (null to ignore). Each element must be an instance of String, DeferredValue or null.
        Throws:
        java.lang.IllegalArgumentException - if an element of data is neither String nor DeferredValue.
        Since:
        5.0.0 (becomes public)
    • Method Detail

      • getCommand

        public java.lang.String getCommand()
        Returns the command of this response (never null).
      • getEncodedData

        public java.util.List<java.lang.Object> getEncodedData()
        Returns the evaluated result of the associated data of this response (might be null).

        Note: when this method is called, DeferredValue will be evaluated. Thus, don't call it until the rendering phase. If you want to access it other than the render phase, use getRawData() instead.

        Note: it is a copy, so any modification to it won't affect the data of this response.

        Since:
        5.0.0
        See Also:
        getRawData()
      • getRawData

        public java.lang.Object[] getRawData()
        Returns the associated data of this response in the original format (might be null).

        Note: it is a readonly array. Don't change its value.

        Since:
        3.0.5
        See Also:
        getEncodedData()
      • getDepends

        public final java.lang.Object getDepends()
        Returns the component or page that this response depends on. If it is not null and the depends component/page is removed, this response shall be removed, too.

        Note: the returned object is either a Component or a Page.

      • getOverrideKey

        public java.lang.String getOverrideKey()
        Returns the override key. If null, this response will be appended. If not null, it overrides the previous response, if any, with the same override key and the same depends (getDepends()).

        Default: return null. The derived class shall override this method if it prefers to send the last response in the same category.

        Notice that if depends is null and the override key is not null, they are sharing a single namespace of an execution.

        Notice that if AbstractComponent.response(String,AuResponse) is called, this override key is ignored (and the first argument of the invocation is used).

        Since:
        5.0.2
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public final boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object