Class: SQLCapsule::QueryGroup
- Inherits:
-
Object
- Object
- SQLCapsule::QueryGroup
show all
- Defined in:
- lib/sql_capsule/query_group.rb
Defined Under Namespace
Classes: MissingKeywordArgumentError, MissingQueryError
Instance Method Summary
collapse
Constructor Details
#initialize(wrapper, query_object = Query) ⇒ QueryGroup
Returns a new instance of QueryGroup.
8
9
10
11
12
|
# File 'lib/sql_capsule/query_group.rb', line 8
def initialize(wrapper, query_object = Query)
@wrapper = wrapper
@queries = { }
@query_object = query_object
end
|
Instance Method Details
#register(name, query, *args, &block) ⇒ Object
14
15
16
|
# File 'lib/sql_capsule/query_group.rb', line 14
def register(name, query, *args, &block)
queries[name] = query_object.new(query, *args, &block)
end
|
#registered_queries ⇒ Object
18
19
20
|
# File 'lib/sql_capsule/query_group.rb', line 18
def registered_queries
queries.keys
end
|
#run(name, args = { }, &handler) ⇒ Object
22
23
24
25
26
27
28
|
# File 'lib/sql_capsule/query_group.rb', line 22
def run name, args = { }, &handler
query = find_query name
check_args query.args, args.keys
block = query.add_post_processor handler
wrapper.run(query.to_sql, query.filter_args(args), &block)
end
|