Sha256: d3366ac546bf5b6344774045b59ba2e93b872fbdad2329575053c9b97e671de0

Contents?: true

Size: 707 Bytes

Versions: 15

Compression:

Stored size: 707 Bytes

Contents

module Jets::Job::Dsl
  module IotEvent
    # The user must at least pass in an SQL statement
    def iot_event(props={})
      if props.is_a?(String) # SQL Statement
        props = {Sql: props}
        topic_props = {TopicRulePayload: props}
      elsif props.key?(:TopicRulePayload) # full properties structure
        topic_props = props
      else # just the TopicRulePayload
        topic_props = {TopicRulePayload: props}
      end

      declare_iot_topic(topic_props)
    end

    def declare_iot_topic(props={})
      r = Jets::Cfn::Resource::Iot::TopicRule.new(props)
      with_fresh_properties do
        resource(r.definition) # add associated resource immediately
      end
    end
  end
end

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
jets-5.0.13 lib/jets/job/dsl/iot_event.rb
jets-5.0.12 lib/jets/job/dsl/iot_event.rb
jets-5.0.11 lib/jets/job/dsl/iot_event.rb
jets-5.0.10 lib/jets/job/dsl/iot_event.rb
jets-5.0.9 lib/jets/job/dsl/iot_event.rb
jets-5.0.8 lib/jets/job/dsl/iot_event.rb
jets-5.0.7 lib/jets/job/dsl/iot_event.rb
jets-5.0.6 lib/jets/job/dsl/iot_event.rb
jets-5.0.5 lib/jets/job/dsl/iot_event.rb
jets-5.0.4 lib/jets/job/dsl/iot_event.rb
jets-5.0.3 lib/jets/job/dsl/iot_event.rb
jets-5.0.2 lib/jets/job/dsl/iot_event.rb
jets-5.0.1 lib/jets/job/dsl/iot_event.rb
jets-5.0.0 lib/jets/job/dsl/iot_event.rb
jets-5.0.0.beta1 lib/jets/job/dsl/iot_event.rb