@@ -1,422 +1,474 | |||||
1 | ''' |
|
1 | ''' | |
2 | Created on September , 2012 |
|
2 | Created on September , 2012 | |
3 | @author: |
|
3 | @author: | |
4 | ''' |
|
4 | ''' | |
5 | from xml.etree.ElementTree import Element, SubElement, ElementTree |
|
5 | from xml.etree.ElementTree import Element, SubElement, ElementTree | |
6 | from xml.etree import ElementTree as ET |
|
6 | from xml.etree import ElementTree as ET | |
7 | from xml.dom import minidom |
|
7 | from xml.dom import minidom | |
8 |
|
8 | |||
9 | import sys |
|
9 | import sys | |
10 |
|
10 | |||
11 | def prettify(elem): |
|
11 | def prettify(elem): | |
12 | """Return a pretty-printed XML string for the Element. |
|
12 | """Return a pretty-printed XML string for the Element. | |
13 | """ |
|
13 | """ | |
14 | rough_string = ET.tostring(elem, 'utf-8') |
|
14 | rough_string = ET.tostring(elem, 'utf-8') | |
15 | reparsed = minidom.parseString(rough_string) |
|
15 | reparsed = minidom.parseString(rough_string) | |
16 | return reparsed.toprettyxml(indent=" ") |
|
16 | return reparsed.toprettyxml(indent=" ") | |
17 |
|
17 | |||
18 | #def save(a, b): |
|
|||
19 | # |
|
|||
20 | # nameP = "Alexnder" |
|
|||
21 | # descripcion = self.projectWindow.Text() |
|
|||
22 | # id = 1 |
|
|||
23 | # x = self.data.projectWindow.cmbbox.value() |
|
|||
24 | # |
|
|||
25 | # projectObj = Controller(id, name, description) |
|
|||
26 | # |
|
|||
27 | # projectObj.setup(id, name, description) |
|
|||
28 |
|
||||
29 | class Controller(): |
|
18 | class Controller(): | |
30 |
|
19 | |||
31 | id = None |
|
20 | id = None | |
32 | name = None |
|
21 | name = None | |
33 | description = None |
|
22 | description = None | |
34 | readBranchObjList = None |
|
23 | readBranchObjList = None | |
35 | procBranchObjList = None |
|
24 | procBranchObjList = None | |
36 |
|
25 | |||
37 | def __init__(self): |
|
26 | def __init__(self): | |
38 |
|
27 | |||
39 | # self.id = id |
|
28 | # self.id = id | |
40 | # self.name = name |
|
29 | # self.name = name | |
41 | # self.description = description |
|
30 | # self.description = description | |
42 |
|
31 | |||
43 | self.readBranchObjList = [] |
|
32 | self.readBranchObjList = [] | |
44 | self.procBranchObjList = [] |
|
33 | self.procBranchObjList = [] | |
45 |
|
34 | |||
46 | def setParms(self, id, name, description): |
|
35 | def setParms(self, id, name, description): | |
47 |
|
36 | |||
48 | self.id = id |
|
37 | self.id = id | |
49 | self.name = name |
|
38 | self.name = name | |
50 | self.description = description |
|
39 | self.description = description | |
51 |
|
40 | |||
52 | def addReadBranch(self, dpath, dataformat, readMode, startDate='', endDate='', startTime='', endTime=''): |
|
41 | def addReadBranch(self, dpath, dataformat, readMode, startDate='', endDate='', startTime='', endTime=''): | |
53 |
|
42 | |||
54 | id = len(self.readBranchObjList) + 1 |
|
43 | id = len(self.readBranchObjList) + 1 | |
55 |
|
44 | |||
56 | readBranchObj = ReadBranch() |
|
45 | readBranchObj = ReadBranch() | |
57 | readBranchObj.setup(id, dpath, dataformat, readMode, startDate, endDate, startTime, endTime) |
|
46 | readBranchObj.setup(id, dpath, dataformat, readMode, startDate, endDate, startTime, endTime) | |
58 |
|
47 | |||
59 | self.readBranchObjList.append(readBranchObj) |
|
48 | self.readBranchObjList.append(readBranchObj) | |
60 |
|
49 | |||
61 | return readBranchObj |
|
50 | return readBranchObj | |
62 |
|
51 | |||
63 | def addProcBranch(self, name): |
|
52 | def addProcBranch(self, name): | |
64 |
|
53 | |||
65 | id = len(self.procBranchObjList) + 1 |
|
54 | id = len(self.procBranchObjList) + 1 | |
66 |
|
55 | |||
67 | procBranchObj = ProcBranch() |
|
56 | procBranchObj = ProcBranch() | |
68 | procBranchObj.setup(id, name) |
|
57 | procBranchObj.setup(id, name) | |
69 |
|
58 | |||
70 | self.procBranchObjList.append(procBranchObj) |
|
59 | self.procBranchObjList.append(procBranchObj) | |
71 |
|
60 | |||
72 | return procBranchObj |
|
61 | return procBranchObj | |
73 |
|
62 | |||
74 | def makeXml(self): |
|
63 | def makeXml(self): | |
75 |
|
64 | |||
76 | projectElement = Element('Controller') |
|
65 | projectElement = Element('Controller') | |
77 | projectElement.set('id', str(self.id)) |
|
66 | projectElement.set('id', str(self.id)) | |
78 | projectElement.set('name', self.name) |
|
67 | projectElement.set('name', self.name) | |
79 |
|
|
68 | projectElement.set('description', self.description) | |
80 |
|
||||
81 | se = SubElement(projectElement, 'description',description=self.description)#ESTO ES LO ULTIMO QUE SE TRABAJO |
|
|||
82 | #se.text = self.description #ULTIMA MODIFICACION PARA SACAR UN SUB ELEMENT |
|
|||
83 |
|
69 | |||
84 | for readBranchObj in self.readBranchObjList: |
|
70 | for readBranchObj in self.readBranchObjList: | |
85 | readBranchObj.makeXml(projectElement) |
|
71 | readBranchObj.makeXml(projectElement) | |
86 |
|
72 | |||
87 | for procBranchObj in self.procBranchObjList: |
|
73 | for procBranchObj in self.procBranchObjList: | |
88 | procBranchObj.makeXml(projectElement) |
|
74 | procBranchObj.makeXml(projectElement) | |
89 |
|
75 | |||
90 | self.projectElement = projectElement |
|
76 | self.projectElement = projectElement | |
91 |
|
77 | |||
92 | def writeXml(self, filename): |
|
78 | def writeXml(self, filename): | |
93 |
|
79 | |||
94 | self.makeXml() |
|
80 | self.makeXml() | |
95 | ElementTree(self.projectElement).write(filename, method='xml') |
|
81 | ElementTree(self.projectElement).write(filename, method='xml') | |
96 | print prettify(self.projectElement) |
|
82 | print prettify(self.projectElement) | |
97 |
|
83 | |||
98 | def readXml(self, filename): |
|
84 | def readXml(self, filename): | |
99 |
|
85 | |||
100 | #tree = ET.parse(filename) |
|
86 | #tree = ET.parse(filename) | |
101 | self.projectElement = None |
|
87 | self.projectElement = None | |
102 | self.readBranchObjList = None |
|
88 | self.readBranchObjList = None | |
103 | self.procBranchObjList = None |
|
89 | self.procBranchObjList = None | |
104 |
|
90 | |||
105 | self.projectElement = ElementTree().parse(filename) |
|
91 | self.projectElement = ElementTree().parse(filename) | |
106 |
|
92 | |||
107 | self.project = self.projectElement.tag |
|
93 | self.project = self.projectElement.tag | |
108 |
|
94 | |||
109 | self.id = self.projectElement.get('id') |
|
95 | self.id = self.projectElement.get('id') | |
110 | self.name = self.projectElement.get('name') |
|
96 | self.name = self.projectElement.get('name') | |
111 |
|
97 | |||
112 | self.readBranchObjList = [] |
|
98 | self.readBranchObjList = [] | |
113 |
|
99 | |||
114 | readBranchElementList = self.projectElement.getiterator('readBranch') |
|
100 | readBranchElementList = self.projectElement.getiterator('readBranch') | |
115 |
|
101 | |||
116 | for readBranchElement in readBranchElementList: |
|
102 | for readBranchElement in readBranchElementList: | |
117 | readBrachObj = ReadBranch() |
|
103 | readBrachObj = ReadBranch() | |
118 | readBrachObj.readXml(readBranchElement) |
|
104 | readBrachObj.readXml(readBranchElement) | |
119 | self.readBranchObjList.append(readBranchObj) |
|
105 | self.readBranchObjList.append(readBranchObj) | |
120 |
|
106 | |||
121 | self.procBranchObjList = [] |
|
107 | self.procBranchObjList = [] | |
122 |
|
108 | |||
123 | procBranchElementList = self.projectElement.getiterator('procBranch') |
|
109 | procBranchElementList = self.projectElement.getiterator('procBranch') | |
124 |
|
110 | |||
125 | for procBranchElement in procBranchElementList: |
|
111 | for procBranchElement in procBranchElementList: | |
126 | procBranchObj = ProcBranch() |
|
112 | procBranchObj = ProcBranch() | |
127 | procBranchObj.readXml(procBranchElement) |
|
113 | procBranchObj.readXml(procBranchElement) | |
128 | self.procBranchObjList.append(procBranchObj) |
|
114 | self.procBranchObjList.append(procBranchObj) | |
129 | # |
|
115 | ||
|
116 | def printattr(self): | |||
|
117 | ||||
|
118 | print "Controller[%s]: name = %s, description = %s" %(self.id, | |||
|
119 | self.name, | |||
|
120 | self.description) | |||
|
121 | ||||
|
122 | for readBranchObj in self.readBranchObjList: | |||
|
123 | readBranchObj.printattr() | |||
|
124 | ||||
|
125 | for procBranchObj in self.procBranchObjList: | |||
|
126 | procBranchObj.printattr() | |||
|
127 | ||||
130 | class ReadBranch(): |
|
128 | class ReadBranch(): | |
131 |
|
129 | |||
132 | id = None |
|
130 | id = None | |
|
131 | name = None | |||
133 | # dpath = None |
|
132 | # dpath = None | |
134 | # dataformat = None |
|
133 | # dataformat = None | |
135 | # readMode = None |
|
134 | # readMode = None | |
136 | # startDate = None |
|
135 | # startDate = None | |
137 | # endDate = None |
|
136 | # endDate = None | |
138 | # startTime = None |
|
137 | # startTime = None | |
139 | # endTime = None |
|
138 | # endTime = None | |
140 |
|
139 | |||
141 | parmObjList = [] |
|
140 | parmObjList = [] | |
142 |
|
141 | |||
143 | def __init__(self): |
|
142 | def __init__(self): | |
144 |
|
143 | |||
145 | self.parmObjList = [] |
|
144 | self.parmObjList = [] | |
146 |
|
145 | |||
147 | def setup(self, id, dpath, dataformat, readMode, startDate, endDate, startTime, endTime): |
|
146 | def setup(self, id, dpath, dataformat, readMode, startDate, endDate, startTime, endTime): | |
148 |
|
147 | |||
149 | self.id = id |
|
148 | self.id = id | |
150 | self.dpath = dpath |
|
149 | self.dpath = dpath | |
151 | self.dataformat = dataformat |
|
150 | self.dataformat = dataformat | |
152 | self.readMode = readMode |
|
151 | self.readMode = readMode | |
153 | self.startDate = startDate |
|
152 | self.startDate = startDate | |
154 | self.endDate = endDate |
|
153 | self.endDate = endDate | |
155 | self.startTime = startTime |
|
154 | self.startTime = startTime | |
156 | self.endTime = endTime |
|
155 | self.endTime = endTime | |
157 |
|
156 | |||
158 | def addParameter(self, name, value): |
|
157 | def addParameter(self, name, value): | |
159 |
|
158 | |||
160 | id = len(self.parmObjList) + 1 |
|
159 | id = len(self.parmObjList) + 1 | |
161 |
|
160 | |||
162 | parmObj = ParameterConf() |
|
161 | parmObj = ParameterConf() | |
163 | parmObj.setup(id, name, value) |
|
162 | parmObj.setup(id, name, value) | |
164 |
|
163 | |||
165 | self.parmObjList.append(parmObj) |
|
164 | self.parmObjList.append(parmObj) | |
166 |
|
165 | |||
167 | return parmObj |
|
166 | return parmObj | |
168 |
|
167 | |||
169 | def makeXml(self, projectElement): |
|
168 | def makeXml(self, projectElement): | |
170 |
|
169 | |||
171 | readBranchElement = SubElement(projectElement, 'readBranch') |
|
170 | readBranchElement = SubElement(projectElement, 'readBranch') | |
172 | readBranchElement.set('id', str(self.id)) |
|
171 | readBranchElement.set('id', str(self.id)) | |
173 |
|
172 | |||
174 | self.addParameter(name='dpath' , value=self.dpath) |
|
173 | self.addParameter(name='dpath' , value=self.dpath) | |
175 | self.addParameter(name='dataformat', value=self.dataformat) |
|
174 | self.addParameter(name='dataformat', value=self.dataformat) | |
176 | self.addParameter(name='startDate' , value=self.startDate) |
|
175 | self.addParameter(name='startDate' , value=self.startDate) | |
177 | self.addParameter(name='endDate' , value=self.endDate) |
|
176 | self.addParameter(name='endDate' , value=self.endDate) | |
178 | self.addParameter(name='startTime' , value=self.startTime) |
|
177 | self.addParameter(name='startTime' , value=self.startTime) | |
179 | self.addParameter(name='endTime' , value=self.endTime) |
|
178 | self.addParameter(name='endTime' , value=self.endTime) | |
180 | self.addParameter(name='readMode' , value=str(self.readMode)) |
|
179 | self.addParameter(name='readMode' , value=str(self.readMode)) | |
181 |
|
180 | |||
182 | for parmObj in self.parmObjList: |
|
181 | for parmObj in self.parmObjList: | |
183 | parmObj.makeXml(readBranchElement) |
|
182 | parmObj.makeXml(readBranchElement) | |
184 |
|
183 | |||
185 | def readXml(self, readBranchElement): |
|
184 | def readXml(self, readBranchElement): | |
186 |
|
185 | |||
187 | self.id = readBranchElement.get('id') |
|
186 | self.id = readBranchElement.get('id') | |
188 |
|
187 | |||
189 | self.parmObjList = [] |
|
188 | self.parmObjList = [] | |
190 |
|
189 | |||
191 | parmElementList = readBranchElement.getiterator('Parameter') |
|
190 | parmElementList = readBranchElement.getiterator('Parameter') | |
192 |
|
191 | |||
193 | for parmElement in parmElementList: |
|
192 | for parmElement in parmElementList: | |
194 | parmObj = Parameter() |
|
193 | parmObj = ParameterConf() | |
195 | parmObj.readXml(parmElement) |
|
194 | parmObj.readXml(parmElement) | |
196 | self.parmObjList.append(parmObj) |
|
195 | self.parmObjList.append(parmObj) | |
|
196 | ||||
|
197 | def printattr(self): | |||
|
198 | ||||
|
199 | print "ReadBranch[%s]: name = %s" %(self.id, | |||
|
200 | self.name) | |||
197 |
|
201 | |||
|
202 | for parmObj in self.parmObjList: | |||
|
203 | parmObj.printattr() | |||
198 |
|
204 | |||
199 | class ProcBranch(): |
|
205 | class ProcBranch(): | |
200 |
|
206 | |||
201 | id = None |
|
207 | id = None | |
202 | name = None |
|
208 | name = None | |
203 |
|
209 | |||
204 | upObjList = None |
|
210 | upObjList = None | |
205 |
|
211 | |||
206 | def __init__(self): |
|
212 | def __init__(self): | |
207 | pass |
|
213 | pass | |
208 |
|
214 | |||
209 | def setup(self, id, name): |
|
215 | def setup(self, id, name): | |
210 |
|
216 | |||
211 | self.id = id |
|
217 | self.id = id | |
212 | self.name = name |
|
218 | self.name = name | |
213 |
|
219 | |||
214 | self.upObjList = [] |
|
220 | self.upObjList = [] | |
215 |
|
221 | |||
216 | def addUP(self, name, type): |
|
222 | def addUP(self, name, type): | |
217 |
|
223 | |||
218 | id = len(self.upObjList) + 1 |
|
224 | id = len(self.upObjList) + 1 | |
219 |
|
225 | |||
220 | upObj = UPConf() |
|
226 | upObj = UPConf() | |
221 | upObj.setup(id, name, type) |
|
227 | upObj.setup(id, name, type) | |
222 |
|
228 | |||
223 | self.upObjList.append(upObj) |
|
229 | self.upObjList.append(upObj) | |
224 |
|
230 | |||
225 | return upObj |
|
231 | return upObj | |
226 |
|
232 | |||
227 | def makeXml(self, projectElement): |
|
233 | def makeXml(self, projectElement): | |
228 |
|
234 | |||
229 | procBranchElement = SubElement(projectElement, 'procBranch') |
|
235 | procBranchElement = SubElement(projectElement, 'procBranch') | |
230 | procBranchElement.set('id', str(self.id)) |
|
236 | procBranchElement.set('id', str(self.id)) | |
231 | procBranchElement.set('name', self.name) |
|
237 | procBranchElement.set('name', self.name) | |
232 |
|
238 | |||
233 | for upObj in self.upObjList: |
|
239 | for upObj in self.upObjList: | |
234 | upObj.makeXml(procBranchElement) |
|
240 | upObj.makeXml(procBranchElement) | |
235 |
|
241 | |||
236 | def readXml(self, procBranchElement): |
|
242 | def readXml(self, procBranchElement): | |
237 |
|
243 | |||
238 | self.id = procBranchElement.get('id') |
|
244 | self.id = procBranchElement.get('id') | |
239 | self.name = procBranchElement.get('name') |
|
245 | self.name = procBranchElement.get('name') | |
240 |
|
246 | |||
241 | self.upObjList = [] |
|
247 | self.upObjList = [] | |
242 |
|
248 | |||
243 | upElementList = procBranchElement.getiterator('UP') |
|
249 | upElementList = procBranchElement.getiterator('UP') | |
244 |
|
250 | |||
245 | for upElement in upElementList: |
|
251 | for upElement in upElementList: | |
246 | upObj = UPConf() |
|
252 | upObj = UPConf() | |
247 |
|
|
253 | upObj.readXml(upElement) | |
248 | self.upObjList.append(upObj) |
|
254 | self.upObjList.append(upObj) | |
249 |
|
255 | |||
|
256 | def printattr(self): | |||
|
257 | ||||
|
258 | print "ProcBranch[%s]: name = %s" %(self.id, | |||
|
259 | self.name) | |||
|
260 | ||||
|
261 | for upObj in self.upObjList: | |||
|
262 | upObj.printattr() | |||
|
263 | ||||
250 | class UPConf(): |
|
264 | class UPConf(): | |
251 |
|
265 | |||
252 | id = None |
|
266 | id = None | |
253 | name = None |
|
267 | name = None | |
254 | type = None |
|
268 | type = None | |
|
269 | inputId = None | |||
255 |
|
270 | |||
256 | opObjList = [] |
|
271 | opObjList = [] | |
257 |
|
272 | |||
258 | def __init__(self): |
|
273 | def __init__(self): | |
259 | pass |
|
274 | pass | |
260 |
|
275 | |||
261 | def setup(self, id, name, type): |
|
276 | def setup(self, id, name, type, inputId=0): | |
262 |
|
277 | |||
263 | self.id = id |
|
278 | self.id = id | |
264 | self.name = name |
|
279 | self.name = name | |
265 | self.type = type |
|
280 | self.type = type | |
|
281 | self.inputId = inputId | |||
266 |
|
282 | |||
267 | self.opObjList = [] |
|
283 | self.opObjList = [] | |
268 |
|
284 | |||
269 | def addOperation(self, name, priority, type='self'): |
|
285 | def addOperation(self, name, priority, type='self'): | |
270 |
|
286 | |||
271 | id = len(self.opObjList) + 1 |
|
287 | id = len(self.opObjList) + 1 | |
272 |
|
288 | |||
273 | opObj = OperationConf() |
|
289 | opObj = OperationConf() | |
274 | opObj.setup(id, name, priority, type) |
|
290 | opObj.setup(id, name, priority, type) | |
275 |
|
291 | |||
276 | self.opObjList.append(opObj) |
|
292 | self.opObjList.append(opObj) | |
277 |
|
293 | |||
278 | return opObj |
|
294 | return opObj | |
279 |
|
295 | |||
280 | def makeXml(self, procBranchElement): |
|
296 | def makeXml(self, procBranchElement): | |
281 |
|
297 | |||
282 | upElement = SubElement(procBranchElement, 'UP') |
|
298 | upElement = SubElement(procBranchElement, 'UP') | |
283 | upElement.set('id', str(self.id)) |
|
299 | upElement.set('id', str(self.id)) | |
284 | upElement.set('name', self.name) |
|
300 | upElement.set('name', self.name) | |
285 | upElement.set('type', self.type) |
|
301 | upElement.set('type', self.type) | |
|
302 | upElement.set('inputId', str(self.inputId)) | |||
286 |
|
303 | |||
287 | for opObj in self.opObjList: |
|
304 | for opObj in self.opObjList: | |
288 | opObj.makeXml(upElement) |
|
305 | opObj.makeXml(upElement) | |
289 |
|
306 | |||
290 | def readXml(self, upElement): |
|
307 | def readXml(self, upElement): | |
291 |
|
308 | |||
292 | self.id = upElement.get('id') |
|
309 | self.id = upElement.get('id') | |
293 | self.name = upElement.get('name') |
|
310 | self.name = upElement.get('name') | |
294 | self.type = upElement.get('type') |
|
311 | self.type = upElement.get('type') | |
|
312 | self.inputId = upElement.get('inputId') | |||
|
313 | ||||
|
314 | self.opObjList = [] | |||
295 |
|
315 | |||
296 | opElementList = upElement.getiterator('Operation') |
|
316 | opElementList = upElement.getiterator('Operation') | |
297 |
|
317 | |||
298 | for opElement in opElementList: |
|
318 | for opElement in opElementList: | |
299 | pass |
|
319 | opObj = OperationConf() | |
|
320 | opObj.readXml(opElement) | |||
|
321 | self.opObjList.append(opObj) | |||
300 |
|
322 | |||
301 | def getOperationObjList(self): |
|
323 | def getOperationObjList(self): | |
302 |
|
324 | |||
303 | return self.opObjList |
|
325 | return self.opObjList | |
304 |
|
326 | |||
|
327 | def printattr(self): | |||
|
328 | ||||
|
329 | print "UP[%s]: name = %s, type = %s, inputId = %s" %(self.id, | |||
|
330 | self.name, | |||
|
331 | self.type, | |||
|
332 | self.inputId) | |||
|
333 | ||||
|
334 | for opObj in self.opObjList: | |||
|
335 | opObj.printattr() | |||
|
336 | ||||
305 | class OperationConf(): |
|
337 | class OperationConf(): | |
306 |
|
338 | |||
307 | id = 0 |
|
339 | id = 0 | |
308 | name = None |
|
340 | name = None | |
309 | priority = None |
|
341 | priority = None | |
310 | type = 'self' |
|
342 | type = 'self' | |
311 |
|
343 | |||
312 | parmObjList = [] |
|
344 | parmObjList = [] | |
313 |
|
345 | |||
314 | def __init__(self): |
|
346 | def __init__(self): | |
315 | pass |
|
347 | pass | |
316 |
|
348 | |||
317 | def setup(self, id, name, priority, type): |
|
349 | def setup(self, id, name, priority, type): | |
318 |
|
350 | |||
319 | self.id = id |
|
351 | self.id = id | |
320 | self.name = name |
|
352 | self.name = name | |
321 | self.priority = priority |
|
353 | self.priority = priority | |
322 | self.type = type |
|
354 | self.type = type | |
323 |
|
355 | |||
324 | self.parmObjList = [] |
|
356 | self.parmObjList = [] | |
325 |
|
357 | |||
326 | def addParameter(self, name, value): |
|
358 | def addParameter(self, name, value): | |
327 |
|
359 | |||
328 | id = len(self.parmObjList) + 1 |
|
360 | id = len(self.parmObjList) + 1 | |
329 |
|
361 | |||
330 | parmObj = ParameterConf() |
|
362 | parmObj = ParameterConf() | |
331 | parmObj.setup(id, name, value) |
|
363 | parmObj.setup(id, name, value) | |
332 |
|
364 | |||
333 | self.parmObjList.append(parmObj) |
|
365 | self.parmObjList.append(parmObj) | |
334 |
|
366 | |||
335 | return parmObj |
|
367 | return parmObj | |
336 |
|
368 | |||
337 | def makeXml(self, upElement): |
|
369 | def makeXml(self, upElement): | |
338 |
|
370 | |||
339 | opElement = SubElement(upElement, 'Operation') |
|
371 | opElement = SubElement(upElement, 'Operation') | |
340 | opElement.set('id', str(self.id)) |
|
372 | opElement.set('id', str(self.id)) | |
341 | opElement.set('name', self.name) |
|
373 | opElement.set('name', self.name) | |
342 | opElement.set('priority', str(self.priority)) |
|
374 | opElement.set('priority', str(self.priority)) | |
343 |
|
375 | |||
344 | for parmObj in self.parmObjList: |
|
376 | for parmObj in self.parmObjList: | |
345 | parmObj.makeXml(opElement) |
|
377 | parmObj.makeXml(opElement) | |
346 |
|
378 | |||
347 | def readXml(self, opElement): |
|
379 | def readXml(self, opElement): | |
348 |
|
380 | |||
349 | self.id = opElement.get('id') |
|
381 | self.id = opElement.get('id') | |
350 | self.name = opElement.get('name') |
|
382 | self.name = opElement.get('name') | |
351 | self.type = opElement.get('type') |
|
383 | self.type = opElement.get('type') | |
352 |
|
384 | |||
|
385 | self.parmObjList = [] | |||
|
386 | ||||
353 | parmElementList = opElement.getiterator('Parameter') |
|
387 | parmElementList = opElement.getiterator('Parameter') | |
354 |
|
388 | |||
355 | for parmElement in parmElementList: |
|
389 | for parmElement in parmElementList: | |
356 | pass |
|
390 | parmObj = ParameterConf() | |
357 |
|
391 | parmObj.readXml(parmElement) | ||
|
392 | self.parmObjList.append(parmObj) | |||
|
393 | ||||
358 | def getParameterObjList(self): |
|
394 | def getParameterObjList(self): | |
359 |
|
395 | |||
360 | return self.parmObjList |
|
396 | return self.parmObjList | |
361 |
|
397 | |||
|
398 | def printattr(self): | |||
|
399 | ||||
|
400 | print "Operation[%s]: name = %s, type = %s, priority = %s" %(self.id, | |||
|
401 | self.name, | |||
|
402 | self.type, | |||
|
403 | self.priority) | |||
|
404 | ||||
|
405 | for parmObj in self.parmObjList: | |||
|
406 | parmObj.printattr() | |||
|
407 | ||||
362 | class ParameterConf(): |
|
408 | class ParameterConf(): | |
363 |
|
409 | |||
364 | id = None |
|
410 | id = None | |
365 | name = None |
|
411 | name = None | |
366 | value = None |
|
412 | value = None | |
367 |
|
413 | |||
368 | def __init__(self): |
|
414 | def __init__(self): | |
369 | pass |
|
415 | pass | |
370 |
|
416 | |||
371 | def setup(self, id, name, value): |
|
417 | def setup(self, id, name, value): | |
372 |
|
418 | |||
373 | self.id = id |
|
419 | self.id = id | |
374 | self.name = name |
|
420 | self.name = name | |
375 | self.value = value |
|
421 | self.value = value | |
376 |
|
422 | |||
377 | def makeXml(self, opElement): |
|
423 | def makeXml(self, opElement): | |
378 |
|
424 | |||
379 | parmElement = SubElement(opElement, 'Parameter') |
|
425 | parmElement = SubElement(opElement, 'Parameter') | |
|
426 | parmElement.set('id', str(self.id)) | |||
380 | parmElement.set('name', self.name) |
|
427 | parmElement.set('name', self.name) | |
381 | parmElement.set('value', self.value) |
|
428 | parmElement.set('value', self.value) | |
382 |
|
429 | |||
383 | def readXml(self, parmElement): |
|
430 | def readXml(self, parmElement): | |
384 |
|
431 | |||
385 | self.id = parmElement.get('id') |
|
432 | self.id = parmElement.get('id') | |
386 | self.name = parmElement.get('name') |
|
433 | self.name = parmElement.get('name') | |
387 | self.value = parmElement.get('value') |
|
434 | self.value = parmElement.get('value') | |
|
435 | ||||
|
436 | def printattr(self): | |||
|
437 | ||||
|
438 | print "Parameter[%s]: name = %s, value = %s" %(self.id, self.name, self.value) | |||
388 |
|
439 | |||
389 | if __name__ == '__main__': |
|
440 | if __name__ == '__main__': | |
390 |
|
441 | |||
391 | desc = "Este es un test" |
|
442 | desc = "Este es un test" | |
392 | filename = "test.xml" |
|
443 | filename = "test.xml" | |
393 |
|
444 | |||
394 | projectObj = Controller() |
|
445 | projectObj = Controller() | |
395 |
|
446 | |||
396 | projectObj.setParms(id = '11', name='test01', description=desc) |
|
447 | projectObj.setParms(id = '191', name='test01', description=desc) | |
397 |
|
448 | |||
398 | readBranchObj = projectObj.addReadBranch(dpath='mydata', dataformat='rawdata', readMode=0, startDate='1', endDate='3', startTime='4', endTime='5') |
|
449 | readBranchObj = projectObj.addReadBranch(dpath='mydata', dataformat='rawdata', readMode=0, startDate='1', endDate='3', startTime='4', endTime='5') | |
399 |
|
450 | |||
400 | procBranchObj = projectObj.addProcBranch(name='Branch1') |
|
451 | procBranchObj = projectObj.addProcBranch(name='Branch1') | |
401 |
|
452 | |||
402 | procBranchObj1 = projectObj.addProcBranch(name='Branch2') |
|
453 | procBranchObj1 = projectObj.addProcBranch(name='Branch2') | |
403 | upObj1 = procBranchObj.addUP(name='UP1', type='Voltage') |
|
454 | upObj1 = procBranchObj.addUP(name='UP1', type='Voltage') | |
404 | upObj2 = procBranchObj.addUP(name='UP2', type='Voltage') |
|
455 | upObj2 = procBranchObj.addUP(name='UP2', type='Voltage') | |
405 |
|
456 | |||
406 | opObj11 = upObj1.addOperation(name='removeDC', priority=1) |
|
457 | opObj11 = upObj1.addOperation(name='removeDC', priority=1) | |
407 | opObj11.addParameter(name='type', value='1') |
|
458 | opObj11.addParameter(name='type', value='1') | |
408 |
|
459 | |||
409 |
|
460 | |||
410 |
opObj12 = upObj1.addOperation(name='decod |
|
461 | opObj12 = upObj1.addOperation(name='decoder', priority=2) | |
411 | opObj12.addParameter(name='ncode', value='2') |
|
462 | opObj12.addParameter(name='ncode', value='2') | |
412 | opObj12.addParameter(name='nbauds', value='8') |
|
463 | opObj12.addParameter(name='nbauds', value='8') | |
|
464 | opObj12.addParameter(name='code0', value='001110011') | |||
413 | opObj12.addParameter(name='code1', value='001110011') |
|
465 | opObj12.addParameter(name='code1', value='001110011') | |
414 | opObj12.addParameter(name='code2', value='001110011') |
|
|||
415 |
|
466 | |||
416 | print "Escribiendo el XML" |
|
467 | print "Escribiendo el archivo XML" | |
417 |
|
468 | |||
418 | projectObj.writeXml(filename) |
|
469 | projectObj.writeXml(filename) | |
419 |
|
470 | |||
420 | print "Leyendo el XML" |
|
471 | print "Leyendo el archivo XML" | |
421 | projectObj.readXml(filename) |
|
472 | projectObj.readXml(filename) | |
|
473 | projectObj.printattr() | |||
422 | No newline at end of file |
|
474 |
General Comments 0
You need to be logged in to leave comments.
Login now