Sha256: 97b47938d095a6532282f5cb24d88a6b4c2534f10b855fa2c206d593741f9933

Contents?: true

Size: 661 Bytes

Versions: 4

Compression:

Stored size: 661 Bytes

Contents

#!/usr/bin/env ruby

	class DBChangePoint #memento
		def self.class_for(connection)
			cname = connection.class.name.split('::').last
			cname = cname.chomp('Adapter') + 'ChangePoint'
			Object.const_get(cname)
		end
	end

	class SQLServerChangePoint #memento
		def initialize
			@change_point = {}
		end

		def capture_for(arclass)
			@change_point[arclass.name] = arclass.connection.select_value("select @@dbts")
		end

		def changed_point_for(arclass)
			@change_point[arclass.name] ||= [0,0,0,0] #binary(8) in MSSQLServer
		end

		def changed_condition_for(arclass)
			['DBREV > ?', @change_point[arclass.name].to_int]
		end
	end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
jcangas-datagateway-1.1.0 lib/datagateway/dbchange_point.rb
jcangas-datagateway-1.2.2 lib/datagateway/dbchange_point.rb
jcangas-datagateway-1.4.4 lib/datagateway/dbchange_point.rb
jcangas-datagateway-1.5.0 lib/datagateway/dbchange_point.rb