Skip to content

Commit 97da848

Browse files
authored
Merge pull request #904 from Shopify/query_intent_support
Accept `QueryIntent` from Active Record 8.2 in `execute_intent`
2 parents 3a6d5a4 + 1e78d66 commit 97da848

1 file changed

Lines changed: 12 additions & 5 deletions

File tree

lib/semian/activerecord_trilogy_adapter.rb

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -80,16 +80,23 @@ def initialize(*options)
8080
super
8181
end
8282

83-
def raw_execute(sql, *)
84-
if Semian::ActiveRecordTrilogyAdapter.query_allowlisted?(sql)
85-
super
86-
else
83+
if ActiveRecord.version >= Gem::Version.new("8.2.a")
84+
def execute_intent(intent)
85+
return super if Semian::ActiveRecordTrilogyAdapter.query_allowlisted?(intent.processed_sql)
86+
87+
acquire_semian_resource(adapter: :trilogy_adapter, scope: :query) do
88+
super
89+
end
90+
end
91+
else
92+
def raw_execute(sql, ...)
93+
return super if Semian::ActiveRecordTrilogyAdapter.query_allowlisted?(sql)
94+
8795
acquire_semian_resource(adapter: :trilogy_adapter, scope: :query) do
8896
super
8997
end
9098
end
9199
end
92-
ruby2_keywords :raw_execute
93100

94101
def active?
95102
acquire_semian_resource(adapter: :trilogy_adapter, scope: :ping) do

0 commit comments

Comments
 (0)