Ignore:
Timestamp:
06/02/07 21:23:20 (13 years ago)
Author:
lawrence
Message:

Modifications to show original records

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TI07-MOLES/trunk/PythonCode/wsgi/eXistInterface.py

    r2098 r2118  
    6767        ''' Return the number of hits associated with the query that created session id ''' 
    6868        return self.xmlrpc.getHits(id) 
     69     
     70    def getDoc(self,collectionName,documentName): 
     71        ''' Lightweight interface to the getDocument method ''' 
     72        name='%s/%s'%(collectionName,documentName) 
     73        r=self.xmlrpc.getDocumentAsString(name,{}) 
     74        return r 
     75     
     76# unfortunately it looks like the exist server doesn't support introspection 
     77#    def showMethods(self): 
     78#        print self.xmlrpc.system.listMethods() 
    6979         
    7080class ndg_eXist(eXist_Connector): 
     
    142152        return r 
    143153         
     154    
     155import unittest 
     156 
     157class TestCase(unittest.TestCase): 
     158     
     159    def testFullText(self): 
     160             
     161        ''' Exercises some of the methods based on something we hope might exist in the database ''' 
     162         
     163        existDB=ndg_eXist(db='glue.badc.rl.ac.uk') 
     164        id,summary=existDB.full_text('neodc') 
     165         
     166        r=existDB.retrieveNext(id) 
     167        d=summary['documents'][0][0] 
     168        print d 
     169        doc=existDB.getDoc('/db/discovery/moles',d) 
     170         
     171        ok=existDB.sessionRelease(id) 
     172        self.assertEqual(1,ok) 
     173 
    144174if __name__=="__main__": 
    145      
    146      
    147     existDB=ndg_eXist() 
    148     gepidaeDB=ndg_eXist(db='gepidae.esc.rl.ac.uk') 
    149      
    150     #these both work fine 
    151     #id,summary=existDB.full_text('coapec') 
    152     #print 'GLUE:',summary 
    153      
    154     #print 'GLUE AGAIN:',existDB.querySummary(id) 
    155      
    156     id,summary=gepidaeDB.full_text('coapec') 
    157     print 'GEPIDAE:\n ',summary 
    158      
    159     #we can retrieve them all and look at them ... 
    160     r=1 
    161     # just get one for now 
    162     #while r is not None: 
    163     r=gepidaeDB.retrieveNext(id) 
    164     if r is not None: print r 
    165  
    166      
    167     #existDB.release(id) 
    168      
    169     gepidaeDB.release(id) 
    170     #print 'done simple' 
    171      
    172     #now try and get the DIF documents alone: 
    173     #works fine: print gepidaeDB.getDIF('badc.nerc.ac.uk:DIF:dataent10') 
    174     #crashes:  
    175     #print existDB.getDIF('badc.nerc.ac.uk:DIF:dataent10') 
    176      
    177     print 'done getDIF' 
    178      
    179     #start,howmany=4,4 
    180     #existDB.chunkedFullText('badc',start,howmany) 
    181      
    182      
    183  
    184      
    185      
     175    unittest.main() 
     176  
Note: See TracChangeset for help on using the changeset viewer.