Module: Submission::LinearRequestGraph
- Included in:
- LinearSubmission, ReRequestSubmission
- Defined in:
- app/models/submission/linear_request_graph.rb
Overview
This module can be included where the Order has a linear behaviour, with no branching. Eg. in LinearSubmission
Defined Under Namespace
Classes: SourceData
Instance Method Summary collapse
-
#build_request_graph!(multiplexing_assets = nil) ⇒ Object
Builds the entire request graph for this Order This is called from #process_submission! which processes each order in turn, multiplexing_assets returned by the first order get passed into subsequent orders.
Instance Method Details
#build_request_graph!(multiplexing_assets = nil) ⇒ Object
The block behaviour here looks a bit odd, and is a result of the previous behaviour in which the multiplexing assets were yielded directly to the submission. This behaviour can be simplified eventually, but is maintained for the time being to reduce risk of a more significant re-write.
Builds the entire request graph for this Order This is called from Submission#process_submission! which processes each order in turn, multiplexing_assets returned by the first order get passed into subsequent orders.
22 23 24 25 26 27 28 29 30 31 32 |
# File 'app/models/submission/linear_request_graph.rb', line 22 def build_request_graph!(multiplexing_assets = nil) ActiveRecord::Base.transaction do mx_assets_tmp = nil create_request_chain!( build_request_type_multiplier_pairs, assets.map { |asset| SourceData.new(asset, asset.latest_stock_metrics(product), nil) }, multiplexing_assets ) { |a| mx_assets_tmp = a } mx_assets_tmp end end |