Sha256: e8221bef7ca409e8b7d1f7c8a2af7f19e3d03f94b1ede5e7805d6780628e3957

Contents?: true

Size: 1.58 KB

Versions: 4

Compression:

Stored size: 1.58 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_all
            self.send(:include, NetSuite::Actions::GetAll::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 :upsert
            self.send(:include, NetSuite::Actions::Upsert::Support)
          when :upsert_list
            self.send(:include, NetSuite::Actions::UpsertList::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

4 entries across 4 versions & 1 rubygems

Version Path
netsuite-0.3.3 lib/netsuite/support/actions.rb
netsuite-0.3.2 lib/netsuite/support/actions.rb
netsuite-0.3.1 lib/netsuite/support/actions.rb
netsuite-0.3.0 lib/netsuite/support/actions.rb