|
|
|
@ -918,8 +918,53 @@ class DataVars(object):
|
|
|
|
|
#if self.__dict__.has_key(vname):
|
|
|
|
|
#return True
|
|
|
|
|
#return False
|
|
|
|
|
def defined(self, vname):
|
|
|
|
|
return True
|
|
|
|
|
#def defined(self, vname):
|
|
|
|
|
#return True
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def defined(self, nameVar):
|
|
|
|
|
""" Определяет существует ли переменная с таким имененм
|
|
|
|
|
"""
|
|
|
|
|
if self.__dict__.has_key(nameVar):
|
|
|
|
|
return True
|
|
|
|
|
foundVar = False
|
|
|
|
|
# Ищем переменную в импортируемых модулях
|
|
|
|
|
for section, moduleVar, fillobj in self._importList:
|
|
|
|
|
if moduleVar.Data.__dict__.has_key(nameVar):
|
|
|
|
|
foundVar = True
|
|
|
|
|
break
|
|
|
|
|
return foundVar
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
try:
|
|
|
|
|
exec("dataVar=moduleVar.Data.%s"%nameVar)
|
|
|
|
|
except AttributeError, e:
|
|
|
|
|
pass
|
|
|
|
|
if dataVar:
|
|
|
|
|
break
|
|
|
|
|
if dataVar == False:
|
|
|
|
|
print _("Not found variable %s")%nameVar
|
|
|
|
|
if e:
|
|
|
|
|
print _("error") + ": " +str(e)
|
|
|
|
|
exit(1)
|
|
|
|
|
dataVar['service'] = section
|
|
|
|
|
# Ищем метод в объекте методов заполнения
|
|
|
|
|
nameMethod = "get_" + nameVar
|
|
|
|
|
flagFindMetod = False
|
|
|
|
|
for section, moduleVar, fillobj in self._importList:
|
|
|
|
|
if fillobj:
|
|
|
|
|
if nameMethod in dir(fillobj):
|
|
|
|
|
flagFindMetod = True
|
|
|
|
|
method = fillobj.__getattribute__(nameMethod)
|
|
|
|
|
break
|
|
|
|
|
if flagFindMetod:
|
|
|
|
|
return (dataVar,method)
|
|
|
|
|
else:
|
|
|
|
|
return (dataVar,False)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def getVars(self, type_names=None):
|
|
|
|
|
ret = {}
|
|
|
|
|