def _create_router_types_from_config(self):
<EOL>self._dev_mgr._setup_device_manager()<EOL>rt_dict = config.get_specific_config('<STR_LIT>')<EOL>attr_info = routertype.RESOURCE_ATTRIBUTE_MAP[routertype.ROUTER_TYPES]<EOL>adm_context = bc.context.get_admin_context()<EOL>for rt_uuid, kv_dict in rt_dict.items():<EOL><INDENT>try:<EOL><INDENT>rt_uuid = config.uuidify(rt_uuid)<EOL>self.get_routertype(adm_context, rt_uuid)<EOL>is_create = False<EOL><DEDENT>except routertype.RouterTypeNotFound:<EOL><INDENT>is_create = True<EOL><DEDENT>kv_dict['<STR_LIT:id>'] = rt_uuid<EOL>kv_dict['<STR_LIT>'] = self._dev_mgr.l3_tenant_id()<EOL>config.verify_resource_dict(kv_dict, True, attr_info)<EOL>hd = {'<STR_LIT>': kv_dict}<EOL>try:<EOL><INDENT>if is_create:<EOL><INDENT>self.create_routertype(adm_context, hd)<EOL><DEDENT>else:<EOL><INDENT>self.update_routertype(adm_context, kv_dict['<STR_LIT:id>'], hd)<EOL><DEDENT><DEDENT>except n_exc.NeutronException:<EOL><INDENT>with excutils.save_and_reraise_exception():<EOL><INDENT>LOG.error('<STR_LIT>'<EOL>'<STR_LIT>',<EOL>rt_uuid)<EOL><DEDENT><DEDENT><DEDENT>
To be called late during plugin initialization so that any router
        type defined in the config file is properly inserted in the DB.