Class MediaBrowserHandler

  • All Implemented Interfaces:
    JcmsConstants, JaliosConstants

    public class MediaBrowserHandler
    extends JcmsJspContext
    This handler controls the MediaBrowser.
    Since:
    jcms-5.5.0
    Version:
    $Revision: 128962 $
    Author:
    Olivier Jaquemet
    • Field Detail

      • staticMediaList

        protected static java.util.ArrayList<java.lang.String> staticMediaList
      • mediaList

        protected java.util.ArrayList<java.lang.String> mediaList
      • currentMedia

        protected java.lang.String currentMedia
      • workspaceList

        protected java.util.ArrayList<Workspace> workspaceList
      • catMode

        protected java.lang.String catMode
      • cids

        protected java.lang.String[] cids
      • text

        protected java.lang.String text
      • workspaceFilter

        protected boolean workspaceFilter
      • start

        protected int start
      • sortType

        protected java.lang.String sortType
      • sortReverse

        protected boolean sortReverse
    • Constructor Detail

      • MediaBrowserHandler

        public MediaBrowserHandler()
        Bean constructor.
    • Method Detail

      • reloadProperties

        public static void reloadProperties()
      • validate

        public boolean validate()
                         throws java.io.IOException
        Throws:
        java.io.IOException
      • computeFileDocumentSet

        public void computeFileDocumentSet()
        Compute the FileDocument result set to display in this media browser using the option already given.
      • getMediaList

        public java.util.ArrayList<java.lang.String> getMediaList()
        Retrieve the media list the media browser should display, as declared using property "media-browser.media-list".
        "all", "images", "videos", "sounds", "others".
        Returns:
        an ArrayList of String.
      • getCurrentMedia

        public java.lang.String getCurrentMedia()
        Retrieve the current media name displayed by this media browser.
        Returns:
        a String represeting the name of the media "all", "images".
        See Also:
        getMediaList()
      • isCurrentMedia

        public boolean isCurrentMedia​(java.lang.String media)
        Check if the given media is the same as the current one displayed by this media browser.
        Parameters:
        media - the media to check
        Returns:
        true if they are the same, false otherwise.
      • getMediaURL

        public java.lang.String getMediaURL​(java.lang.String media)
        Retrieve an url that can be used to display this media browser using a new media (the given one).
        Parameters:
        media - the new media to use
        Returns:
        an URL (with any parameters seperated with ampersand entity for use in HTML a href)
      • getMediaURL

        public java.lang.String getMediaURL​(java.lang.String media,
                                            boolean escapeAmpersand)
        Retrieve an url that can be used to display this media browser using a new media (the given one).
        Parameters:
        media - the new media to use
        escapeAmpersand - will use "&amp;" if true, "&" if false
        Returns:
        an URL.
        Since:
        jcms-9.0.0
      • getWorkspaceList

        public java.util.ArrayList<Workspace> getWorkspaceList()
        Retrieve the workspace list in which the logged member can work.
        Returns:
        an ArrayList of Workspace
      • getCatMode

        public java.lang.String getCatMode()
        Retrieve the current mode used for category refinement in this media browser.
        Returns:
        a String.
      • getCategorySet

        public java.util.Set<Category> getCategorySet()
        Retrieve the current categories used for refinement in this media browser.
        Returns:
        a Set of Category.
      • getText

        public java.lang.String getText()
        Retrieve the current text used for refinement in this media browser.
        Returns:
        a String.
      • isWorkspaceFilter

        public boolean isWorkspaceFilter()
        Check if workspace filter is enabled or not.
        Returns:
        true if it is enabled, false otherwise.
      • getResultSet

        public QueryResultSet getResultSet()
        Retrieve the QueryResultSet of FileDocument we are currently working on.
        Returns:
        a QueryResultSet of FileDocument (not sorted)
      • getTypeSet

        public java.util.Set<java.lang.Class<? extends FileDocument>> getTypeSet()
        Returns the Set of document type that can used in the given workspace by the given member.
        Returns:
        the Set of document type that can used in the given workspace by the given member.
        Since:
        jcms-9.0.0
      • setMedias

        public void setMedias​(java.lang.String[] medias)
        Set the medias authorized to be viewed for this MediaBrowser
        Parameters:
        medias - an array of medias (from "all", "image", "video" and "audio")
      • setMedia

        public void setMedia​(java.lang.String media)
        Set the media to display for this MediaBrowser.
        Parameters:
        media - a media (from "all","image","video" or "audio")
      • setCatMode

        public void setCatMode​(java.lang.String catMode)
        Set the mode to use when dealing with categories refinement in this MediaBrowser
        Parameters:
        catMode - the cat mode ("or" or "and")
        See Also:
        QueryHandler.setCatMode(String)
      • setCids

        public void setCids​(java.lang.String[] cids)
        Set the categories id used to refine FileDocument displayed in this MediaBrowser
        Parameters:
        cids - the category ids
      • setText

        public void setText​(java.lang.String text)
        Set the text to use to refine FileDocument displayed in this MediaBrowser
        Parameters:
        text - the text to search
      • setWorkspaceFilter

        public void setWorkspaceFilter​(boolean workspaceFilter)
        Set whether to refine using current workspace or not.
        Parameters:
        workspaceFilter - true to refine, false to use all workspace
      • setStart

        public void setStart​(int start)
      • setSort

        public void setSort​(java.lang.String sort)
      • setReverse

        public void setReverse​(boolean reverse)
      • isMediaBrowserQuery

        public static boolean isMediaBrowserQuery​(QueryHandler qh)
        Check if the specified QueryHandler is a MediaBrowser's query.
        In the current implementation, it indicates that this query has been processed through MediaBrowserHandler.java in "work/mediaBrowser.jsp".
        Parameters:
        qh - the QueryHandler to check
        Returns:
        true if the query being filtered is a MediaBrowser's query, false for any other query.
        Since:
        jcms-7.0.0
      • getMedia

        public static java.lang.String getMedia​(QueryHandler qh)
        Retrieve the media selected in the specified MediaBrowser's query.
        The media is a string taken from coma seperated value specified in property "media-browser.media-list"
        Parameters:
        qh - the QueryHandler to check
        Returns:
        the media String selected in the media browser or null if the specified query is not a MediaBrowser's query
        Since:
        jcms-7.0.0
      • getWorkspaceQueryOptions

        public static java.lang.String getWorkspaceQueryOptions​(javax.servlet.http.HttpServletRequest request)
        Returns the request parameters to add to URL for retrieve the workspaces list in Ajax.
        Parameters:
        request - current HttpServletRequest
        Returns:
        URL parameters as JSON format
      • isAllWorkspaceFilter

        public boolean isAllWorkspaceFilter()
      • setAllWorkspaceFilter

        public void setAllWorkspaceFilter​(boolean allWorkspaceFilter)
      • isAllMyWorkspaceFilter

        public boolean isAllMyWorkspaceFilter()
      • setAllMyWorkspaceFilter

        public void setAllMyWorkspaceFilter​(boolean allMyWorkspaceFilter)