develop
asamoukin 16 years ago
parent 1d5a8a1bdf
commit 160b2ae9de

@ -739,13 +739,14 @@ class DataVars(object):
else:
return self.__dict__[vname].service.lower()
def __writeVarValue(self, vname, val, location):
def __writeVarValue(self, vname, val, location, header):
'''Записать значение в calculate.ini
Параметры:
vname имя переменной
val значение переменной
location расположение ini файла ('default', 'local', 'remote')
header раздел ini файла ('client', 'server', 'calculate')
Возвращаемые значение:
True запись успешна
@ -774,10 +775,51 @@ class DataVars(object):
return False
config = iniParser(name_calculate_ini)
# Получаем секцию конфигурационного файла
header = self.__getSection(vname)
if not header:
header = self.__getSection(vname)
return config.setVar(header,{vname: cl_utils.convertStrListDict(val)})
def Write(self, vname, val, force=False, location='default'):
def __deleteVarValue(self, vname, location):
'''Удалить переменную в calculate.ini
Параметры:
vname имя переменной
location расположение ini файла ('default', 'local', 'remote')
Возвращаемые значение:
True удалено успешна
False удаление не удалсь
'''
# получаем все пути до ini файлов
calculate_ini = self.__getPathCalculateIni()
# получаем полный путь до файла ini
if location == 'default':
name_calculate_ini = calculate_ini[2]
elif location == 'local':
name_calculate_ini = calculate_ini[1]
elif location == 'remote':
name_calculate_ini = calculate_ini[0]
else:
return False
# извлекаем из полного имени файла путь
onlydir = os.path.split(name_calculate_ini)[0]
# проверяем чтобы путь до ини файла существовал
if not os.path.exists(onlydir):
return False
config = iniParser(name_calculate_ini)
# Получаем секцию конфигурационного файла
header = self.__getSection(vname)
# Удаляем переменную
retDelVar = config.delVar(header, vname)
retDelArea = True
if not config.getAreaVars(header):
retDelArea = config.delArea(header)
if retDelArea and retDelArea:
return True
else:
return False
def Write(self, vname, val, force=False, location='default',header=False):
'''Установить и записать значение переменной в ini файл
Параметры:
@ -785,12 +827,26 @@ class DataVars(object):
val значение переменной
force "принудительный режим"
location расположение ini файла ('default', 'local', 'remote')
header раздел ini файла ('client', 'server', 'calculate')
'''
if self.__Set(vname, val, force):
self.__writeVarValue(vname, val, location)
self.__writeVarValue(vname, val, location, header)
return True
return False
def Delete(self, vname, location='default'):
'''Удалить переменную в calculate.ini
Параметры:
vname имя переменной
location расположение ini файла ('default', 'local', 'remote')
Возвращаемые значение:
True удалено успешна
False удаление не удалсь
'''
return self.__deleteVarValue(vname, location)
def __getActiveSections(self):
"""активные секции в ini файле"""
act_section = []

@ -21,7 +21,6 @@ from re import search, compile, S
import os
import types
import popen2
import types
def getdirlist(s_path):
#Получить список директорий по указаному пути

Loading…
Cancel
Save