Sha256: f388d1aa72fc51b35681c688441bc66c63ae1499cd043041814d1539b5335e4f

Contents?: true

Size: 1.3 KB

Versions: 3

Compression:

Stored size: 1.3 KB

Contents

module NetSuite
  module Support
    module Actions

      attr_accessor :errors

      def self.included(base)
        base.send(:extend, ClassMethods)
      end

      module ClassMethods

        def actions(*args)
          args.each do |action|
            action(action)
          end
        end

        def action(name)
          case name
          when :get
            self.send(:include, NetSuite::Actions::Get::Support)
          when :get_list
            self.send(:include, NetSuite::Actions::GetList::Support)
          when :get_select_value
            self.send(:include, NetSuite::Actions::GetSelectValue::Support)
          when :search
            self.send(:include, NetSuite::Actions::Search::Support)
          when :search_more_with_id
            self.send(:include, NetSuite::Actions::SearchMoreWithId::Support)
          when :add
            self.send(:include, NetSuite::Actions::Add::Support)
          when :delete
            self.send(:include, NetSuite::Actions::Delete::Support)
          when :update
            self.send(:include, NetSuite::Actions::Update::Support)
          when :initialize
            self.send(:include, NetSuite::Actions::Initialize::Support)
          else
            raise "Unknown action: #{name.inspect}"
          end
        end

      end

    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
netsuite-0.2.3 lib/netsuite/support/actions.rb
netsuite-0.2.2 lib/netsuite/support/actions.rb
netsuite-0.2.1 lib/netsuite/support/actions.rb