def load_sanitizers(self, config_data):
section_strategy = config_data.get("<STR_LIT>")<EOL>if not isinstance(section_strategy, dict):<EOL><INDENT>if section_strategy is None:<EOL><INDENT>return<EOL><DEDENT>raise ConfigurationError(<EOL>"<STR_LIT>" % (<EOL>type(section_strategy),<EOL>),<EOL>)<EOL><DEDENT>for table_name, column_data in six.iteritems(section_strategy):<EOL><INDENT>if not isinstance(column_data, dict):<EOL><INDENT>if column_data is None:<EOL><INDENT>continue<EOL><DEDENT>raise ConfigurationError(<EOL>"<STR_LIT>" % (<EOL>table_name,<EOL>type(column_data),<EOL>),<EOL>)<EOL><DEDENT>for column_name, sanitizer_name in six.iteritems(column_data):<EOL><INDENT>if sanitizer_name is None:<EOL><INDENT>continue<EOL><DEDENT>if not isinstance(sanitizer_name, six.text_type):<EOL><INDENT>raise ConfigurationError(<EOL>"<STR_LIT>" % (<EOL>table_name,<EOL>column_name,<EOL>type(sanitizer_name),<EOL>),<EOL>)<EOL><DEDENT>sanitizer_callback = self.find_sanitizer(sanitizer_name)<EOL>sanitizer_key = "<STR_LIT>" % (table_name, column_name)<EOL>self.sanitizers[sanitizer_key] = sanitizer_callback<EOL><DEDENT><DEDENT>
Loads sanitizers possibly defined in the configuration under dictionary
called "strategy", which should contain mapping of database tables with
column names mapped into sanitizer function names.

:param config_data: Already parsed configuration data, as dictionary.
:type config_data: dict[str,any]