Sha256: d3ed890dd43ff3579f06e33b1b09e073e751a6b3cfec0ce6a78408a402c91e10

Contents?: true

Size: 680 Bytes

Versions: 2

Compression:

Stored size: 680 Bytes

Contents

# frozen_string_literal: true

module LedgerSync
  module Adaptors
    module NetSuite
      module Operation
        module Mixin
          def self.included(base)
            base.include Adaptors::Operation::Mixin
            base.include InstanceMethods # To ensure these override parent methods
          end

          module InstanceMethods
            def ledger_deserializer
              @ledger_deserializer ||= begin
                modules = self.class.name.split('::Operations::').first
                Object.const_get("#{modules}::LedgerDeserializer").new(resource: resource)
              end
            end
          end
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
ledger_sync-1.3.2 lib/ledger_sync/adaptors/netsuite/operation.rb
ledger_sync-1.3.1 lib/ledger_sync/adaptors/netsuite/operation.rb