Changeset 3002 for TI02-CSML


Ignore:
Timestamp:
08/11/07 14:57:21 (12 years ago)
Author:
domlowe
Message:

added check to see if string is file path or string of xml

Location:
TI02-CSML/trunk/csml/API
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • TI02-CSML/trunk/csml/API/ops_Dataset.py

    r2907 r3002  
    3939        #use filesystem 
    4040        #determine encoding 
    41         f = open(csmlfile) 
    42         startoffile=f.readline() 
    43         encoding=csml.csmllibs.xmlEncoding.autoDetectXMLEncoding(startoffile) 
    44         f.close() 
    45         #parse with correct encoding 
    46         tree = csml.parser_extra.encodingParser(csmlfile,encoding) 
     41        if csmlfile[:1]=='<': 
     42            #it's not a file path, must be a string of xml (we hope) 
     43            p=ET.XMLParser() 
     44            p.feed(csmlfile) 
     45            tree=ET.ElementTree(p.close()) 
     46        else: 
     47            f = open(csmlfile) 
     48            startoffile=f.readline() 
     49            encoding=csml.csmllibs.xmlEncoding.autoDetectXMLEncoding(startoffile) 
     50            f.close() 
     51            #parse file with correct encoding 
     52            tree = csml.parser_extra.encodingParser(csmlfile,encoding) 
    4753    self.fromXML(tree.getroot()) 
    4854    self =csml.parser_extra.ParserPostProcessor(self).resolveReferences() 
  • TI02-CSML/trunk/csml/API/ops_PointSeriesFeature.py

    r2569 r3002  
    1414    self.domain={} 
    1515    self.gridnames={} 
    16     for gridOrd in self.value.pointSeriesDomain.coordTransformTable.gridOrdinates: 
    17         name=gridOrd.coordAxisLabel.CONTENT 
    18         self.gridnames[gridOrd.gridAxesSpanned.CONTENT]=name 
    19         if hasattr(gridOrd.coordAxisValues, 'insertedExtract'): 
    20             self.domain[name], fill, axisorder, units=gridOrd.coordAxisValues.insertedExtract.getData() 
    21         else:             
    22             valList=[] 
    23             try: 
    24                 vals=gridOrd.coordAxisValues.coordinateList.CONTENT 
    25                 for val in vals.split():   
    26                     valList.append(eval(val)) 
    27             except: 
    28                 vals=gridOrd.coordAxisValues.timePositionList.CONTENT 
    29                 for val in vals.split():   
    30                     valList.append(val)             
    31             self.domain[name]=valList     
     16    valList=[] 
     17    for val in self.value.pointSeriesDomain.timePositionList.CONTENT.split(): 
     18        valList.append(val) 
     19    self.domain['time']=valList 
     20    [lat,lon]=self.location.CONTENT.split() 
     21    self.domain['longitude']=lon 
     22    self.domain['latitude']=lat 
     23     
     24    #for gridOrd in self.value.pointSeriesDomain.coordTransformTable.gridOrdinates: 
     25        #name=gridOrd.coordAxisLabel.CONTENT 
     26        #self.gridnames[gridOrd.gridAxesSpanned.CONTENT]=name 
     27        #if hasattr(gridOrd.coordAxisValues, 'insertedExtract'): 
     28            #self.domain[name], fill, axisorder, units=gridOrd.coordAxisValues.insertedExtract.getData() 
     29        #else:             
     30            #valList=[] 
     31            #try: 
     32                #vals=gridOrd.coordAxisValues.coordinateList.CONTENT 
     33                #for val in vals.split():   
     34                    #valList.append(eval(val)) 
     35            #except: 
     36                #vals=gridOrd.coordAxisValues.timePositionList.CONTENT 
     37                #for val in vals.split():   
     38                    #valList.append(val)             
     39            #self.domain[name]=valList     
    3240    return self.domain     
    33  
    3441 
    3542 
Note: See TracChangeset for help on using the changeset viewer.