sqlcached_client 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 30b7e7df7003436bc67762203e5e3fdd982be9b9
4
- data.tar.gz: e9fbb528788728392c7b5a6b879a38230beafd11
3
+ metadata.gz: b42b69a352eb18ba2eac102ceae33dba1af5a53e
4
+ data.tar.gz: f96a6dfe6b32e75a0b97df62a4d1c1f882e41359
5
5
  SHA512:
6
- metadata.gz: 084112afa0b779ff0772ef3fcdbe43e12e3d5fbeea51dc7b177d5dfef29d0a3cf37cc9df665493d1c00450b96d77ed8fa77088ff74bf5999f539cdf4f33986ec
7
- data.tar.gz: cd72f5a608e867d7defdcadfa37b42757bb022af05273d853cb472d343f1614bbfd117613bc1b2bbdb5a3f93e6d4a2ad6723d3edaaf0183d1ca3c4e4459b9a20
6
+ metadata.gz: 965c36bcdbe96a4163fc8fa956d3f5868405f78c7a0cb68326f0ed81cd9ef25a3ccfccf8389d6a8159582c3433de6d5d510c0d5aa6c715095b3bf5d9e9ac1b61
7
+ data.tar.gz: bd6506ec5d6a2e531c32bdc5a13e9173d914d736210c76f01c3947b192541c5d9979059db0ebb9a17392ccc117d9babae84847c9a40f7b10aa0488bbd56222a7
@@ -71,15 +71,27 @@ module SqlcachedClient
71
71
  # Runs the entity query with the provided parameters
72
72
  # @return [Resultset]
73
73
  def where(params, dry_run = false)
74
- request = server.format_request(query_id, query, params, cache)
74
+ request =
75
+ begin
76
+ paramIterator = -> (parameter) {
77
+ server.format_request(query_id, query, parameter, cache)
78
+ }
79
+ if params.is_a?(Array)
80
+ params.map { |p| instance_exec(p, &paramIterator) }
81
+ else
82
+ instance_exec(params, &paramIterator)
83
+ end
84
+ end
75
85
  if dry_run
76
86
  request
77
87
  else
78
88
  data =
79
89
  server.session do |server, session|
80
- server.run_query(session, server.build_request_body([request]))
90
+ server.run_query(session, server.build_request_body(
91
+ request.is_a?(Array) ? request : [request]
92
+ ))
81
93
  end
82
- data = data[0] if data.is_a?(Array)
94
+ data.flatten!(1) if data.is_a?(Array)
83
95
  Resultset.new(self, data)
84
96
  end
85
97
  end
@@ -14,7 +14,7 @@ module SqlcachedClient
14
14
  elsif item.is_a?(entity_class)
15
15
  item
16
16
  else
17
- raise "Cannot handle instances of #{item.class.name}"
17
+ raise "Cannot handle: #{item.inspect}"
18
18
  end
19
19
  end
20
20
  @count = @entities.size
@@ -52,10 +52,6 @@ module SqlcachedClient
52
52
  entities[i]
53
53
  end
54
54
 
55
- def uncache
56
- # TODO
57
- end
58
-
59
55
  def build_associations(max_depth = false)
60
56
  entity_class.server_session do |server, session|
61
57
  self.class.build_associations([self], server, session, max_depth)
@@ -1,3 +1,3 @@
1
1
  module SqlcachedClient
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
@@ -111,7 +111,7 @@ describe SqlcachedClient::Entity do
111
111
  entity_class.server(double(
112
112
  format_request: "this is the request",
113
113
  build_request_body: "request body",
114
- session: [[{ key: "value" }], 2, 3]
114
+ session: [ [{ key: "value" }], [{ key: "value" }] ]
115
115
  ))
116
116
  expect(entity_class.server).to receive(:format_request).with(
117
117
  "foo", "bar", { baz: "biz" }, true)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sqlcached_client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Roberto Maestroni