Module: NetSuiteRails::RecordSync

Defined in:
lib/netsuite_rails/record_sync.rb,
lib/netsuite_rails/record_sync/poll_manager.rb,
lib/netsuite_rails/record_sync/pull_manager.rb,
lib/netsuite_rails/record_sync/push_manager.rb

Defined Under Namespace

Modules: ClassMethods, InstanceMethods, PollManager, PullManager Classes: PushManager

Class Method Summary collapse

Class Method Details

.included(klass) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/netsuite_rails/record_sync.rb', line 4

def self.included(klass)
  klass.class_eval do
    class_attribute :netsuite_settings

    self.netsuite_settings = {
      before_netsuite_push: [],
      after_netsuite_push: [],
      after_netsuite_pull: [],

      netsuite_sync: :read,
      netsuite_field_map: {},
      netsuite_field_hints: {},
      netsuite_record_class: nil,
    }

    cattr_accessor :netsuite_custom_record_type_id
    cattr_accessor :netsuite_sync_options

    self.netsuite_sync_options = {}
  end

  klass.send(:extend, ClassMethods)
  klass.send(:include, InstanceMethods)

  SyncTrigger.attach(klass)
  PollTrigger.attach(klass)
end