201 |
# |
# |
202 |
def __getattr__(self,name): |
def __getattr__(self,name): |
203 |
if name == '__properties__': |
if name == '__properties__': |
204 |
return self._triggerProperties |
return self._triggerProperties |
205 |
else: |
else: |
206 |
GDebug.printMesg(1,"AttributeError: %s" % name) |
print "AttributeError: %s" % (name) |
207 |
# print self.__dict__ |
# print self.__dict__ |
208 |
raise AttributeError |
raise AttributeError |
209 |
|
|
210 |
# |
# |
407 |
|
|
408 |
def setFunctionFrom(self, object): |
def setFunctionFrom(self, object): |
409 |
self.__call__=object.__call__ |
self.__call__=object.__call__ |
410 |
|
|
411 |
def setFunction(self, text, language): |
def setFunction(self, text, language): |
412 |
self._text = text |
self._text = text |
413 |
self.language = language |
self.language = language |
447 |
"pass\n" |
"pass\n" |
448 |
|
|
449 |
try: |
try: |
450 |
self._code = compile(revisedTriggerCode, '<string>', 'exec') |
self._code = compile(revisedTriggerCode, '<trigger '+self.name+'>', 'exec') |
451 |
except SyntaxError, err: |
except SyntaxError, err: |
452 |
GDebug.printMesg(0, "Syntax error in line %s of trigger in element ??" \ |
GDebug.printMesg(0, "[%s]" % self.name) |
453 |
% ( err.lineno )) |
GDebug.printMesg(0, "Syntax error in %s:%d [%s] of trigger in element ?? [%s]" \ |
454 |
|
% ( err.lineno, err.offset, err.text, self.name )) |
455 |
sys.exit() |
sys.exit() |
456 |
|
except: |
457 |
|
# GDebug.printMesg(0, "[%s]" % self.name) |
458 |
|
print "[%s]" % self.name |
459 |
|
raise |
460 |
|
|
461 |
def thisTrigger(myself, code = self._code, |
def thisTrigger(myself, code = self._code, |
462 |
triggerns = self._triggerns): |
triggerns = self._triggerns): |
467 |
locals = {} |
locals = {} |
468 |
exec code in triggerns, locals |
exec code in triggerns, locals |
469 |
except TriggerError: |
except TriggerError: |
470 |
|
GDebug.printMesg(0, "[%s]" % myself.name) |
471 |
raise |
raise |
472 |
except: |
except: |
473 |
# May be better to deal with this in GFTriggerAware |
# May be better to deal with this in GFTriggerAware |
474 |
|
GDebug.printMesg(0, "[%s]" % myself.name) |
475 |
raise |
raise |
476 |
import sys |
import sys |
477 |
GDebug.printMesg(0, "%s in trigger code, value: %s" % (sys.exc_type, sys.exc_value)) |
GDebug.printMesg(0, "%s in trigger code, value: %s" % (sys.exc_type, sys.exc_value)) |