sqlcached_client 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
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