当前位置: 首页>>代码示例>>Python>>正文


Python idlutils.row_by_record函数代码示例

本文整理汇总了Python中neutron.agent.ovsdb.native.idlutils.row_by_record函数的典型用法代码示例。如果您正苦于以下问题:Python row_by_record函数的具体用法?Python row_by_record怎么用?Python row_by_record使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了row_by_record函数的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: run_idl

 def run_idl(self, txn):
     table_schema = self.api._tables[self.table]
     columns = self.columns or list(table_schema.columns.keys()) + ['_uuid']
     if self.records:
         row_uuids = []
         for record in self.records:
             try:
                 row_uuids.append(idlutils.row_by_record(
                                  self.api.idl, self.table, record).uuid)
             except idlutils.RowNotFound:
                 if self.if_exists:
                     continue
                 # NOTE(kevinbenton): this is converted to a RuntimeError
                 # for compat with the vsctl version. It might make more
                 # sense to change this to a RowNotFoundError in the future.
                 raise RuntimeError(_(
                       "Row doesn't exist in the DB. Request info: "
                       "Table=%(table)s. Columns=%(columns)s. "
                       "Records=%(records)s.") % {
                           "table": self.table,
                           "columns": self.columns,
                           "records": self.records,
                       })
     else:
         row_uuids = table_schema.rows.keys()
     self.result = [
         {
             c: idlutils.get_column_value(table_schema.rows[uuid], c)
             for c in columns
         }
         for uuid in row_uuids
     ]
开发者ID:coreycb,项目名称:neutron,代码行数:32,代码来源:commands.py

示例2: __init__

 def __init__(self, api, table, records, columns, if_exists):
     super(DbListCommand, self).__init__(api)
     self.table = self.api._tables[table]
     self.columns = columns or self.table.columns.keys() + ['_uuid']
     self.if_exists = if_exists
     if records:
         self.records = [
             idlutils.row_by_record(self.api.idl, table, record).uuid
             for record in records]
     else:
         self.records = self.table.rows.keys()
开发者ID:CloudA,项目名称:neutron,代码行数:11,代码来源:commands.py

示例3: run_idl

 def run_idl(self, txn):
     record = idlutils.row_by_record(self.api.idl, self.table, self.record)
     for col, val in self.col_values:
         # TODO(twilson) Ugh, the OVS library doesn't like OrderedDict
         # We're only using it to make a unit test work, so we should fix
         # this soon.
         if isinstance(val, collections.OrderedDict):
             val = dict(val)
         if isinstance(val, dict):
             # NOTE(twilson) OVS 2.6's Python IDL has mutate methods that
             # would make this cleaner, but it's too early to rely on them.
             existing = getattr(record, col, {})
             existing.update(val)
             val = existing
         setattr(record, col, idlutils.db_replace_record(val))
开发者ID:cloudbase,项目名称:neutron,代码行数:15,代码来源:commands.py

示例4: __init__

 def __init__(self, api, table, records, columns, if_exists):
     super(DbListCommand, self).__init__(api)
     self.requested_info = {'records': records, 'columns': columns,
                            'table': table}
     self.table = self.api._tables[table]
     self.columns = columns or self.table.columns.keys() + ['_uuid']
     self.if_exists = if_exists
     if records:
         self.records = []
         for record in records:
             try:
                 self.records.append(idlutils.row_by_record(
                       self.api.idl, table, record).uuid)
             except idlutils.RowNotFound:
                 if self.if_exists:
                     continue
                 raise
     else:
         self.records = self.table.rows.keys()
开发者ID:kkxue,项目名称:neutron,代码行数:19,代码来源:commands.py


注:本文中的neutron.agent.ovsdb.native.idlutils.row_by_record函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。