Changeset 15672

Show
Ignore:
Timestamp:
23.05.2008 13:48:31 (11 years ago)
Author:
ak19
Message:

When there are no doc titles that start with a letter, browsing by title letter returns the empty A-Z classifier placeholder

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • other-projects/trunk/gs3-webservices-democlient/src/GS3Fedora/org/greenstone/fedora/services/FedoraGS3Connection.java

    r15670 r15672  
    17511751                    } 
    17521752                } 
     1753                // No titles in this collection that start with a letter at all  
     1754                if(!classifierNode.hasChildNodes()) { 
     1755                    // <classifierNode nodeID="CL1.0"> which we will equate with A-Z 
     1756                    Element subClassifier = doc.createElement( 
     1757                            GSXML.CLASS_NODE_ELEM); 
     1758                    attribute = doc.createAttribute(GSXML.NODE_ID_ATT); 
     1759                    attribute.setValue(classifierID+"."+0); // 
     1760                    subClassifier.setAttributeNode(attribute); 
     1761                    classifierNode.appendChild(subClassifier); 
     1762                } 
    17531763                break; 
    17541764            case 2: 
     
    17881798            String subClassifierNumber = classNodeIDs[i].substring(index+1); 
    17891799            int subClassifierNum = Integer.parseInt(subClassifierNumber); 
    1790             char letter = (char)('A' + subClassifierNum - 1); // A = 1 
     1800            String classifierName = ""; 
     1801            if(subClassifierNum == 0) { // no document titles started with a letter 
     1802                classifierName = "A-Z"; 
     1803            } else { 
     1804                char letter = (char)('A' + subClassifierNum - 1); // A = 1 
     1805                classifierName = String.valueOf(letter); 
     1806            } 
    17911807             
    17921808            // <classifierNode nodeID="CL#.subNum"> 
     
    18041820            // <metadata name="Title">letter</metadata> 
    18051821            Element metadata = this.createNameValuePairElement(doc,  
    1806                     GSXML.METADATA_ELEM, "Title", String.valueOf(letter)); 
     1822                    GSXML.METADATA_ELEM, "Title", classifierName); 
    18071823             
    18081824            // now connect up everything