lib/floe/workflow.rb in floe-0.5.0 vs lib/floe/workflow.rb in floe-0.6.0
- old
+ new
@@ -36,10 +36,14 @@
def initialize(payload, context = nil, credentials = {})
payload = JSON.parse(payload) if payload.kind_of?(String)
credentials = JSON.parse(credentials) if credentials.kind_of?(String)
context = Context.new(context) unless context.kind_of?(Context)
+ raise Floe::InvalidWorkflowError, "Missing field \"States\"" if payload["States"].nil?
+ raise Floe::InvalidWorkflowError, "Missing field \"StartAt\"" if payload["StartAt"].nil?
+ raise Floe::InvalidWorkflowError, "\"StartAt\" not in the \"States\" field" unless payload["States"].key?(payload["StartAt"])
+
@payload = payload
@context = context
@credentials = credentials
@start_at = payload["StartAt"]
@@ -75,10 +79,10 @@
step_next
current_state.run_nonblock!
end
def step_nonblock_wait(timeout: 5)
- current_state.run_wait(:timeout => timeout)
+ current_state.wait(:timeout => timeout)
end
def step_nonblock_ready?
current_state.ready?
end