Changeset 918
- Timestamp:
- 12/05/06 15:57:20 (15 years ago)
- Location:
- TI02-CSML/trunk/newparser
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
TI02-CSML/trunk/newparser/Parser.py
r905 r918 1547 1547 elif componentFrag.tag == CSML('GRIBExtract'): 1548 1548 self.component.append(GRIBExtract()) 1549 elif componentFrag.tag == CSML('PPExtract'): 1550 self.component.append(PPExtract()) 1549 1551 ## else: 1550 1552 ## raise Exception('Unexpected element: "'+componentFrag.tag+'"') … … 1578 1580 frag = Element(CSML('NetCDFExtract')) 1579 1581 frag = NetCDFExtract.toXML(comp,frag) 1582 elif isinstance(comp,PPExtract): 1583 frag = Element(CSML('PPExtract')) 1584 frag = PPExtract.toXML(comp,frag) 1580 1585 elif isinstance(comp,GRIBExtract): 1581 1586 frag = Element(CSML('GRIBExtract')) … … 1675 1680 return csmlFrag 1676 1681 1682 class PPExtract(AbstractFileExtract): 1683 """CSML class for PPExtract file extract 1684 same as NetCDFExtract 1685 PPExtract(AbstractFileExtract): 1686 +variableName: string 1687 """ 1688 def __init__(self,variableName=None,*args,**kwargs): 1689 AbstractFileExtract.__init__(self,*args,**kwargs) 1690 if variableName: 1691 self.variableName = variableName 1692 def fromXML(self,csmlFrag): 1693 AbstractFileExtract.fromXML(self,csmlFrag) 1694 for frag in csmlFrag.getchildren(): 1695 if frag.tag == CSML('variableName'): 1696 self.variableName = frag.text 1697 ## else: 1698 ## raise Exception('Unexpected element: "'+frag.tag+'"') 1699 checkMandatory(self, 'variableName') 1700 def toXML(self,csmlFrag): 1701 csmlFrag = AbstractFileExtract.toXML(self,csmlFrag) 1702 if hasattr(self, 'variableName'): 1703 frag = Element(CSML('variableName')) 1704 frag.text = self.variableName 1705 csmlFrag.append(frag) 1706 return csmlFrag 1707 1677 1708 class GRIBExtract(AbstractFileExtract): 1678 1709 """CSML class for GRIB file extract … … 2292 2323 self.axisValues=NetCDFExtract() 2293 2324 NetCDFExtract.fromXML(self.axisValues, subFrag) 2325 elif subFrag.tag == CSML ('NASAAmesExtract'): 2326 self.axisValues=NASAAmesExtract() 2327 NASAAmesExtract.fromXML(self.axisValues, subFrag) 2328 elif subFrag.tag == CSML ('GRIBExtract'): 2329 self.axisValues=GRIBExtract() 2330 GRIBExtract.fromXML(self.axisValues, subFrag) 2331 elif subFrag.tag == CSML ('PPExtract'): 2332 self.axisValues=PPExtract() 2333 PPExtract.fromXML(self.axisValues, subFrag) 2294 2334 else: 2295 2335 self.axisValues=frag.text … … 2316 2356 subFrag=Element(CSML('NetCDFExtract')) 2317 2357 NetCDFExtract.toXML(self.axisValues,subFrag) 2358 frag.append(subFrag) 2359 elif isinstance(self.axisValues,NASAAmesExtract): 2360 subFrag=Element(CSML('NASAAmesExtract')) 2361 NASAAmesExtract.toXML(self.axisValues,subFrag) 2362 frag.append(subFrag) 2363 elif isinstance(self.axisValues,GRIBExtract): 2364 subFrag=Element(CSML('GRIBExtract')) 2365 GRIBExtract.toXML(self.axisValues,subFrag) 2366 frag.append(subFrag) 2367 elif isinstance(self.axisValues,PPExtract): 2368 subFrag=Element(CSML('PPExtract')) 2369 PPExtract.toXML(self.axisValues,subFrag) 2318 2370 frag.append(subFrag) 2319 2371 else: … … 2400 2452 def toXML(self,csmlFrag): 2401 2453 if hasattr(self,'timePositions'): 2402 csmlFrag.text=self.timePositions 2454 print self.timePositions 2455 if isinstance(self.timePositions, NASAAmesExtract): 2456 subFrag=Element(CSML('NASAAmesExtract')) 2457 NASAAmesExtract.toXML(self.timePositions,subFrag) 2458 csmlFrag.append(subFrag) 2459 elif isinstance(self.timePositions, NetCDFExtract): 2460 subFrag=Element(CSML('NetCDFExtract')) 2461 NetCDFExtract.toXML(self.timePositions,subFrag) 2462 csmlFrag.append(subFrag) 2463 elif isinstance(self.timePositions, GRIBExtract): 2464 subFrag=Element(CSML('GRIBExtract')) 2465 GRIBExtract.toXML(self.timePositions,subFrag) 2466 csmlFrag.append(subFrag) 2467 elif isinstance(self.timePositions, PPExtract): 2468 subFrag=Element(CSML('PPExtract')) 2469 PPExtract.toXML(self.timePositions,subFrag) 2470 csmlFrag.append(subFrag) 2471 else: 2472 csmlFrag.text=self.timePositions 2403 2473 if hasattr(self,'frame'): 2404 2474 csmlFrag.attrib['frame']=self.frame … … 2441 2511 def toXML(self, csmlFrag): 2442 2512 if hasattr(self,'val'): 2443 csmlFrag.text = self.val 2513 if isinstance(self.val, NASAAmesExtract): 2514 subFrag=Element(CSML('NASAAmesExtract')) 2515 NASAAmesExtract.toXML(self.val,subFrag) 2516 csmlFrag.append(subFrag) 2517 elif isinstance(self.val, NetCDFExtract): 2518 subFrag=Element(CSML('NetCDFExtract')) 2519 NetCDFExtract.toXML(self.val,subFrag) 2520 csmlFrag.append(subFrag) 2521 elif isinstance(self.timePositions, GRIBExtract): 2522 subFrag=Element(CSML('GRIBExtract')) 2523 GRIBExtract.toXML(self.val,subFrag) 2524 csmlFrag.append(subFrag) 2525 elif isinstance(self.val, PPExtract): 2526 subFrag=Element(CSML('PPExtract')) 2527 PPExtract.toXML(self.val,subFrag) 2528 csmlFrag.append(subFrag) 2529 else: 2530 csmlFrag.text = self.val 2444 2531 if hasattr(self,'uom'): 2445 2532 csmlFrag.attrib[('uom')] = self.uom … … 2671 2758 self.arrayDescriptor=GRIBExtract() 2672 2759 GRIBExtract.fromXML(self.ArrayDescriptor,frag) 2760 elif frag.tag == CSML('PPExtract'): 2761 self.arrayDescriptor=PPExtract() 2762 PPExtract.fromXML(self.ArrayDescriptor,frag) 2673 2763 elif frag.tag == CSML('AggregatedArray'): 2674 2764 self.aggregatedArray=AggregatedArray() … … 2699 2789 frag=Element(CSML('GRIBExtract')) 2700 2790 GRIBAmesExtract.toXML(self.arrayDescriptor,frag) 2791 csmlFrag.append(frag) 2792 elif isinstance(self.arrayDescriptor,PPExtract): 2793 frag=Element(CSML('PPExtract')) 2794 PPAmesExtract.toXML(self.arrayDescriptor,frag) 2701 2795 csmlFrag.append(frag) 2702 2796 … … 3115 3209 self.arrayDescriptors.append(GRIBExtract()) 3116 3210 self.arrayDescriptors[-1].fromXML(frag) 3211 elif frag.tag == CSML('PPExtract'): 3212 checkArrayAttrib(self,'arrayDescriptors') 3213 self.arrayDescriptors.append(PPExtract()) 3214 self.arrayDescriptors[-1].fromXML(frag) 3117 3215 ## else: 3118 3216 ## raise Exception('Unexpected element: "'+frag.tag+'"') … … 3153 3251 frag = Element(CSML('GRIBExtract')) 3154 3252 frag = GRIBExtract.toXML(arrayDesc,frag) 3253 elif isinstance(arrayDesc,PPExtract): 3254 frag = Element(CSML('PPExtract')) 3255 frag = PPExtract.toXML(arrayDesc,frag) 3155 3256 csmlFrag.append(frag) 3156 3257 if hasattr(self,'featureCollection'): -
TI02-CSML/trunk/newparser/ioDemo.py
r896 r918 53 53 54 54 print featureValues 55 sys.exit() 55 56 #print type(featureValues) 56 57 #print dir(featureValues)
Note: See TracChangeset
for help on using the changeset viewer.