Changeset 4208


Ignore:
Timestamp:
12/20/13 10:03:18 (10 years ago)
Author:
keeloo
Message:

Finished the upgrade. The web application still needs to be tested.

Location:
vlo/branches/to-wicket-1.6/vlo_web_app
Files:
15 edited

Legend:

Unmodified
Added
Removed
  • vlo/branches/to-wicket-1.6/vlo_web_app/pom.xml

    r4199 r4208  
    2121        <endorsed.dir>${project.build.directory}/endorsed</endorsed.dir>
    2222        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    23         <netbeans.hint.deploy.server>Tomcat</netbeans.hint.deploy.server>
    2423    </properties>
    2524
  • vlo/branches/to-wicket-1.6/vlo_web_app/src/main/java/eu/clarin/cmdi/vlo/VloPageParameters.java

    r4201 r4208  
    2121        // needs to be here because of the other constructor
    2222        super ();
     23        // add the theme parameter
     24        // ...
    2325    }
    2426   
     
    3335        // needs to be implemented
    3436       
     37        // present the page parameters in the old style
     38       
    3539        param = null;
    3640       
     
    3943
    4044    /**
     45     * Take in  old style parameters.
     46     *
     47     *
     48     * not being used at the moment; use code in the previous method
    4149     *
    4250     * @param param
     
    6169
    6270    /**
    63      * Add this, VLO page parameters, to the parameters that are already
    64      * associated with the session
    6571     *
     72     * @param PersistentParameters parameters concerning theme and other
     73     * non query related parameters. These parameters are to kept in the URL
     74     * during the session.
    6675     */
    67     public void addToSession() {        
     76    public void merge(PageParameters parameters) {   
    6877       
    6978        // get a themed session from the current thread
     
    7180        themedSession = (VloSession)Session.get();
    7281       
    73         // store the parameters in the session object
    74         themedSession.addVloSessionPageParameters (this);
     82        // get the parameters associated with the session
     83        PageParameters persistentParameters;
     84        persistentParameters = themedSession.getVloSessionPageParameters();
     85       
     86        // merge the parameters with the persistent ones and return the result
     87       
     88        // ...
     89       
    7590    }
    7691}
  • vlo/branches/to-wicket-1.6/vlo_web_app/src/main/java/eu/clarin/cmdi/vlo/pages/BasePage.java

    r4199 r4208  
    5757        // set the applications start page link to the faceted search page
    5858        VloPageParameters startPageParameters = new VloPageParameters ();
    59         startPageParameters.addToSession();
    6059
    6160        BookmarkablePageLink link = new BookmarkablePageLink("startpage",
     
    7170        leftImage = new Image("leftimage", leftImageRes);
    7271 
    73         // add the image to the page
     72        // merge the image to the page
    7473        link.add(leftImage);
    7574
     
    8281        rightImage = new Image("rightimage", rightImageRes);
    8382       
    84         // add it to the page
     83        // merge it to the page
    8584        add (rightImage);
    8685       
  • vlo/branches/to-wicket-1.6/vlo_web_app/src/main/java/eu/clarin/cmdi/vlo/pages/DocumentLinkPanel.java

    r4199 r4208  
    1717        SolrDocument doc = model.getObject();
    1818        BookmarkablePageLink<ShowResultPage> docLink = ShowResultPage.createBookMarkableLink("docLink", query, doc.getFieldValue(
    19                 FacetConstants.FIELD_ID).toString(), (VloSession)getSession());
     19                FacetConstants.FIELD_ID).toString());
    2020        add(docLink);
    2121        Object nameValue = doc.getFirstValue(FacetConstants.FIELD_NAME);
  • vlo/branches/to-wicket-1.6/vlo_web_app/src/main/java/eu/clarin/cmdi/vlo/pages/FacetBoxPanel.java

    r4199 r4208  
    1616import org.apache.wicket.model.IModel;
    1717import org.apache.wicket.model.Model;
     18import org.apache.wicket.request.mapper.parameter.PageParameters;
    1819
    1920public class FacetBoxPanel extends BasePanel {
     
    6667        add(facetList);
    6768        VloPageParameters facetParameters = new VloPageParameters ();
    68                
    69         facetParameters.add(ShowAllFacetValuesPage.SELECTED_FACET_PARAM, facetField.getName());
    70         facetParameters.add(ShowAllFacetValuesPage.FACET_MIN_OCCURS, "1");
    71         facetParameters.addToSession();
     69           
     70        PageParameters extraParameters = new PageParameters ();
     71        extraParameters.add(ShowAllFacetValuesPage.SELECTED_FACET_PARAM, facetField.getName());
     72        extraParameters.add(ShowAllFacetValuesPage.FACET_MIN_OCCURS, "1");
     73       
     74        facetParameters.merge(extraParameters);
    7275
    7376        add(new BookmarkablePageLink("showMore", ShowAllFacetValuesPage.class, facetParameters) {
  • vlo/branches/to-wicket-1.6/vlo_web_app/src/main/java/eu/clarin/cmdi/vlo/pages/FacetHeaderPanel.java

    r4199 r4208  
    1818       
    1919        VloPageParameters newParam = new VloPageParameters ();
    20         newParam.mergeWith(param);
    21         newParam.addToSession();
    22        
     20 
    2321        add(new BookmarkablePageLink("allLink", FacetedSearchPage.class, newParam));
    2422        add(new Label("headerLabelSelect", model.getObject().getSelectedValue()));
  • vlo/branches/to-wicket-1.6/vlo_web_app/src/main/java/eu/clarin/cmdi/vlo/pages/FacetLinkPanel.java

    r4199 r4208  
    2222       
    2323        VloPageParameters newParam = new VloPageParameters ();
    24         newParam.mergeWith(param);
    25         newParam.addToSession();
    2624       
    2725        Link<Count> facetLink = new BookmarkablePageLink("facetLink", FacetedSearchPage.class, newParam);
  • vlo/branches/to-wicket-1.6/vlo_web_app/src/main/java/eu/clarin/cmdi/vlo/pages/FacetedSearchPage.java

    r4201 r4208  
    138138            }
    139139
    140             // finally, add the label to the form
     140            // finally, merge the label to the form
    141141            this.add(facetOverview);
    142142        }
     
    157157            add(submit);
    158158           
    159             // add link to help menu page
     159            // merge link to help menu page
    160160            String helpUrl = VloConfig.getHelpUrl();           
    161161            ExternalLink helpLink = new ExternalLink("helpLink", helpUrl, "help");
     
    186186
    187187            VloPageParameters newParam = new VloPageParameters();
    188             newParam.mergeWith(param);
    189             newParam.addToSession();
    190188           
    191189            setResponsePage(FacetedSearchPage.class, newParam);
     
    304302                }
    305303
    306                 // add HTML form to container
     304                // merge HTML form to container
    307305                String labelString;
    308306                if (totalResults == 1) {
     
    316314                contentSearchLabel.setEscapeModelStrings(false);
    317315                contentSearchContainer.add(contentSearchLabel);
    318                 // contentSearchContainer.add(link);
     316                // contentSearchContainer.merge(link);
    319317            } catch (UnsupportedEncodingException uee) {
    320318                contentSearchContainer.setVisible(false);
  • vlo/branches/to-wicket-1.6/vlo_web_app/src/main/java/eu/clarin/cmdi/vlo/pages/PrevNextHeaderPanel.java

    r4199 r4208  
    99
    1010import eu.clarin.cmdi.vlo.FacetConstants;
    11 import eu.clarin.cmdi.vlo.VloSession;
    1211import eu.clarin.cmdi.vlo.dao.DaoLocator;
    1312
     
    6665        if (index > 0) {
    6766            String prevDocId = docIdList.get(index - 1).getFieldValue(FacetConstants.FIELD_ID).toString();
    68             BookmarkablePageLink<ShowResultPage> prev = ShowResultPage.createBookMarkableLink("prev", query, prevDocId, (VloSession)getSession());
     67            BookmarkablePageLink<ShowResultPage> prev = ShowResultPage.createBookMarkableLink("prev", query, prevDocId);
    6968            add(prev);
    7069        } else {
     
    7675        if (index < (docIdList.size() - 1) && index >= 0) {
    7776            String prevDocId = docIdList.get(index + 1).getFieldValue(FacetConstants.FIELD_ID).toString();
    78             BookmarkablePageLink<ShowResultPage> next = ShowResultPage.createBookMarkableLink("next", query, prevDocId, (VloSession)getSession());
     77            BookmarkablePageLink<ShowResultPage> next = ShowResultPage.createBookMarkableLink("next", query, prevDocId);
    7978            add(next);
    8079        } else {
  • vlo/branches/to-wicket-1.6/vlo_web_app/src/main/java/eu/clarin/cmdi/vlo/pages/ShowAllFacetValuesPage.java

    r4201 r4208  
    3939         */
    4040        private void addOccurrencesFilter(PageParameters parameters) {
    41                 PageParameters newParameters = (PageParameters) parameters.clone();
     41                PageParameters newParameters = new PageParameters (parameters);
    4242                newParameters.remove(FACET_MIN_OCCURS);
    43                 if(!parameters.containsKey(FACET_MIN_OCCURS) || parameters.getAsInteger(FACET_MIN_OCCURS) == 1) {
     43                if(parameters.getPosition(FACET_MIN_OCCURS) == -1 || parameters.get(FACET_MIN_OCCURS).toInt() == 1) {
    4444                        newParameters.add(FACET_MIN_OCCURS, FACET_MIN_OCCURS_VALUE.toString());
    4545                        add(new BookmarkablePageLink<Void>("filter", ShowAllFacetValuesPage.class, newParameters).add(new Label("filterLabel", "Show only values that occur at least "+FACET_MIN_OCCURS_VALUE+" times")));
  • vlo/branches/to-wicket-1.6/vlo_web_app/src/main/java/eu/clarin/cmdi/vlo/pages/ShowResultPage.java

    r4199 r4208  
    44import eu.clarin.cmdi.vlo.Resources;
    55import eu.clarin.cmdi.vlo.StringUtils;
     6import eu.clarin.cmdi.vlo.VloPageParameters;
    67import eu.clarin.cmdi.vlo.VloWebApplication;
    78import eu.clarin.cmdi.vlo.VloSession;
     
    3233import org.apache.wicket.RequestCycle;
    3334import org.apache.wicket.behavior.AbstractBehavior;
     35import org.apache.wicket.behavior.Behavior;
    3436import org.apache.wicket.extensions.ajax.markup.html.AjaxLazyLoadPanel;
    3537import org.apache.wicket.extensions.markup.html.basic.SmartLinkMultiLineLabel;
     
    7476       
    7577        super(currentParam);
    76         final String docId = WicketURLDecoder.QUERY_INSTANCE.decode(getPageParameters().getString(PARAM_DOC_ID, null));
     78        final String docId;
     79        docId = WicketURLDecoder.QUERY_INSTANCE.decode(getPageParameters().get(PARAM_DOC_ID).toString());
    7780        SolrDocument solrDocument = DaoLocator.getSearchResultsDao().getSolrDocument(docId);
    7881        if (solrDocument != null) {
    7982            final SearchPageQuery query = new SearchPageQuery(currentParam);
    8083           
    81             // now the persistent parameters are not in the query parameters
    82             PageParameters newParam = new PageParameters ();
    83             // add the new query parameters to this map
    84             newParam.putAll(query.getPageParameters());
    85             // add the persistent parameters to this map
    86             //newParam = webApp.reflectPersistentParameters(newParam);
    87            
    88             newParam = ((VloWebApplication.ThemedSession)getSession()).reflectPersistentParameters(newParam);
     84            // create parameters from the query, and merge them with session related parameters
     85            VloPageParameters newParam;
     86            newParam = new VloPageParameters (query.getPageParameters());
    8987           
    9088            BookmarkablePageLink<String> backLink = new BookmarkablePageLink<String>("backLink", FacetedSearchPage.class, newParam);
     
    180178     * Create one column for the attributes and one column for their values.
    181179     *
    182      * @param
     180     * @newParam
    183181     */
    184     private IColumn[] createAttributesColumns() {
    185         IColumn[] columns = new IColumn[2];
     182    private List<IColumn> createAttributesColumns() {
     183        List<IColumn> columns = null;
    186184
    187185        // create the column for the attribute names
    188         columns[0] = new PropertyColumn<Object>(new ResourceModel(Resources.FIELD), "field") {
     186        IColumn column = null;
     187        column = new PropertyColumn<Object,Object>(new ResourceModel(Resources.FIELD), "field") {
    189188
    190189            @Override
     
    193192            }
    194193        };
     194        columns.add (column);
    195195
    196196        // create the column for the values of the attributes
    197         columns[1] = new AbstractColumn<DocumentAttribute>(new ResourceModel(Resources.VALUE)) {
     197        column = new AbstractColumn<DocumentAttribute, String>(new ResourceModel(Resources.VALUE)) {
    198198            @Override
    199199            public void populateItem(Item<ICellPopulator<DocumentAttribute>> cellItem,
     
    214214                    cellItem.add(new SmartLinkMultiLineLabel(componentId, attribute.getValue()) {
    215215                        @Override
    216                         protected void onComponentTagBody(MarkupStream markupStream, ComponentTag openTag) {
     216                        public void onComponentTagBody(MarkupStream markupStream, ComponentTag openTag) {
    217217                            setEscapeModelStrings(false);
    218218                            CharSequence body = getDefaultModelObjectAsString();
     
    223223                    cellItem.add(new SmartLinkMultiLineLabel(componentId, attribute.getValue()) {
    224224                        @Override
    225                         protected void onComponentTagBody(MarkupStream markupStream, ComponentTag openTag) {
     225                        public void onComponentTagBody(MarkupStream markupStream, ComponentTag openTag) {
    226226                            setEscapeModelStrings(false);
    227227                            CharSequence body = getDefaultModelObjectAsString();
     
    232232                    cellItem.add(new SmartLinkMultiLineLabel(componentId, attribute.getValue()) {
    233233                        @Override
    234                         protected void onComponentTagBody(MarkupStream markupStream, ComponentTag openTag) {
     234                        public void onComponentTagBody(MarkupStream markupStream, ComponentTag openTag) {
    235235                            CharSequence body = StringUtils.toMultiLineHtml(getDefaultModelObjectAsString());
    236236                            replaceComponentTagBody(markupStream, openTag, getSmartLink(body));
     
    245245            }
    246246        };
     247        columns.add (column);
    247248
    248249        return columns;
     
    252253     * Add landing page links to the result page.
    253254     *
    254      * @param solrDocument the document to get the links from
     255     * @newParam solrDocument the document to get the links from
    255256     */
    256257    private void addLandingPageLinks(SolrDocument solrDocument) {
     
    322323     * Add search page links to the result page.
    323324     *
    324      * @param solrDocument the document to get the links from
     325     * @newParam solrDocument the document to get the links from
    325326     */
    326327    private void addSearchPageLinks(SolrDocument solrDocument) {
     
    393394     * page.
    394395     *
    395      * @param solrDocument the document to get the links from
     396     * @newParam solrDocument the document to get the links from
    396397     */
    397398    private void addResourceLinks(SolrDocument solrDocument) {
     
    423424   
    424425    private void addFeedbackLink(final PageParameters parameters) {
    425         String thisURL = RequestUtils.toAbsolutePath(RequestCycle.get().urlFor(ShowResultPage.class, parameters).toString());
     426       
     427        // create VloPageParameters in orde to be able to convert to old style parameters
     428        VloPageParameters newParam = new VloPageParameters (parameters);
     429       
     430        String thisURL = RequestUtils.toAbsolutePath(RequestCycle.get().urlFor(ShowResultPage.class, newParam.convert()).toString(),null);
    426431        try {
    427432            thisURL = URLEncoder.encode(thisURL,"UTF-8");
     
    442447    }
    443448
    444     public static BookmarkablePageLink<ShowResultPage> createBookMarkableLink(String linkId, SearchPageQuery query, String docId, VloSession session) {
    445         PageParameters pageParameters = query.getPageParameters();
    446         pageParameters.put(ShowResultPage.PARAM_DOC_ID, WicketURLEncoder.QUERY_INSTANCE.encode(docId));
    447        
    448         // webApp.reflectPersistentParameters(pageParameters);
    449         // instead of this: pass page parameters back to the session
    450         session.reflectPersistentParameters(pageParameters);
     449    public static BookmarkablePageLink<ShowResultPage> createBookMarkableLink(String linkId, SearchPageQuery query, String docId) {
     450
     451        // create new page parameters from the query parameters and the session related ones
     452        VloPageParameters newParam;
     453        newParam = new VloPageParameters(query.getPageParameters());
     454        newParam.add(ShowResultPage.PARAM_DOC_ID, WicketURLEncoder.QUERY_INSTANCE.encode(docId));
    451455
    452456        BookmarkablePageLink<ShowResultPage> docLink = new BookmarkablePageLink<ShowResultPage>(linkId, ShowResultPage.class,
    453                 pageParameters);
     457                newParam);
    454458        return docLink;
    455459    }
     
    457461        /**
    458462         * Add contentSearch form (FCS)
    459          * @param solrDocument
     463         * @newParam solrDocument
    460464         */
    461465        private void addSearchServiceForm(final SolrDocument solrDocument) {
     
    483487        /**
    484488         * Add complete CMDI view
    485          * @param solrDocument
     489         * @newParam solrDocument
    486490         */
    487491        private void addCompleteCmdiView(final SolrDocument solrDocument) {
     
    515519               
    516520                // remove complete CMDI view on page load
    517                 add(new AbstractBehavior() {
     521                add(new Behavior() {
    518522                        private static final long serialVersionUID = 1865219352602175954L;
    519523
    520                         @Override
    521524                        public void renderHead(IHeaderResponse response) {
    522                                 super.renderHead(response);
     525
    523526                                response.renderOnLoadJavascript("toogleDiv('completeCmdi', 'toogleLink')");
    524527                        }
  • vlo/branches/to-wicket-1.6/vlo_web_app/src/main/java/eu/clarin/cmdi/vlo/pages/SolrDocumentDataProvider.java

    r2768 r4208  
    1313import eu.clarin.cmdi.vlo.dao.SearchResultsDao;
    1414
    15 public class SolrDocumentDataProvider extends SortableDataProvider<SolrDocument> {
     15public class SolrDocumentDataProvider extends SortableDataProvider<SolrDocument, String> {
    1616
    1717    private static final long serialVersionUID = 1L;
     
    3636
    3737    @Override
    38     public Iterator<? extends SolrDocument> iterator(int first, int count) {
     38    public Iterator<? extends SolrDocument> iterator(long first, long count) {
    3939        if (first != query.getStart().intValue() || count != query.getRows().intValue()) {
    40             query.setStart(first).setRows(count);
     40            query.setStart((int)first).setRows((int)count);
    4141            docList = null;
    4242        }
     
    5050
    5151    @Override
    52     public int size() {
     52    public long size() {
    5353        return (int) getDocList().getNumFound();
    5454    }
  • vlo/branches/to-wicket-1.6/vlo_web_app/src/main/java/eu/clarin/cmdi/vlo/pages/SolrFacetDataProvider.java

    r2768 r4208  
    1313import eu.clarin.cmdi.vlo.dao.SearchResultsDao;
    1414
    15 public class SolrFacetDataProvider extends SortableDataProvider<FacetField> {
     15public class SolrFacetDataProvider extends SortableDataProvider<FacetField, String> {
    1616
    1717    private static final long serialVersionUID = 1L;
     
    2929
    3030    @Override
    31     public Iterator<? extends FacetField> iterator(int first, int count) {
     31    public Iterator<? extends FacetField> iterator(long first, long count) {
    3232        return facets.iterator();
    3333    }
     
    4747
    4848    @Override
    49     public int size() {
     49    public long size() {
    5050        return (int) getFacets().size();
    5151    }
  • vlo/branches/to-wicket-1.6/vlo_web_app/src/main/java/eu/clarin/cmdi/vlo/pages/SolrFacetFieldDataProvider.java

    r2768 r4208  
    5757
    5858    @Override
    59     public Iterator<? extends Count> iterator(int first, int count) {
    60         return getFacet().getValues().subList(first, first + count).iterator();
     59    public Iterator<? extends Count> iterator(long first, long count) {
     60        return getFacet().getValues().subList((int)first, (int)first + (int)count).iterator();
    6161    }
    6262
    6363    @Override
    64     public int size() {
     64    public long size() {
    6565        return getFacet().getValueCount();
    6666    }
  • vlo/branches/to-wicket-1.6/vlo_web_app/src/test/java/eu/clarin/cmdi/vlo/SearchPageQueryTest.java

    r3935 r4208  
    55import org.apache.solr.client.solrj.response.FacetField;
    66import org.apache.solr.common.params.CommonParams;
    7 import org.apache.wicket.PageParameters;
     7import org.apache.wicket.request.mapper.parameter.PageParameters;
    88import static org.junit.Assert.assertEquals;
    99import static org.junit.Assert.assertNull;
Note: See TracChangeset for help on using the changeset viewer.