Изменен метод lIniFile в модуле cl_base, теперь он выдает импортируемые переменные из ini файлов

git-svn-id: http://svn.calculate.ru/calculate2/calculate-lib/trunk@1166 c91db197-33c1-4113-bf15-f8a5c547ca64
develop
asamoukin 15 years ago
parent b0058898fc
commit 1a02d2daa7

@ -819,7 +819,7 @@ class DataVars(object):
retDelArea = True retDelArea = True
if not config.getAreaVars(header): if not config.getAreaVars(header):
retDelArea = config.delArea(header) retDelArea = config.delArea(header)
if retDelArea and retDelArea: if retDelArea and retDelVar:
return True return True
else: else:
return False return False
@ -865,16 +865,20 @@ class DataVars(object):
return act_section return act_section
def flIniFile(self): def flIniFile(self):
'''Заместить значение переменных значениями из ини файла '''Заместить значение переменных значениями из ини файлов
Возвращаемые значения: Возвращаемые значения:
True переменные считаны оварь импортированных переменных - переменные считаны
False файл не был обнаружен False - файл не был обнаружен
''' '''
#Cловарь переменных из ini файлов
importVars = {}
calculate_ini = self.__getPathCalculateIni() calculate_ini = self.__getPathCalculateIni()
# активные секции (секции из которых будут использованы переменные) # активные секции (секции из которых будут использованы переменные)
act_section = self.__getActiveSections() act_section = self.__getActiveSections()
set_act_section = set(act_section) set_act_section = set(act_section)
i = 0
locations = ['remote','local','default']
for name_calculate_ini in calculate_ini: for name_calculate_ini in calculate_ini:
# проверить сущестование ini файла # проверить сущестование ini файла
if os.path.exists(name_calculate_ini): if os.path.exists(name_calculate_ini):
@ -886,19 +890,26 @@ class DataVars(object):
continue continue
# находим встречающиеся у обоих секции # находим встречающиеся у обоих секции
act_sect = tuple(set(allsect)& set_act_section) act_sect = tuple(set(allsect)& set_act_section)
# словарь переменных для ini - файла
importFileVars = {}
# получаем все переменные из всех секций # получаем все переменные из всех секций
for section in act_sect: for section in act_sect:
allvars = config.getAreaVars(section) allvars = config.getAreaVars(section)
#allvars = config.getAreaVars(self.__getCurrentHeaderName())
if allvars == False: if allvars == False:
return False return False
# словарь переменных для ini - файла
importFileVars = {}
# принудительно переписать все переменные окружения # принудительно переписать все переменные окружения
# полученные из ini # полученные из ini
for (k,v) in allvars.items(): for (k,v) in allvars.items():
k = k.encode("UTF-8") k = k.encode("UTF-8")
v = v.encode("UTF-8") value = cl_utils.convertStrListDict(v.encode("UTF-8"))
self.Set(k, cl_utils.convertStrListDict(v), True) self.Set(k, value, True)
return True importFileVars[k] = value
if i < 3:
importVars[locations[i]] = importFileVars
i += 1
return importVars
def flServer(self, **args): def flServer(self, **args):
'''Заполнить конфигурацию переменных, для ldap''' '''Заполнить конфигурацию переменных, для ldap'''

Loading…
Cancel
Save