Asterisk - The Open Source Telephony Project  21.4.1
Public Member Functions | Data Fields
SqlConfigParser Class Reference
Inheritance diagram for SqlConfigParser:
MultiOrderedConfigParser

Public Member Functions

def __init__
 
def connect (self, user, password, host, port, database)
 
def read
 
def write (self, config_file)
 
def write_dicts (self, config_file, mdicts)
 
- Public Member Functions inherited from MultiOrderedConfigParser
def __init__
 
def add_default
 
def add_include
 
def add_section
 
def default (self, key)
 
def defaults (self)
 
def find_value (self, sections, key)
 
def get (self, section, key)
 
def get_defaults (self, key)
 
def get_sections
 
def includes (self)
 
def multi_get (self, section, key_list)
 
def read
 
def section (self, key)
 
def sections (self)
 
def set (self, section, key, val)
 
def write (self, config_file)
 

Data Fields

 cnx
 

Detailed Description

Definition at line 13 of file sqlconfigparser.py.

Member Function Documentation

def write (   self,
  config_file 
)
Write configuration information out to a file

Definition at line 67 of file sqlconfigparser.py.

References MultiOrderedConfigParser._sections, and SqlConfigParser.write_dicts().

67  def write(self, config_file):
68  """Write configuration information out to a file"""
69  try:
70  self.write_dicts(config_file, self._sections)
71  except:
72  print("Could not open file " + config_file + " for writing")
73  traceback.print_exc()
def write_dicts (   self,
  config_file,
  mdicts 
)
Write the contents of the mdicts to the specified config file

Definition at line 39 of file sqlconfigparser.py.

Referenced by SqlConfigParser.write().

39  def write_dicts(self, config_file, mdicts):
40  """Write the contents of the mdicts to the specified config file"""
41  for section, sect_list in mdicts.iteritems():
42  # every section contains a list of dictionaries
43  for sect in sect_list:
44  sql = "INSERT INTO "
45  if (sect.get('type')[0] == "endpoint"):
46  sql += "ps_endpoints "
47  elif (sect.get('type')[0] == "aor" and section != "sbc"):
48  sql += "ps_aors "
49  elif (sect.get('type')[0] == "identify"):
50  sql += "ps_endpoint_id_ips"
51  else:
52  continue
53 
54  sql += " SET `id` = " + "\"" + MySQLdb.escape_string(section) + "\""
55  for key, val_list in sect.iteritems():
56  if key == "type":
57  continue
58  # every value is also a list
59 
60  key_val = " `" + key + "`"
61  key_val += " = " + "\"" + MySQLdb.escape_string(";".join(val_list)) + "\""
62  sql += ","
63  sql += key_val
64 
65  config_file.write("%s;\n" % (sql))
66 
def write_dicts(self, config_file, mdicts)

The documentation for this class was generated from the following file: