amber_odm 1.0.1 → 1.0.3

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
  SHA256:
3
- metadata.gz: 81c02da4d649aa4475fb8c412d1c208343a0acca6a4bc36e5441b75531b4043c
4
- data.tar.gz: efdf4716b9eed68706e0fae926b173fe9ae3dabeed1d0b89265a3bb2e40c7b1c
3
+ metadata.gz: 9322e4a4d9baef4c7187fb25eb69406fbbb405b55cdb8be6c7d4bc504d250909
4
+ data.tar.gz: 623cd8a6cd3ca9197ae7b95e6d661fd8c005707e1ad2f6b7741fa35a2300c4a5
5
5
  SHA512:
6
- metadata.gz: f286e84d6745918f9a57b3ca6024f84d7a78575d722b2ffc227130db74f066b1964cd07c61a1ad3b2a986eb7d8bf9b215d2834d752d9f908fead6cd204a9e14e
7
- data.tar.gz: f8c658abd1ff7204eea472803cbe5a2b84ba5c4b9ea5a444317f7403a9f5f651c5f4624a7d2c86854773d4d4710220efb0bd9d76c2a994c5729826480c162509
6
+ metadata.gz: 1f453c2d8168f7fdf5c670fcbd99bbd2d2563fd1fc26dd2663d729091c765d4204b179f413d609ee66f3dcd849156a4e20a3cbdad4afdcf6d9ea2e386f728c2d
7
+ data.tar.gz: 518b065ed69bb5cac31c06f65380c6dabddcfba3d919b6d1a6acd778035dc73efe940f3cd9ea7626c18bf137b0e784209929349d21f6b66ab6d54ce36ef460b2
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- amber_odm (1.0.0)
4
+ amber_odm (1.0.1)
5
5
  elasticsearch
6
6
 
7
7
  GEM
@@ -1,3 +1,3 @@
1
1
  module AmberODM
2
- VERSION = '1.0.1'
2
+ VERSION = '1.0.3'
3
3
  end
data/lib/amber_odm.rb CHANGED
@@ -98,7 +98,11 @@ module AmberODM
98
98
  @sort = document&.dig('sort').dup
99
99
  @_seq_no = document&.dig('_seq_no').dup
100
100
  @_primary_term = document&.dig('_primary_term').dup
101
- self.class.fields.each do |field|
101
+ fields = self.class.fields
102
+ fields.each do |field|
103
+ if ['_id', '_score', 'sort', '_seq_no', '_primary_term'].include?(field)
104
+ raise Exceptions::ReservedField.new("Field #{field} is reserved, remove it from the fields list")
105
+ end
102
106
  document_value = document&.dig('_source')&.dig(field).dup
103
107
  send("#{field}=", document_value)
104
108
  end
@@ -187,7 +191,7 @@ module AmberODM
187
191
  data: { doc: aggregation_hash }
188
192
  }
189
193
  }
190
- if use_seq_verification
194
+ if self.class.use_seq_verification
191
195
  update_hash[:update][:if_seq_no] = _seq_no
192
196
  update_hash[:update][:if_primary_term] = _primary_term
193
197
  end
@@ -198,6 +202,7 @@ module AmberODM
198
202
 
199
203
  module Exceptions
200
204
  class MissingDatabaseSettings < StandardError; end
205
+ class ReservedField < StandardError; end
201
206
  class UnknownWriteFieldException < StandardError; end
202
207
  class IllegalArgumentException < StandardError
203
208
  def initialize(msg = 'query malformed, empty clause')
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: amber_odm
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - mikael
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-05-04 00:00:00.000000000 Z
11
+ date: 2023-05-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler