Sha256: 2aca7f895cda606dfe352923ed2ded5bb4f5f0795103792b073843c5d60aeb4c

Contents?: true

Size: 1.6 KB

Versions: 12

Compression:

Stored size: 1.6 KB

Contents

require 'urbanairship'

module Urbanairship
  module Automations
    class Pipeline
      include Urbanairship::Common
      include Urbanairship::Loggable
      attr_accessor :activation_time,
                    :cancellation_trigger,
                    :condition,
                    :constraint,
                    :creation_time,
                    :deactivation_time,
                    :historical_trigger,
                    :immediate_trigger,
                    :last_modified_time,
                    :name,
                    :status,
                    :timing,
                    :url,
                    :enabled,
                    :outcome

      def initialize(client: required('client'))
        @client = client
      end

      def payload
         fail ArgumentError, 'enabled must be set to create pipeline payload' if @enabled.nil?
         fail ArgumentError, 'outcome must be set to create pipeline payload' if @outcome.nil?
        {
          activation_time: activation_time,
          cancellation_trigger: cancellation_trigger,
          condition: condition,
          constraint: constraint,
          creation_time: creation_time,
          deactivation_time: deactivation_time,
          enabled: enabled,
          historical_trigger: historical_trigger,
          immediate_trigger: immediate_trigger,
          last_modified_time: last_modified_time,
          name: name,
          outcome: outcome,
          status: status,
          timing: timing,
          url: url
        }.delete_if {|key, value| value.nil?} #this removes the nil key value pairs
      end
      
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
urbanairship-9.4.0 lib/urbanairship/automations/pipeline.rb
urbanairship-9.2.0 lib/urbanairship/automations/pipeline.rb
urbanairship-9.1.1 lib/urbanairship/automations/pipeline.rb
urbanairship-9.1.0 lib/urbanairship/automations/pipeline.rb
urbanairship-9.0.0 lib/urbanairship/automations/pipeline.rb
urbanairship-8.0.1 lib/urbanairship/automations/pipeline.rb
urbanairship-8.0.0 lib/urbanairship/automations/pipeline.rb
urbanairship-7.0.0 lib/urbanairship/automations/pipeline.rb
urbanairship-6.0.0 lib/urbanairship/automations/pipeline.rb
urbanairship-5.9.0 lib/urbanairship/automations/pipeline.rb
urbanairship-5.8.0 lib/urbanairship/automations/pipeline.rb
urbanairship-5.7.0 lib/urbanairship/automations/pipeline.rb