Changeset 9966


Ignore:
Timestamp:
2005-05-26T09:58:36+12:00 (19 years ago)
Author:
kjdon
Message:

only add in the docNodeList if there are some query results

Location:
trunk/gsdl3/src/java/org/greenstone/gsdl3/service
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/gsdl3/src/java/org/greenstone/gsdl3/service/AbstractMGPPSearch.java

    r9902 r9966  
    505505    // add a metadata item to specify what actual query was done - eg if stuff was stripped out etc. and then we can use the query later, cos we don't know which parameter was the query
    506506    GSXML.addMetadata(this.doc, metadata_list, "query", query);
    507     Element document_list = this.doc.createElement(GSXML.DOC_NODE_ELEM+GSXML.LIST_MODIFIER);
    508     result.appendChild(document_list);
    509     for (int d = 0; d < docs.size(); d++) {
    510         long docnum = ((MGPPDocInfo) docs.elementAt(d)).num_;
    511         float rank = ((MGPPDocInfo) docs.elementAt(d)).rank_;
    512         String doc_id = MGPPNum2OID(docnum);
    513         Element doc_node = createDocNode(doc_id, Float.toString(rank));
    514         //doc_node.setAttribute("rank", Float.toString(rank));
    515         document_list.appendChild(doc_node);
    516     }
    517 
     507    if (docs.size()>0) {
     508        Element document_list = this.doc.createElement(GSXML.DOC_NODE_ELEM+GSXML.LIST_MODIFIER);
     509        result.appendChild(document_list);
     510        for (int d = 0; d < docs.size(); d++) {
     511        long docnum = ((MGPPDocInfo) docs.elementAt(d)).num_;
     512        float rank = ((MGPPDocInfo) docs.elementAt(d)).rank_;
     513        String doc_id = MGPPNum2OID(docnum);
     514        Element doc_node = createDocNode(doc_id, Float.toString(rank));
     515        //doc_node.setAttribute("rank", Float.toString(rank));
     516        document_list.appendChild(doc_node);
     517        }
     518    }
    518519    // Create a term list to store the term information, and add it
    519520    String query_level = (String)params.get(LEVEL_PARAM); // the current query level
  • trunk/gsdl3/src/java/org/greenstone/gsdl3/service/AbstractMGSearch.java

    r9902 r9966  
    220220    GSXML.addMetadata(this.doc, metadata_list, "query", query);
    221221
    222     // Create a document list to store the matching documents, and add them
    223     Element document_list = this.doc.createElement(GSXML.DOC_NODE_ELEM+GSXML.LIST_MODIFIER);
    224     result.appendChild(document_list);
    225     for (int d = 0; d < docs.size(); d++) {
    226         long docnum = ((MGDocInfo) docs.elementAt(d)).num_;
    227         float rank = ((MGDocInfo) docs.elementAt(d)).rank_;
    228         String doc_id = MGNum2OID(docnum);
    229         Element doc_node = createDocNode(doc_id, Float.toString(rank));
    230         document_list.appendChild(doc_node);
    231     }
    232 
     222    if (docs.size() > 0) {
     223        // Create a document list to store the matching documents, and add them
     224        Element document_list = this.doc.createElement(GSXML.DOC_NODE_ELEM+GSXML.LIST_MODIFIER);
     225        result.appendChild(document_list);
     226        for (int d = 0; d < docs.size(); d++) {
     227        long docnum = ((MGDocInfo) docs.elementAt(d)).num_;
     228        float rank = ((MGDocInfo) docs.elementAt(d)).rank_;
     229        String doc_id = MGNum2OID(docnum);
     230        Element doc_node = createDocNode(doc_id, Float.toString(rank));
     231        document_list.appendChild(doc_node);
     232        }
     233    }
     234   
    233235    // Create a term list to store the term information, and add it
    234236    Element term_list = this.doc.createElement(GSXML.TERM_ELEM+GSXML.LIST_MODIFIER);
Note: See TracChangeset for help on using the changeset viewer.