com.ibm.commerce.bi.taglib

Class CommonBaseTag

  • All Implemented Interfaces:
    java.io.Serializable, javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.tagext.JspTag, javax.servlet.jsp.tagext.Tag


    public abstract class CommonBaseTag
    extends BaseTag

    An abstract tag class which generates the data required for an analytics vendor to trigger a page view event. The generated data is placed in a HashMap object paramMap which the analytics vendor classes can consume. The value for all the keys in the HashMap, except for EXTRA_PARAMS, are String objects. The value for EXTRA_PARAMS will be an ArrayList object which inturn contain String objects

    Following is the structure of the HashMap object. The keys used in the map are defined in the TagConstants class.

     +------------------------------------------------------------+ 
     | PAGE_ID        | The value of the pagename attribute       | 
     +------------------------------------------------------------+
     | CATEGORY       | The category to which the page belongs    |
     +------------------------------------------------------------+
     | SRCH_KEYWORD   | In case of search results page, the       |
     |                | search keyword                            |
     +------------------------------------------------------------+
     | SRCH_RESULTS   | In case of search results page, the       |
     |                | number of search results returned         |
     +------------------------------------------------------------+
     | EXTRA_PARAMS   | The extra parameters which the users      |
     |                | want to send along with the pageview      |
     |                | tag. The value for this key will be an    |
     |                | object of type 'java.util.ArrayList'      |
     |                | which inturn contains String objects      |
     +------------------------------------------------------------+
     | STORE_ID       | The store identifier                      |
     +------------------------------------------------------------+
     
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field and Description
      static java.lang.String COPYRIGHT
      IBM copyright notice field.
      • Fields inherited from interface javax.servlet.jsp.tagext.IterationTag

        EVAL_BODY_AGAIN
      • Fields inherited from interface javax.servlet.jsp.tagext.Tag

        EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
    • Constructor Summary

      Constructors 
      Constructor and Description
      CommonBaseTag() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      int doStartTag()
      Gathers the required data to trigger the page view event.
      java.lang.String getDataAsJSON()
      Returns the analytics data in a JSON format
      java.util.HashMap<java.lang.String,java.lang.Object> getParamMap()
      Returns the page view map which contain the data required for an analytics vendor to invoke a page view event
      boolean isReturnAsJSON()
      Checks whether the tag need to return the data as JSON
      void setCategory(java.lang.String categoryVar)
      Sets the category to which the page belongs
      void setDatabean(CatEntrySearchListDataBean databeanVar)
      Set the databean that will be used to get the search keyword and number of search results in case of a search results page
      void setExtraparms(java.lang.String extraparmsVar)
      Sets the additional parameters that should be passed in the page view map
      void setPagename(java.lang.String pagenameVar)
      Sets the page name that need to be passed in the page view map
      void setPageType(java.lang.String pageTypeVar)
      Sets the page type that need to be passed in the page view map
      void setReturnAsJSON(boolean flag)
      Sets the boolean value whether to return the data as JSON
      void setSrchKeyword(java.lang.String srchKeywordVar)
      Sets the search keyword to be used in the page view map.
      void setSrchResults(java.lang.String srchResultsVar)
      Sets the search results to be used in the page view map.
      • Methods inherited from class javax.servlet.jsp.tagext.TagSupport

        doAfterBody, doEndTag, findAncestorWithClass, getId, getParent, getValue, getValues, release, removeValue, setId, setPageContext, setParent, setValue
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • COPYRIGHT

        public static final java.lang.String COPYRIGHT
        IBM copyright notice field.
        See Also:
        Constant Field Values
    • Constructor Detail

      • CommonBaseTag

        public CommonBaseTag()
    • Method Detail

      • doStartTag

        public int doStartTag()
                       throws javax.servlet.jsp.JspException
        Gathers the required data to trigger the page view event.
        Specified by:
        doStartTag in interface javax.servlet.jsp.tagext.Tag
        Overrides:
        doStartTag in class BaseTag
        Returns:
        always EVAL_PAGE constant
        Throws:
        javax.servlet.jsp.JspException - on any Exception
      • getParamMap

        public java.util.HashMap<java.lang.String,java.lang.Object> getParamMap()
        Returns the page view map which contain the data required for an analytics vendor to invoke a page view event
        Returns:
        The page view map
      • setCategory

        public void setCategory(java.lang.String categoryVar)
        Sets the category to which the page belongs
        Parameters:
        categoryVar - The category to which the page belongs
      • setDatabean

        public void setDatabean(CatEntrySearchListDataBean databeanVar)
        Set the databean that will be used to get the search keyword and number of search results in case of a search results page
        Parameters:
        databeanVar - The input databean to get the search keyword and number of search results in case of a search results page
      • setSrchKeyword

        public void setSrchKeyword(java.lang.String srchKeywordVar)
        Sets the search keyword to be used in the page view map. This value will override the search keyword from the search databean
        Parameters:
        srchKeywordVar - The search keyword to be used in the page view map
      • setSrchResults

        public void setSrchResults(java.lang.String srchResultsVar)
        Sets the search results to be used in the page view map. This value will override the search results from the search databean
        Parameters:
        srchResultsVar - The search results to be used in the page view map
      • setExtraparms

        public void setExtraparms(java.lang.String extraparmsVar)
        Sets the additional parameters that should be passed in the page view map
        Parameters:
        extraparmsVar - The additional parameters that will be passed in the page view map. Fields delimited by $ will be assumed to be methods applied to com.ibm.commerce.search.beans.CatEntrySearchListDataBean.
      • setPagename

        public void setPagename(java.lang.String pagenameVar)
        Sets the page name that need to be passed in the page view map
        Parameters:
        pagenameVar - The page name that needs to be passed in the page view map
      • setPageType

        public void setPageType(java.lang.String pageTypeVar)
        Sets the page type that need to be passed in the page view map
        Parameters:
        pageTypeVar - The page type that needs to be passed in the page view map
      • getDataAsJSON

        public java.lang.String getDataAsJSON()
        Returns the analytics data in a JSON format
        Returns:
        A JSON String
      • isReturnAsJSON

        public boolean isReturnAsJSON()
        Checks whether the tag need to return the data as JSON
        Returns:
        A boolean value whether the tag need to return the data as JSON
      • setReturnAsJSON

        public void setReturnAsJSON(boolean flag)
        Sets the boolean value whether to return the data as JSON
        Parameters:
        flag - The boolean value whether to return the data as JSON