cassie 1.0.0.beta.27 → 1.0.0.beta.28

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: cc7caa19b667525c10964c15b1c8c0560280bbb7
4
- data.tar.gz: 4c77f29fbdc4fff2693125498ebc00a9497218e7
3
+ metadata.gz: 028bc4944f35caa64a4e3b8ae222869bf73dbd93
4
+ data.tar.gz: 34fffde7030b9f074f03077aba07ca2f2c07a572
5
5
  SHA512:
6
- metadata.gz: 8d8b604b1c52dea54e403534c6d4244464ed22eee9791a432da16a19534c1929358c0f1b5de03fc86c5c3fc7f858f01f45f9a1370f52f4f8c7d06891e5069b79
7
- data.tar.gz: 1f09cc8256cdd66eb76b827216008287b8cd9a524ab1349fe3a29b832aeeb1148f3fb3ba5da80ff0ded2abd1cea0ca3798569c8622a61e119dace401d17e97b6
6
+ metadata.gz: 2b520feeb012d64ac147b3a6edd5312775616970f6c0ba94ecee6f5b4bb7ce0e47ca8be4ee7efa21741a2542f9fc18b0eb5e1f9c909638600d6288e9b3ad93f7
7
+ data.tar.gz: 38b117a8cfa57de8173fa80d826a797439a0dc90a2571e2c7d22c1e877d5213e22018631acfa78d0d5927da2bcdf7537222d79b39204fb274d0e60661b571bfc
@@ -775,23 +775,23 @@ set_2 = query.fetch([7, 8, 9, 10, 11, 12])
775
775
 
776
776
  #### Custom queries
777
777
 
778
- For certain queries, it may be more effective to write your own CQL. The recommended way is to override `cql` and `params`.
778
+ For certain queries, it may be most effective to write CQL directly. The recommended way is to override `cql` and `params`.
779
779
 
780
780
  ```ruby
781
781
  class MySpecialQuery < Cassandra::Modification
782
- map_from :resource
782
+ attr_accessor :resource
783
783
 
784
784
  def cql
785
785
  "UPDATE my_table SET udt.field = ? WHERE id = ?;"
786
786
  end
787
787
 
788
788
  def params
789
- [field, id]
789
+ [resource.field, resource.id]
790
790
  end
791
791
  end
792
792
  ```
793
793
 
794
- This will preserve using other features such as consistency, idempotency, prepared statements, etc.
794
+ This preserves using other features and configuration such as consistency, idempotency, prepared statements, etc.
795
795
 
796
796
  #### Non-positional (unbound) statements
797
797
 
@@ -7,18 +7,23 @@ module Cassie::Statements::Statement
7
7
 
8
8
  attr_reader :source,
9
9
  :identifier,
10
- :value,
10
+ :value_method,
11
11
  :enabled,
12
12
  :term
13
13
 
14
14
  def initialize(source, identifier, value_method, opts={})
15
15
  @source = source
16
16
  @identifier = identifier
17
- @value = source.send(value_method)
17
+ @value_method = value_method
18
18
  @enabled = opts.has_key?(:if) ? source_eval(opts[:if]) : true
19
19
  @term = opts.has_key?(:term) ? source_eval(opts[:term]) : "?"
20
20
  end
21
21
 
22
+ def value
23
+ return @value if defined?(@value)
24
+ @value = source.send(value_method)
25
+ end
26
+
22
27
  def enabled?
23
28
  !!enabled
24
29
  end
@@ -22,7 +22,7 @@ module Cassie::Statements::Statement
22
22
  attr_reader :source,
23
23
  :identifier,
24
24
  :operation,
25
- :value,
25
+ :value_method,
26
26
  :enabled,
27
27
  :term
28
28
 
@@ -31,7 +31,7 @@ module Cassie::Statements::Statement
31
31
  @source = source
32
32
  @identifier = identifier
33
33
  @operation = OPERATIONS[op_type.to_sym]
34
- @value = source.send(value_method)
34
+ @value_method = value_method
35
35
  @enabled = opts.has_key?(:if) ? source_eval(opts[:if]) : true
36
36
  @term = opts.has_key?(:term) ? source_eval(opts[:term]) : "?"
37
37
  end
@@ -44,6 +44,11 @@ module Cassie::Statements::Statement
44
44
  enabled? && positional?
45
45
  end
46
46
 
47
+ def value
48
+ return(@value) if defined?(@value)
49
+ @value = source.send(value_method)
50
+ end
51
+
47
52
  def argument
48
53
  value if argument?
49
54
  end
@@ -1,3 +1,3 @@
1
1
  module Cassie
2
- VERSION = "1.0.0.beta.27"
2
+ VERSION = "1.0.0.beta.28"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cassie
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0.beta.27
4
+ version: 1.0.0.beta.28
5
5
  platform: ruby
6
6
  authors:
7
7
  - Evan Prothro
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-11-09 00:00:00.000000000 Z
11
+ date: 2016-11-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cassandra-driver