Changeset 2427 for TI02-CSML


Ignore:
Timestamp:
23/04/07 11:55:47 (12 years ago)
Author:
domlowe
Message:

added security to parser

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

Legend:

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

    r2206 r2427  
    1818import parser 
    1919import parser_extra 
    20 import profile 
     20 
    2121 
    2222 
  • TI02-CSML/trunk/csml/parser.py

    r2409 r2427  
    3131def XLINK(tag): 
    3232    return myQName(nsXLINK,tag) 
     33 
     34def MOLES(tag): 
     35    return myQName(nsMOLES,tag) 
     36 
    3337 
    3438def addchildren(obj, dict): 
     
    10221026        csElement.__init__(self,**kwargs) 
    10231027 
     1028 
     1029class SimpleCondition(csElement):  
     1030    '''from moles''' 
     1031    def __init__(self,**kwargs): 
     1032        addatts(self, []) 
     1033        elems= ['dgAttributeAuthority', 'attrauthRole'] 
     1034        addelems(self,elems) 
     1035        children={elems[0]:[MOLES('dgAttributeAuthority'), 'csString'],elems[1]:[MOLES('attrauthRole'), 'csString']} 
     1036        addchildren(self,children) 
     1037        csElement.__init__(self, **kwargs) 
     1038 
     1039 
     1040class ComplexCondition(csElement):  
     1041    '''from moles (stub class)''' 
     1042    def __init__(self,**kwargs): 
     1043        addatts(self, []) 
     1044        elems= [] 
     1045        addelems(self,elems) 
     1046        children={} 
     1047        addchildren(self,children) 
     1048        csElement.__init__(self, **kwargs) 
     1049 
     1050class DgSecurityCondition(csElement):  
     1051    '''from moles''' 
     1052    def __init__(self,**kwargs): 
     1053        addatts(self, []) 
     1054        elems=['effect', 'conditionExplanationText', 'simpleCondition', 'complexCondition'] 
     1055        addelems(self,elems) 
     1056        children={elems[0]:[MOLES('effect'), 'csString'],elems[1]:[MOLES('conditionExplanationText'),'csString'],elems[2]:[MOLES('simpleCondition'), 'SimpleCondition'],elems[3]:[MOLES('complexCondition'), 'ComplexCondition']} 
     1057        addchildren(self,children) 
     1058        csElement.__init__(self,**kwargs) 
     1059 
     1060class AccessControlPolicy(csElement): 
     1061    def __init__(self,**kwargs): 
     1062        addatts(self,[]) 
     1063        elems=['accessControlPolicyURL', 'accessControlPolicyText', 'dgSecurityCondition']      
     1064        addelems(self,elems) 
     1065        children={elems[0]:[MOLES('accessControlPolicyURL'), 'csString'],elems[1]:[MOLES('accessControlPolicyText'),'csString'],elems[2]:[MOLES('dgSecurityCondition'), 'DgSecurityCondition']} 
     1066        addchildren(self,children) 
     1067        csElement.__init__(self,**kwargs) 
     1068         
    10241069class CSMLStorageDescriptor(csElement): 
    10251070    def __init__(self,**kwargs): 
     
    10981143        a=[CSML('id')] 
    10991144        addatts(self,a) 
    1100         elems=['featureCollection','storageDescriptor'] 
    1101         addelems(self,elems) 
    1102         children = {elems[0]:[CSML('CSMLFeatureCollection') ,'CSMLFeatureCollection'],elems[1]:[CSML('CSMLStorageDescriptor'), 'CSMLStorageDescriptor']} 
     1145        elems=['accessControlPolicy','featureCollection','storageDescriptor'] 
     1146        addelems(self,elems) 
     1147        children = {elems[0]:[CSML('AccessControlPolicy') ,'AccessControlPolicy'], elems[1]:[CSML('CSMLFeatureCollection') ,'CSMLFeatureCollection'],elems[2]:[CSML('CSMLStorageDescriptor'), 'CSMLStorageDescriptor']} 
    11031148        addchildren(self,children) 
    11041149        csElement.__init__(self,**kwargs) 
     
    11291174     
    11301175    print '\n' 
    1131     tree=ET.ElementTree(file='testfiles/gridseries/testout.xml') 
     1176    #tree=ET.ElementTree(file='testfiles/gridseries/testout.xml') 
     1177    tree=ET.ElementTree(file='testfiles/gridseries/securitytest.xml') 
    11321178    ds=Dataset() 
    11331179    ds.fromXML(tree.getroot()) 
Note: See TracChangeset for help on using the changeset viewer.