amber_odm 1.0.1 → 1.0.3

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
  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