Interface ArrayPane

  • All Superinterfaces:
    SimpleGraphicElement
    All Known Implementing Classes:
    AbstractArrayPane, ArrayPaneSilverpeasV5, ArrayPaneWithDataSource

    public interface ArrayPane
    extends SimpleGraphicElement
    The ArrayPane interface gives us the skeleton for all funtionnalities we need to display typical WA array table pane. Exemple :
    // Build a new ArrayPane.
    ArrayPane arrayPane = graphicFactory.getArrayPane("MyTodoArrayPane", pageContext);
    // Add two columns.
    arrayPane.addArrayColumn("Nom");
    arrayPane.addArrayColumn("Priorite");
    arrayPane.addArrayColumnWithAlignement("degres","center");
    // Add one line.
    ArrayLine arrayLine = arrayPane.addArrayLine();
    arrayLine.addArrayCellText();
    arrayLine.addArrayCellText();
    arrayLine.addArrayCellLink("Un nom", "javascript:onClick=viewToDo()");
    Version:
    1.0
    Author:
    squere
    • Method Detail

      • getOrderByFrom

        static <O> O getOrderByFrom​(javax.portlet.RenderRequest renderRequest,
                                    Map<Integer,​org.apache.commons.lang3.tuple.Pair<O,​O>> orderBiesByColumnIndex)
        Gets order by from given request and possible orderBies. The name of the array can be specified via the attributes of given request with TARGET_PARAMETER_NAME key.
        Parameters:
        renderRequest - the request.
        orderBiesByColumnIndex - the possible order by indexed by the column index which starts at 1.
        Returns:
        the order by.
      • getOrderByFrom

        static <O> O getOrderByFrom​(javax.portlet.RenderRequest renderRequest,
                                    Map<Integer,​org.apache.commons.lang3.tuple.Pair<O,​O>> orderBiesByColumnIndex,
                                    String defaultArrayPaneName)
        Gets order by from given request and possible orderBies. The name of the array can be specified via the attributes of given request with TARGET_PARAMETER_NAME key.
        Parameters:
        renderRequest - the request.
        orderBiesByColumnIndex - the possible order by indexed by the column index which starts at 1.
        defaultArrayPaneName - the name of the array to search for in session in order to get state and provide the right order by.
        Returns:
        the order by.
      • getOrderByFrom

        static <O> O getOrderByFrom​(javax.servlet.http.HttpServletRequest request,
                                    Map<Integer,​org.apache.commons.lang3.tuple.Pair<O,​O>> orderBiesByColumnIndex)
        Gets order by from given request and possible orderBies. The name of the array can be specified via the attributes of given request with TARGET_PARAMETER_NAME key.
        Parameters:
        request - the request.
        orderBiesByColumnIndex - the possible order by indexed by the column index which starts at 1.
        Returns:
        the order by.
      • getOrderByFrom

        static <O> O getOrderByFrom​(javax.servlet.http.HttpServletRequest request,
                                    Map<Integer,​org.apache.commons.lang3.tuple.Pair<O,​O>> orderBiesByColumnIndex,
                                    String defaultArrayPaneName)
        Gets order by from given request and possible orderBies. If no order by is defined into request, then the order by is retrieved from session if defaultArrayPaneName parameter is defined.
        Parameters:
        request - the request.
        orderBiesByColumnIndex - the possible order by indexed by the column index which starts at 1.
        defaultArrayPaneName - the name of the array to search for in session in order to get state and provide the right order by.
        Returns:
        the order by.
      • getOrderByFrom

        static <O> O getOrderByFrom​(javax.servlet.http.HttpServletRequest request,
                                    Map<String,​String> params,
                                    Map<Integer,​org.apache.commons.lang3.tuple.Pair<O,​O>> orderBiesByColumnIndex,
                                    String defaultArrayPaneName)
        Gets order by from given request and possible orderBies. If no order by is defined into request, then the order by is retrieved from session if defaultArrayPaneName parameter is defined.
        Parameters:
        request - the request.
        params - the request params.
        orderBiesByColumnIndex - the possible order by indexed by the column index which starts at 1.
        defaultArrayPaneName - the name of the array to search for in session in order to get state and provide the right order by.
        Returns:
        the order by.
      • getPaginationPageFrom

        static PaginationPage getPaginationPageFrom​(javax.portlet.RenderRequest renderRequest)
        Gets new pagination page of array from given request.
        Parameters:
        renderRequest - the request.
        Returns:
        a pagination page.
      • getPaginationPageFrom

        static PaginationPage getPaginationPageFrom​(javax.portlet.RenderRequest renderRequest,
                                                    String defaultArrayPaneName)
        Gets new pagination page of array from given request.
        Parameters:
        renderRequest - the request.
        defaultArrayPaneName - the name of the array to search for in session in order to get current pagination.
        Returns:
        a pagination page.
      • getPaginationPageFrom

        static PaginationPage getPaginationPageFrom​(javax.servlet.http.HttpServletRequest request)
        Gets new pagination page of array from given request.
        Parameters:
        request - the request.
        Returns:
        a pagination page.
      • getPaginationPageFrom

        static PaginationPage getPaginationPageFrom​(javax.servlet.http.HttpServletRequest request,
                                                    String defaultArrayPaneName)
        Gets new pagination page of array from given request.
        Parameters:
        request - the request.
        defaultArrayPaneName - the name of the array to search for in session in order to get current pagination.
        Returns:
        a pagination page.
      • getPaginationPageFrom

        static PaginationPage getPaginationPageFrom​(javax.servlet.http.HttpServletRequest request,
                                                    Map<String,​String> params,
                                                    String defaultArrayPaneName)
        Gets new pagination page of array from given request.
        Parameters:
        request - the request.
        params - the request params.
        defaultArrayPaneName - the name of the array to search for in session in order to get current pagination.
        Returns:
        a pagination page.
      • computeDataUserSessionIfAbsent

        static <T> T computeDataUserSessionIfAbsent​(javax.servlet.http.HttpServletRequest request,
                                                    String cacheKey,
                                                    Supplier<T> valueSupplier)
        Gets data from session from a given cache key or compute them from the given supplier if absent.

        If the parameter ajaxRequest (set automatically by sp.arrayPane JavaScript API) exists, then the data are retrieved from the user session.

        Type Parameters:
        T - the type of data.
        Parameters:
        request - the HTTP request.
        cacheKey - the key into the cache.
        valueSupplier - the data supplier.
        Returns:
        the data.
      • init

        void init​(String name,
                  javax.servlet.jsp.PageContext pageContext)
        Generic class to display a typical WA array table pane. A unique name identifier is to be used in html pages for this array specific actions (exemple : sort on a specific column)
        Parameters:
        name - A unique name in the page to display
      • init

        void init​(String name,
                  javax.servlet.ServletRequest request,
                  javax.servlet.http.HttpSession session)
        Constructor declaration
        Parameters:
        name -
        request -
        session -
      • init

        void init​(String name,
                  String url,
                  javax.servlet.ServletRequest request,
                  javax.servlet.http.HttpSession session)
        Constructor declaration
        Parameters:
        name -
        url -
        request -
        session -
      • addArrayColumn

        ArrayColumn addArrayColumn​(String title)
        Add a new column to the table.
        Parameters:
        title - The column title to display
        Returns:
        The new column header. You can use this object to modify the default display options.
      • addArrayLine

        ArrayLine addArrayLine()
        Add a line to the table. Be carefull : each line form the array has to contain the same cell number. If not, the array will contain some empty cells, and won't be sortable.
        Returns:
        an ArrayLine, to be used to add cells and to modify default display options.
      • getTitle

        String getTitle()
        Get the title
        Returns:
        The title
      • setTitle

        void setTitle​(String title)
        Set the array title, to be displayed on the first html table.
        Parameters:
        title - The title
      • getName

        String getName()
        Get the unique name
        Returns:
        The name of this object in the http page
      • setVisibleLineNumber

        void setVisibleLineNumber​(int maximum)
        Set the maximum line number visible in the table. If the number of line is greater than this maximum, only the first lines will be visible, and some buttons to view next and previous lines will be added.
        Parameters:
        maximum - The maximum number of visible lines
      • getColumnToSort

        int getColumnToSort()
        Get the column to be sorted
        Returns:
        The column number.
      • setColumnToSort

        void setColumnToSort​(int columnNumber)
        Modify the column number the sort will be based on.
        Parameters:
        columnNumber - The column to be sorted
      • print

        String print()
        Print the array line in an html format.
        Specified by:
        print in interface SimpleGraphicElement
        Returns:
        The html code, representing the array pane
      • getSession

        javax.servlet.http.HttpSession getSession()
        Get the session in which the ArrayPane will keep its state.
        Returns:
        The session
      • getRequest

        javax.servlet.ServletRequest getRequest()
        Get the request that can contains some parameters for the ArrayPane (sort action...)
        Returns:
        The entering request
      • setRoutingAddress

        void setRoutingAddress​(String address)
        change the routing address (the url of the page to which the column header refer) in the rare cases when you may not want it to be derived from the calling page. This method is called by the constructor if you precise an url to the GraphicElementFactory.
      • getSortable

        boolean getSortable()
        Get global array columns behaviour for sort. By default, all colums are sortable.
        Returns:
        True, if the array is sortable, false if not.
      • setSortable

        void setSortable​(boolean sortable)
        Set all array columns to be sortable or not. By default, all colums are sortable.
        Parameters:
        sortable - Set sortable to false if you want all the table to be unsortable.
      • getSortMode

        @Deprecated
        int getSortMode()
        Deprecated.
        Get the sort mode for all columns.
        Returns:
        The sort mode.
      • setSortMode

        @Deprecated
        void setSortMode​(int mode)
        Deprecated.
        Change the sort mode for all columns that could handle this mode.
        Parameters:
        mode - The new sort mode.
      • setCellsConfiguration

        @Deprecated
        void setCellsConfiguration​(int spacing,
                                   int padding,
                                   int borderWidth)
        Deprecated.
        Change presentation parameters for cells. Allows for more compact lines if need be.
      • setPaginationJavaScriptCallback

        void setPaginationJavaScriptCallback​(String callback)
      • getSummary

        String getSummary()
      • setSummary

        void setSummary​(String summary)
      • setXHTML

        void setXHTML​(boolean isXHTML)
      • getExportData

        boolean getExportData()
        Returns:
        true if the current array pane can be exported, false else if
      • setExportData

        void setExportData​(boolean export)
        Parameters:
        export - enable/disable export data from array pane
      • getExportDataURL

        String getExportDataURL()
        Returns:
        export data URL used to export current ArrayPane data
      • setExportDataURL

        void setExportDataURL​(String exportDataURL)
        Parameters:
        exportDataURL - the URL to set used to export array pane data
      • setSortableLines

        void setSortableLines​(boolean sortableLines)
      • setUpdateSortJavascriptCallback

        void setUpdateSortJavascriptCallback​(String callback)