Changeset 2961


Ignore:
Timestamp:
05/30/13 15:07:05 (11 years ago)
Author:
keeloo
Message:

Improved logic to carry the theme parameter along when navigating through the VLO. Not complete yet.

Location:
vlo/trunk/vlo_web_app/src/main/java/eu/clarin/cmdi/vlo
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • vlo/trunk/vlo_web_app/src/main/java/eu/clarin/cmdi/vlo/VloWebApplication.java

    r2960 r2961  
    44import eu.clarin.cmdi.vlo.config.VloContextConfig;
    55import eu.clarin.cmdi.vlo.dao.SearchResultsDao;
     6import eu.clarin.cmdi.vlo.pages.FacetBoxPanel;
     7import eu.clarin.cmdi.vlo.pages.FacetHeaderPanel;
     8import eu.clarin.cmdi.vlo.pages.FacetLinkPanel;
    69import eu.clarin.cmdi.vlo.pages.FacetedSearchPage;
    710import eu.clarin.cmdi.vlo.pages.ShowResultPage;
     
    151154    @Override
    152155    public void init() {
    153        
     156               
    154157        if (inContext) {
    155158           
     159            /*
     160             * send messages to objects that need a static reference to this web
     161             * application object. While this is only required in the case of the
     162             * results page BookmarkablePageLink method, uniform approach might be
     163             * the most prefarable one.
     164             */
     165            ShowResultPage.setWebApp(this);
     166            FacetBoxPanel.setWebApp(this);
     167            FacetHeaderPanel.setWebApp(this);
     168            FacetLinkPanel.setWebApp(this);
     169            FacetedSearchPage.setWebApp(this);
     170
    156171            // get the servlet's context
    157            
     172
    158173            ServletContext servletContext;
    159174            servletContext = this.getServletContext();
     
    180195     */
    181196    public VloWebApplication() {
    182 
    183         ShowResultPage.setWebApp(this);
    184197
    185198        /*
  • vlo/trunk/vlo_web_app/src/main/java/eu/clarin/cmdi/vlo/pages/FacetBoxPanel.java

    r2960 r2961  
    3232    private int maxNrOfFacetValues;
    3333
     34    // reference to the web application object
     35    static VloWebApplication webApp;
     36   
     37    /**
     38     * Make sure every web application object sends this message
     39     *
     40     * @param vloWebApplication reference to the web application object
     41     */
     42    public static void setWebApp (VloWebApplication vloWebApplication){
     43        webApp = vloWebApplication;
     44    }
     45   
    3446    public FacetBoxPanel(String id, IModel<FacetField> model) {
    3547        super(id, model);
     
    6880        pageParameters.add(ShowAllFacetValuesPage.SELECTED_FACET_PARAM, facetField.getName());
    6981        pageParameters.add(ShowAllFacetValuesPage.FACET_MIN_OCCURS, "1");
    70        
    71         // get a reference to the web application object
    72         VloWebApplication webApp = (VloWebApplication) this.getApplication();
    73         // add the persistent parameters stored in it to the panel parameters
     82
    7483        pageParameters = webApp.addPersistentParameters(pageParameters);
    75        
    7684       
    7785        add(new BookmarkablePageLink("showMore", ShowAllFacetValuesPage.class, pageParameters) {
  • vlo/trunk/vlo_web_app/src/main/java/eu/clarin/cmdi/vlo/pages/FacetHeaderPanel.java

    r2960 r2961  
    1111
    1212    private static final long serialVersionUID = 1L;
     13   
     14    // reference to the web application object
     15    static VloWebApplication webApp;
     16   
     17    /**
     18     * Make sure every web application object sends this message
     19     *
     20     * @param vloWebApplication reference to the web application object
     21     */
     22    public static void setWebApp (VloWebApplication vloWebApplication){
     23        webApp = vloWebApplication;
     24    }
    1325
    1426    public FacetHeaderPanel(String id, IModel<FacetModel> model, final SearchPageQuery query) {
     
    1830        PageParameters pageParameters = copy.getPageParameters();
    1931       
    20                 // get a reference to the web application object
    21         VloWebApplication webApp = (VloWebApplication) this.getApplication();
    22         // add the persistent parameters stored in it to the panel parameters
    2332        pageParameters = webApp.addPersistentParameters(pageParameters);
    2433       
  • vlo/trunk/vlo_web_app/src/main/java/eu/clarin/cmdi/vlo/pages/FacetLinkPanel.java

    r2960 r2961  
    44import org.apache.solr.client.solrj.response.FacetField.Count;
    55import org.apache.wicket.PageParameters;
     6import org.apache.wicket.Session;
    67import org.apache.wicket.markup.html.basic.Label;
    78import org.apache.wicket.markup.html.link.BookmarkablePageLink;
     
    1314
    1415    private static final long serialVersionUID = 1L;
     16   
     17    // reference to the web application object
     18    static VloWebApplication webApp;
     19   
     20    /**
     21     * Make sure every web application object sends this message
     22     *
     23     * @param vloWebApplication reference to the web application object
     24     */
     25    public static void setWebApp (VloWebApplication vloWebApplication){
     26        webApp = vloWebApplication;
     27    }
    1528
    1629    public FacetLinkPanel(String id, IModel<Count> model, final SearchPageQuery query) {
     
    2134        q.setFilterQuery(count);
    2235        PageParameters params = q.getPageParameters();
    23        
    24         // get a reference to the web application object
    25         VloWebApplication webApp = (VloWebApplication) this.getApplication();
    26         // add the persistent parameters stored in it to the panel parameters
     36
    2737        params = webApp.addPersistentParameters(params);
    2838       
  • vlo/trunk/vlo_web_app/src/main/java/eu/clarin/cmdi/vlo/pages/FacetedSearchPage.java

    r2960 r2961  
    3838    private final static AutoCompleteDao autoCompleteDao = new AutoCompleteDao();
    3939   
     40    // reference to the web application object
     41    static VloWebApplication webApp;
     42   
     43    /**
     44     * Make sure every web application object sends this message
     45     *
     46     * @param vloWebApplication reference to the web application object
     47     */
     48    public static void setWebApp (VloWebApplication vloWebApplication){
     49        webApp = vloWebApplication;
     50    }
     51   
    4052    /**
    4153     * @param parameters Page parameters
    4254     * @throws SolrServerException
    4355     */
    44     public FacetedSearchPage(final PageParameters parameters) { // removed 'final', not clear why the parameters need to be final
     56    public FacetedSearchPage(final PageParameters parameters) {
    4557        super(parameters);
    4658        query = new SearchPageQuery(parameters);
     
    7486            PageParameters pageParameters = query.getPageParameters();
    7587
    76             // get a reference to the web application object
    77             VloWebApplication webApp = (VloWebApplication) this.getApplication();
    78             // add the persistent parameters stored in it to the this page
    7988            pageParameters = webApp.addPersistentParameters(pageParameters);
    8089           
  • vlo/trunk/vlo_web_app/src/main/java/eu/clarin/cmdi/vlo/pages/ShowResultPage.java

    r2960 r2961  
    5353import org.apache.wicket.model.ResourceModel;
    5454import org.apache.wicket.protocol.http.RequestUtils;
    55 import org.apache.wicket.protocol.http.WebApplication;
    5655import org.apache.wicket.protocol.http.WicketURLDecoder;
    5756import org.apache.wicket.protocol.http.WicketURLEncoder;
     
    408407    }
    409408   
     409    // reference to the web application object
    410410    static VloWebApplication webApp;
    411411   
    412412    /**
    413      * Make sure the web application class invokes this method
    414      * @param app
     413     * Make sure every web application object sends this message
     414     *
     415     * @param vloWebApplication reference to the web application object
    415416     */
    416     public static void setWebApp (VloWebApplication app){
    417         webApp = app;
     417    public static void setWebApp (VloWebApplication vloWebApplication){
     418        webApp = vloWebApplication;
    418419    }
    419420
     
    421422        PageParameters pageParameters = query.getPageParameters();
    422423        pageParameters.put(ShowResultPage.PARAM_DOC_ID, WicketURLEncoder.QUERY_INSTANCE.encode(docId));
    423         // pageParameters.put("theme", "themeSetInShowResultPage");
    424         pageParameters.put("theme", webApp.getTheme());
    425         // this is where a link to the result page is create; the
    426         // page itself is created when the link is clicked
     424       
     425        webApp.addPersistentParameters(pageParameters);
     426       
    427427        BookmarkablePageLink<ShowResultPage> docLink = new BookmarkablePageLink<ShowResultPage>(linkId, ShowResultPage.class,
    428428                pageParameters);
Note: See TracChangeset for help on using the changeset viewer.