lib/rflow/shard.rb in rflow-1.0.0a2 vs lib/rflow/shard.rb in rflow-1.0.0a3
- old
+ new
@@ -36,14 +36,20 @@
RFlow.logger.debug "Configuring component '#{component.name}' (#{component.uuid})"
component.configure! config
end
end
+ # Connect all inputs before all outputs, so connection types that require a 'server'
+ # to be established before a 'client' can connect can get themselves ready.
def connect_components!
RFlow.logger.debug "Connecting components"
@components.each do |component|
- RFlow.logger.debug "Connecting component '#{component.name}' (#{component.uuid})"
- component.connect!
+ RFlow.logger.debug "Connecting inputs for component '#{component.name}' (#{component.uuid})"
+ component.connect_inputs!
+ end
+ @components.each do |component|
+ RFlow.logger.debug "Connecting outputs for component '#{component.name}' (#{component.uuid})"
+ component.connect_outputs!
end
end
def run_components!
RFlow.logger.debug "Running components"