Sha256: 3cc6d0c3619d7508fac81bc92eb59353cea59b9a4e028af3272d64f15386bd6c

Contents?: true

Size: 727 Bytes

Versions: 1

Compression:

Stored size: 727 Bytes

Contents

module PostgresUpsert
  module WriteAdapters
    class ActiveRecordAdapter
      def initialize(destination, options)
        @destination = destination
        @options = sanitize_options(options)
        
      end

      def sanitize_options(options)
        options.slice(
          :delimiter, :unique_key
        ).reverse_merge(
          delimiter: ',',
          unique_key: [primary_key],
        )
      end

      def database_connection
        @destination.connection
      end
      
      def primary_key
        @destination.primary_key
      end

      def column_names
        @destination.column_names
      end

      def quoted_table_name
        @destination.quoted_table_name
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
postgres_upsert-5.1.0 lib/postgres_upsert/write_adapters/active_record_adapter.rb