Changeset 93

Show
Ignore:
Timestamp:
11/06/09 12:59:23 (3 weeks ago)
Author:
TerryBrown
bzr:user-agent:
bzr1.13.1+bzr-svn0.5.3
bzr:text-parents:

.leo svn-v4:024821f5-3938-0410-9e91-f12db5f4c5db:trunk/src/catalog:86
.leo/shadow svn-v4:024821f5-3938-0410-9e91-f12db5f4c5db:trunk/src/catalog:86
bzr:root:
trunk/src/catalog
svn:original-date:
2009-11-06T18:59:21.982000Z
bzr:revprop:branch-nick:
trunk/src/catalog
bzr:repository-uuid:
024821f5-3938-0410-9e91-f12db5f4c5db
bzr:base-revision:
svn-v4:024821f5-3938-0410-9e91-f12db5f4c5db:trunk/src/catalog:90
bzr:revno:
67
bzr:file-ids:

.bzrignore NEW-trunk%2Fsrc%2Fcatalog%2F.bzrignore
.leo 64@024821f5-3938-0410-9e91-f12db5f4c5db:trunk%2Fsrc%2Fcatalog%2F.leo
.leo/shadow 65@024821f5-3938-0410-9e91-f12db5f4c5db:trunk%2Fsrc%2Fcatalog%2F.leo%2Fshadow
.leo/shadow/xdbfio.py 65@024821f5-3938-0410-9e91-f12db5f4c5db:trunk%2Fsrc%2Fcatalog%2F.leo%2Fshadow%2Fxdbfio.py
.leo/shadow/xdwenv.py NEW-trunk%2Fsrc%2Fcatalog%2F.leo%2Fshadow%2Fxdwenv.py
.leo/shadow/ximportShapefile 65@024821f5-3938-0410-9e91-f12db5f4c5db:trunk%2Fsrc%2Fcatalog%2F.leo%2Fshadow%2FximportShapefile
.leo/shadow/xmodels.py NEW-trunk%2Fsrc%2Fcatalog%2F.leo%2Fshadow%2Fxmodels.py
.leo/shadow/xsteps.py NEW-trunk%2Fsrc%2Fcatalog%2F.leo%2Fshadow%2Fxsteps.py
.leo/shadow/xtablesummary.py 65@024821f5-3938-0410-9e91-f12db5f4c5db:trunk%2Fsrc%2Fcatalog%2F.leo%2Fshadow%2Fxtablesummary.py
__init__.py 18@024821f5-3938-0410-9e91-f12db5f4c5db:trunk%2Fsrc%2Fcatalog%2F__init__.py
catalog.conf 12@024821f5-3938-0410-9e91-f12db5f4c5db:trunk%2Fsrc%2Fcatalog%2Fcatalog.conf
data.py 48@024821f5-3938-0410-9e91-f12db5f4c5db:trunk%2Fsrc%2Fcatalog%2Fdata.py
dataserver.py 48@024821f5-3938-0410-9e91-f12db5f4c5db:trunk%2Fsrc%2Fcatalog%2Fdataserver.py
dataworkshop.ini NEW-trunk%2Fsrc%2Fcatalog%2Fdataworkshop.ini
dbfio.py 55@024821f5-3938-0410-9e91-f12db5f4c5db:trunk%2Fsrc%2Fcatalog%2Fdbfio.py
dwenv.py NEW-trunk%2Fsrc%2Fcatalog%2Fdwenv.py
files.py 14@024821f5-3938-0410-9e91-f12db5f4c5db:trunk%2Fsrc%2Fcatalog%2Ffiles.py
importShapefile 58@024821f5-3938-0410-9e91-f12db5f4c5db:trunk%2Fsrc%2Fcatalog%2FimportShapefile
models.py 14@024821f5-3938-0410-9e91-f12db5f4c5db:trunk%2Fsrc%2Fcatalog%2Fmodels.py
serv.py 12@024821f5-3938-0410-9e91-f12db5f4c5db:trunk%2Fsrc%2Fcatalog%2Fserv.py
steps.py 34@024821f5-3938-0410-9e91-f12db5f4c5db:trunk%2Fsrc%2Fcatalog%2Fsteps.py
tablesummary.py 54@024821f5-3938-0410-9e91-f12db5f4c5db:trunk%2Fsrc%2Fcatalog%2Ftablesummary.py
test.py 34@024821f5-3938-0410-9e91-f12db5f4c5db:trunk%2Fsrc%2Fcatalog%2Ftest.py
tests.py 48@024821f5-3938-0410-9e91-f12db5f4c5db:trunk%2Fsrc%2Fcatalog%2Ftests.py
bzr:mapping-version:
v4
Message:

fix some bugs, add proper titles for datasets

Location:
trunk/src/catalog
Files:
5 modified

Legend:

Unmodified
Added
Removed
  • trunk/src/catalog/dataserver.py

    r90 r93  
    1717        for repo in self.repositories: 
    1818            if repo.startswith('postgres://'): 
     19                self.repo = repo  # FIXME - cheap pass to describe() 
    1920                print shpview.parsePosturl(repo) 
    2021                con = psycopg2.connect(shpview.parsePosturl(repo)['connect2']) 
     
    101102 
    102103        return None 
     104    def describe(self, URN): 
     105        """describe the named resource""" 
     106        con = psycopg2.connect(shpview.parsePosturl(self.repo)['connect2']) 
     107        cur = con.cursor() 
     108        table_name = URN.split('.')[-1] 
     109        q = """select title from meta.describe where tablename = '%s'""" % table_name 
     110        cur.execute(q) 
     111        ans = cur.fetchone() 
     112        if not ans: 
     113            ans = table_name+"???" 
     114        else: 
     115            ans = ans[0] 
     116        return ans 
    103117    def fieldDesc(self, URN, name): 
    104118        """return dsecription of field in URN""" 
  • trunk/src/catalog/.leo/shadow/xsteps.py

    r90 r93  
    228228        active = [f.file for f in self.files] if self else [] 
    229229        for i in fileList:  
    230             o = tag.option(i.rsplit('.',1)[-1], value=AddDatasetStep.enc(i)) 
     230            ttl = context.env['dataServer'].describe(i) 
     231            o = tag.option(ttl, value=AddDatasetStep.enc(i)) 
    231232            if i in active: 
    232233                o(selected = '1') 
     
    373374        found = False 
    374375        for i in inputs: 
    375             o = tag.option(i.name, value=i.URN, class_=prefix) 
     376            ttl = i.name 
     377            if not i.URN.startswith('sel://'): 
     378                ttl = context.env['dataServer'].describe(i.URN) 
     379            o = tag.option(ttl, value=i.URN, class_=prefix) 
    376380            if i.URN == input_: 
    377381                o(selected = "1") 
  • trunk/src/catalog/.leo/shadow/xtablesummary.py

    r90 r93  
    4848        if self.numeric is not False:  # stays false once it becomes false 
    4949            try: 
    50                 x = float(x) 
     50                try: 
     51                    x = float(x) 
     52                except TypeError: 
     53                    x = 0.  # FIXME None? 
    5154                self.numeric = True 
    5255            except ValueError: 
     
    297300        else: 
    298301            cur.execute('select %s from %s' % ( 
    299                 ','.join([f for f in self._fields if f != 'the_geom']), table)) 
     302                ','.join(['"%s"'%f for f in self._fields if f != 'the_geom']), table)) 
    300303            self.reader = cur 
    301304    #@-node:tbrown.20080804100842.31:__init__ 
  • trunk/src/catalog/steps.py

    r90 r93  
    178178        active = [f.file for f in self.files] if self else [] 
    179179        for i in fileList:  
    180             o = tag.option(i.rsplit('.',1)[-1], value=AddDatasetStep.enc(i)) 
     180            ttl = context.env['dataServer'].describe(i) 
     181            o = tag.option(ttl, value=AddDatasetStep.enc(i)) 
    181182            if i in active: 
    182183                o(selected = '1') 
     
    299300        found = False 
    300301        for i in inputs: 
    301             o = tag.option(i.name, value=i.URN, class_=prefix) 
     302            ttl = i.name 
     303            if not i.URN.startswith('sel://'): 
     304                ttl = context.env['dataServer'].describe(i.URN) 
     305            o = tag.option(ttl, value=i.URN, class_=prefix) 
    302306            if i.URN == input_: 
    303307                o(selected = "1") 
  • trunk/src/catalog/tablesummary.py

    r90 r93  
    3535        if self.numeric is not False:  # stays false once it becomes false 
    3636            try: 
    37                 x = float(x) 
     37                try: 
     38                    x = float(x) 
     39                except TypeError: 
     40                    x = 0.  # FIXME None? 
    3841                self.numeric = True 
    3942            except ValueError: 
     
    224227        else: 
    225228            cur.execute('select %s from %s' % ( 
    226                 ','.join([f for f in self._fields if f != 'the_geom']), table)) 
     229                ','.join(['"%s"'%f for f in self._fields if f != 'the_geom']), table)) 
    227230            self.reader = cur 
    228231    def next(self):