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


Python Transaction.start方法代码示例

本文整理汇总了Python中trytond.transaction.Transaction.start方法的典型用法代码示例。如果您正苦于以下问题:Python Transaction.start方法的具体用法?Python Transaction.start怎么用?Python Transaction.start使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在trytond.transaction.Transaction的用法示例。


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

示例1: wrap

# 需要导入模块: from trytond.transaction import Transaction [as 别名]
# 或者: from trytond.transaction.Transaction import start [as 别名]
    def wrap(self, *args, **kwargs):
        message_res = met(self, *args, **kwargs)
        if self.logger_enabled:
            message_req = self.incoming_message

            logger.debug("Saving transition:\nIN: %s\nOUT: %s\nHandler: %s\n" % (message_req, message_res,
                                                                                 self.__class__.__name__))
            transaction = Transaction()
            logger.debug("Starting db transaction for domain:%s" % self.pool_manager.get_domain())
            transaction.start(self.pool_manager.get_domain(), 0)
            logger.debug("Connecting to table")
            hl7_message_logger = self.pool_manager.get_table("hl7.message_logger")
            logger.debug("Preparing query for table:::%s" % hl7_message_logger)

            cursor = transaction.cursor

            insert_columns = [hl7_message_logger.create_uid, hl7_message_logger.create_date,
                              hl7_message_logger.creation_date, hl7_message_logger.request,
                              hl7_message_logger.response, hl7_message_logger.handler_module]
            insert_values = [transaction.user, Now(), Now(), message_req,  message_res[1:-2],  self.__class__.__name__]

            cursor.execute(*hl7_message_logger.insert(insert_columns, [insert_values]))
            cursor.execute("commit")

            logger.debug("Query executed")
            transaction.stop()

        return message_res
开发者ID:kret0s,项目名称:tryton3_8,代码行数:30,代码来源:hl7_handlers.py

示例2: discover_handlers

# 需要导入模块: from trytond.transaction import Transaction [as 别名]
# 或者: from trytond.transaction.Transaction import start [as 别名]
def discover_handlers(database_name, logger_enabled):
    pool_manager = PoolManager(database_name)
    transaction = Transaction()
    logger.debug("Starting db transaction for domain:%s" % database_name)
    transaction.start(database_name, 0)
    logger.debug("Connecting to table")
    transaction_handler_table = pool_manager.get_table("hl7.transaction_handler")
    logger.debug("Preparing query for table -> %s" % transaction_handler_table)
    query = transaction_handler_table.select(*[transaction_handler_table.message_handler_module_name,
                                             transaction_handler_table.message_handler_class_name,
                                             transaction_handler_table.message_type])
    cursor = transaction.cursor
    logger.debug("Executing query:%s" % query)
    cursor.execute(*query)

    results = cursor.fetchall()  # return all results
    logger.debug("Query results: %s" % results)

    transaction.stop()

    handlers = {
        "ERR": (HL7ErrorHandler, pool_manager)
    }
    if results:
        for r in results:
            handler_module_name = r[0]
            handler_class_name = r[1]
            message_type = r[2]
            handlers[message_type] = (str_to_class(handler_module_name, handler_class_name), pool_manager,
                                      logger_enabled)

    logger.debug("handlers found: " + str(handlers))
    return handlers
开发者ID:kret0s,项目名称:tryton3_8,代码行数:35,代码来源:mllp_server.py

示例3: _get_sending_application

# 需要导入模块: from trytond.transaction import Transaction [as 别名]
# 或者: from trytond.transaction.Transaction import start [as 别名]
 def _get_sending_application(self):
     transaction = Transaction()
     transaction.start(self.pool.get_domain(), 0)
     query = self.hl7_conf_table.select(*[self.hl7_conf_table.application_code])
     cursor = transaction.cursor
     cursor.execute(*query)
     results = cursor.fetchall()  # return all results
     transaction.stop()
     
     if results is not None and len(results) > 0:
         return results[0][0]
     else:
         return "gnuhealth"
开发者ID:kret0s,项目名称:tryton3_8,代码行数:15,代码来源:supplier.py

示例4: _get_pdq_allowed_applications

# 需要导入模块: from trytond.transaction import Transaction [as 别名]
# 或者: from trytond.transaction.Transaction import start [as 别名]
 def _get_pdq_allowed_applications(self):
     transaction = Transaction()
     transaction.start(self.pool.get_domain(), 0)
     query = self.pdq_allowed_apps_table.select(*[self.pdq_allowed_apps_table.allowed_application])
     cursor = transaction.cursor
     cursor.execute(*query)
     results = cursor.fetchall()  # return all results
     transaction.stop()  # cursor.close()
     
     if results is not None and len(results) > 0:
         allowed_apps = [res[0] for res in results]
         logger.debug("Allowed APPS:%s" % allowed_apps)
         return allowed_apps
     else:
         logger.debug("NO allowed applications found")
         return []
开发者ID:kret0s,项目名称:tryton3_8,代码行数:18,代码来源:supplier.py

示例5: wrapper

# 需要导入模块: from trytond.transaction import Transaction [as 别名]
# 或者: from trytond.transaction.Transaction import start [as 别名]
 def wrapper(*args, **kwargs):
     transaction = Transaction()
     with transaction.start(DB_NAME, user, context=context):
         result = func(*args, **kwargs)
         transaction.cursor.rollback()
         # Drop the cache as the transaction is rollbacked
         Cache.drop(DB_NAME)
         return result
开发者ID:kret0s,项目名称:tryton3_8,代码行数:10,代码来源:test_tryton.py

示例6: _load_pdq_configuration_dict

# 需要导入模块: from trytond.transaction import Transaction [as 别名]
# 或者: from trytond.transaction.Transaction import start [as 别名]
   def _load_pdq_configuration_dict(self):
       """
       Load the pdq configuration dict from the database, based on the current content of the hl7 and pdq tables
       """
 
       conf = {
           "ENABLED": False,
           "ALLOWED_APPLICATIONS": [],
           "FILTER_BY_ALLOWED_APP": False,
           "SENDING_FACILITY": "gnuhealth",
           "SENDING_APPLICATION": "gnuhealth",
           "CHARACTER_SET": CHARACTER_SET,
           "LANGUAGE": LANGUAGE,
           "COUNTRY": COUNTRY_CODE
       }
       
       transaction = Transaction()
       transaction.start(self.pool.get_domain(), 0)
       query = self.pdq_conf_table.select(*[self.pdq_conf_table.enabled, self.pdq_conf_table.facility_name,
                                          self.pdq_conf_table.filter_by_allowed_app, self.pdq_conf_table.encoding_char,
                                          self.pdq_conf_table.country, self.pdq_conf_table.language])
       cursor = transaction.cursor
       cursor.execute(*query)
       results = cursor.fetchall()  # return all results
       logger.debug("PDQ CONFIGURATION Query results: %s" % results)
       
       transaction.stop()
       
       if results:
           conf["ENABLED"] = results[0][0]   
           conf["SENDING_FACILITY"] = results[0][1]   
           conf["FILTER_BY_ALLOWED_APP"] = results[0][2]
           conf["CHARACTER_SET"] = results[0][3]
           conf["COUNTRY"] = results[0][4]
           conf["LANGUAGE"] = results[0][5]
           conf["ALLOWED_APPLICATIONS"] = self._get_pdq_allowed_applications()
           conf["SENDING_APPLICATION"] = self._get_sending_application()
           
       return conf
开发者ID:kret0s,项目名称:tryton3_8,代码行数:41,代码来源:supplier.py

示例7: transaction

# 需要导入模块: from trytond.transaction import Transaction [as 别名]
# 或者: from trytond.transaction.Transaction import start [as 别名]
def transaction(request):
    """Yields transaction with installed module.
    """

    # Importing transaction directly causes cyclic dependency in 3.6
    from trytond.tests.test_tryton import USER, CONTEXT, DB_NAME, POOL
    from trytond.tools.singleton import Singleton  # noqa
    from trytond.transaction import Transaction
    from trytond.cache import Cache

    # Inject helper functions in instance on which test function was collected.
    request.instance.POOL = POOL
    request.instance.USER = USER
    request.instance.CONTEXT = CONTEXT
    request.instance.DB_NAME = DB_NAME

    transaction = Transaction()

    with transaction.start(DB_NAME, USER, context=CONTEXT) as txn:
        yield txn
        transaction.rollback()
        Cache.drop(DB_NAME)
开发者ID:fulfilio,项目名称:trytond-payment-gateway-stripe,代码行数:24,代码来源:conftest.py


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