[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
gnue/integrator/src GIObjects.py GIParser.py .c...
From: |
Jan Ischebeck |
Subject: |
gnue/integrator/src GIObjects.py GIParser.py .c... |
Date: |
Thu, 06 Mar 2003 11:10:23 -0500 |
CVSROOT: /cvsroot/gnue
Module name: gnue
Changes by: Jan Ischebeck <address@hidden> 03/03/06 11:10:19
Modified files:
integrator/src : GIObjects.py GIParser.py
Added files:
integrator/src : .cvsignore
Log message:
small merge (experm. trigger stuff)
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/integrator/src/.cvsignore?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/integrator/src/GIObjects.py.diff?tr1=1.8&tr2=1.9&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/integrator/src/GIParser.py.diff?tr1=1.6&tr2=1.7&r1=text&r2=text
Patches:
Index: gnue/integrator/src/GIObjects.py
diff -c gnue/integrator/src/GIObjects.py:1.8
gnue/integrator/src/GIObjects.py:1.9
*** gnue/integrator/src/GIObjects.py:1.8 Mon Feb 17 02:32:53 2003
--- gnue/integrator/src/GIObjects.py Thu Mar 6 11:10:19 2003
***************
*** 32,38 ****
from gnue.common.apps import GDebug, GConfig
from gnue.common.datasources import GDataSource
from gnue.common.definitions.GRootObj import GRootObj
- from gnue.reports import GREngine,GRExceptions
import GIParser
from gnue.common.logic.GTrigger import GTriggerExtension
--- 32,37 ----
***************
*** 82,87 ****
--- 81,89 ----
def __init__(self, parent):
GTriggerExtension.__init__(self)
GIObject.__init__(self, parent, type="GIMapping")
+ self.repeatthisrow=0
+ self.skipthisrow=0
+
self._inits = [self.initialize]
self._validTriggers = {'POST-ROW':'Post-Row',
'PRE-ROW':'Pre-Row',
***************
*** 94,113 ****
#
# temporariy hack: remove this functions if trigger namespace is
# populated correctly
! # self._triggerGlobal = 1
self._triggerFunctions={'setField':{'function':self.triggerSetValue,
'global':1},
'getField':{'function':self.triggerGetValue,
! 'global':1}
}
def triggerSetValue(self,field,value):
! if not hasattr(self._parent,'_testonly'):
! self._outputRset.current.setField(field,value)
def triggerGetValue(self,field):
return self._inputRset.current.getField(field)
# end hack
def initialize(self):
--- 96,144 ----
#
# temporariy hack: remove this functions if trigger namespace is
# populated correctly
! self._triggerGlobal = 1
self._triggerFunctions={'setField':{'function':self.triggerSetValue,
'global':1},
'getField':{'function':self.triggerGetValue,
! 'global':1},
! 'repeatThisRow':{'function':self.triggerRepeatRow,
! 'global':0},
! 'skipThisRow':{'function':self.triggerSkipRow,
! 'global':0}
}
+
def triggerSetValue(self,field,value):
! self.valuesetbytrigger[field]=value
!
def triggerGetValue(self,field):
return self._inputRset.current.getField(field)
+ def triggerSkipRow(self,skip):
+ self.skipthisrow=skip
+
+ def triggerRepeatRow(self,repeat):
+ self.repeatthisrow=repeat
+
+ def triggerLoadRow(self,field):
+ # TODO: make record global variable
+ record=self._inputRset.nextRecord()
+
+ def triggerStoreRow(self, output):
+ # TODO: replace this code and the code in the main loop by one function
+ if not hasattr(self._parent,'_testonly'):
+
+ self._outputRset.insertRecord ()
+
+ for field in output.keys():
+
+ self._outputRset.current.setField(field,output[field])
+
+ else:
+ print output
+
+
# end hack
def initialize(self):
***************
*** 134,140 ****
# Prepare Input datasource
if self._inputSource.hasMaster():
raise Exception,'InputSources in a Mapping should not have a master'
! print "HALLO"
self._inputRset=self._inputSource.createResultSet({})
# Prepare Output datasource
--- 165,171 ----
# Prepare Input datasource
if self._inputSource.hasMaster():
raise Exception,'InputSources in a Mapping should not have a master'
!
self._inputRset=self._inputSource.createResultSet({})
# Prepare Output datasource
***************
*** 150,165 ****
self._outputRset=self._outputSource.createResultSet()
self.processTrigger('Pre-Process')
record=self._inputRset.firstRecord()
while record:
- if not hasattr(self._parent,'_testonly'):
- self._outputRset.insertRecord ()
-
output={}
self.processTrigger('Pre-Row')
for child in self._children:
--- 181,197 ----
self._outputRset=self._outputSource.createResultSet()
+ self.valuesetbytrigger = {}
+
self.processTrigger('Pre-Process')
record=self._inputRset.firstRecord()
while record:
output={}
+ self.valuesetbytrigger = {}
+
self.processTrigger('Pre-Row')
for child in self._children:
***************
*** 170,188 ****
if out!=None:
output.update(out)
! self.processTrigger('Post-Row')
- for field in output.keys():
- # TODO: add some basic output field processing here
-
if not hasattr(self._parent,'_testonly'):
! self._outputRset.current.setField(field,output[field])
! if hasattr(self._parent,'_testonly'):
! print output
- record=self._inputRset.nextRecord()
self.processTrigger('Post-Process')
--- 202,242 ----
if out!=None:
output.update(out)
! output.update(self.valuesetbytrigger)
! self.valuesetbytrigger = {}
!
!
! if not self.skipthisrow:
! self.processTrigger('Post-Row')
if not hasattr(self._parent,'_testonly'):
! self._outputRset.insertRecord ()
!
! for field in output.keys():
! # TODO: add some basic output field processing here
!
! self._outputRset.current.setField(field,output[field])
! else:
! print output
!
!
! else:
!
! self.skipthisrow=0
!
! # TODO: add a loop lock
! if self.repeatthisrow:
!
! self.repeatthisrow=0
!
! else:
!
! record=self._inputRset.nextRecord()
!
!
self.processTrigger('Post-Process')
***************
*** 253,259 ****
out=self.mergemask
for child in self._children:
if child.type=="src":
! value=row.getField(child.name)
if child.trim:
value=string.strip(value)
out=string.replace(out,'@%s' % inpCount, '%s' % value)
--- 307,313 ----
out=self.mergemask
for child in self._children:
if child.type=="src":
! value=str(row.getField(child.name))
if child.trim:
value=string.strip(value)
out=string.replace(out,'@%s' % inpCount, '%s' % value)
Index: gnue/integrator/src/GIParser.py
diff -c gnue/integrator/src/GIParser.py:1.6 gnue/integrator/src/GIParser.py:1.7
*** gnue/integrator/src/GIParser.py:1.6 Mon Feb 17 02:32:53 2003
--- gnue/integrator/src/GIParser.py Thu Mar 6 11:10:19 2003
***************
*** 84,89 ****
--- 84,93 ----
'title': {
'Typecast': GTypecast.text,
'Default': 'Untitled Menu' },
+ 'name': {
+ 'Unique': 1,
+ 'Typecast': GTypecast.name,
+ 'Description': 'A unique ID for this list of mappings.' },
'type': {
'ValueSet': {
'direct': {},
***************
*** 96,105 ****
'mapping': {
'BaseClass': GIObjects.GIMapping,
'Attributes': {
! 'id': {
# 'Required': 1,
! 'Unique': 1,
! 'Typecast': GTypecast.name },
'name': {
'Unique': 1,
'Required': 1,
--- 100,109 ----
'mapping': {
'BaseClass': GIObjects.GIMapping,
'Attributes': {
! # 'id': {
# 'Required': 1,
! # 'Unique': 1,
! # 'Typecast': GTypecast.name },
'name': {
'Unique': 1,
'Required': 1,
***************
*** 160,165 ****
--- 164,172 ----
'merge': {},
'split': {},
'copy': {}}},
+ 'name': {
+ # 'Required': 1,
+ 'Typecast': GTypecast.name },
# 'parameter': {
# 'Required': 1,
# 'Typecast': GTypecast.name },
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- gnue/integrator/src GIObjects.py GIParser.py .c...,
Jan Ischebeck <=