def handle_placed_order(self, order_uuid=None):
"""
Handle the placement of the given order.
:param order_uuid: The UUID of the order that was placed.
:return: None
"""
logger.info(
"Now handling the placement of order %s."
% (order_uuid,)
)
task_sigs = []
scan_config = self.scan_config
if scan_config.scan_domain_names:
domain_count = count_domains_for_order(db_session=self.db_session, order_uuid=order_uuid)
logger.info(
"Domain count for order %s is %s."
% (order_uuid, domain_count)
)
if domain_count > 0:
task_sigs.append(initiate_domain_scans_for_order.si(order_uuid=order_uuid, scan_endpoints=True))
if scan_config.scan_network_ranges:
network_count = count_networks_for_order(db_session=self.db_session, order_uuid=order_uuid)
logger.info(
"Networks count for order %s is %s."
% (order_uuid, network_count)
)
if network_count > 0:
task_sigs.append(initiate_network_scans_for_order.si(order_uuid=order_uuid, requeue=False))
if len(task_sigs) > 0:
task_sigs.append(handle_order_completion.si(order_uuid=order_uuid))
canvas_sig = group(task_sigs)
canvas_sig.apply_async()
logger.info(
"All scanning tasks for order %s kicked off successfully."
% (order_uuid,)
)
else:
logger.warning("No tasks were created as a result of call to handle_placed_order.")
#USED
评论列表
文章目录