8
8
9
9
import co .elastic .logstash .api .Event ;
10
10
import co .elastic .logstash .filters .elasticintegration .util .TestCapturingLogger ;
11
- import org .elasticsearch .ingest .IngestDocument ;
11
+ import org .elasticsearch .logstashbridge . ingest .IngestDocumentBridge ;
12
12
import org .junit .jupiter .api .Test ;
13
13
import org .logstash .Timestamp ;
14
14
import org .logstash .plugins .BasicEventFactory ;
@@ -76,7 +76,7 @@ void ingestDocToEventModifiedAtTimestampZonedDateTimeValue() {
76
76
"@version" , "3" ,
77
77
"message" , "hello, world"
78
78
));
79
- final IngestDocument intermediate = idm .toIngestDocument (input );
79
+ final IngestDocumentBridge intermediate = idm .toIngestDocument (input );
80
80
81
81
final ZonedDateTime updatedTimestamp = ZonedDateTime .parse ("2023-03-12T01:17:38.135792468Z" );
82
82
intermediate .setFieldValue (org .logstash .Event .TIMESTAMP , updatedTimestamp );
@@ -93,7 +93,7 @@ void ingestDocToEventModifiedAtTimestampStringValue() {
93
93
"@timestamp" , "2023-01-17T23:19:04.765182352Z" ,
94
94
"@version" , "3" ,
95
95
"message" , "hello, world" ));
96
- final IngestDocument intermediate = idm .toIngestDocument (input );
96
+ final IngestDocumentBridge intermediate = idm .toIngestDocument (input );
97
97
98
98
final ZonedDateTime updatedTimestamp = ZonedDateTime .parse ("2023-03-12T01:17:38.135792468Z" );
99
99
intermediate .setFieldValue (org .logstash .Event .TIMESTAMP , updatedTimestamp .toString ());
@@ -110,7 +110,7 @@ void ingestDocToEventModifiedAtTimestampInvalidStringValue() {
110
110
"@timestamp" , "2023-01-17T23:19:04.765182352Z" ,
111
111
"@version" , "3" ,
112
112
"message" , "hello, world" ));
113
- final IngestDocument intermediate = idm .toIngestDocument (input );
113
+ final IngestDocumentBridge intermediate = idm .toIngestDocument (input );
114
114
115
115
intermediate .setFieldValue (org .logstash .Event .TIMESTAMP , "high noon" );
116
116
@@ -130,7 +130,7 @@ void ingestDocToEventRemovedAtTimestamp() {
130
130
"@timestamp" , "2023-01-17T23:19:04.765182352Z" ,
131
131
"@version" , "3" ,
132
132
"message" , "hello, world" ));
133
- final IngestDocument intermediate = idm .toIngestDocument (input );
133
+ final IngestDocumentBridge intermediate = idm .toIngestDocument (input );
134
134
135
135
intermediate .removeField (org .logstash .Event .TIMESTAMP );
136
136
@@ -148,7 +148,7 @@ void ingestDocToEventRemovedAtTimestampWithEventCreatedAt() {
148
148
"@timestamp" , "2023-01-17T23:19:04.765182352Z" ,
149
149
"@version" , "3" ,
150
150
"message" , "hello, world" ));
151
- final IngestDocument intermediate = idm .toIngestDocument (input );
151
+ final IngestDocumentBridge intermediate = idm .toIngestDocument (input );
152
152
153
153
intermediate .removeField (org .logstash .Event .TIMESTAMP );
154
154
@@ -172,7 +172,7 @@ void ingestDocToEventModifiedMetadataVersion() {
172
172
"@timestamp" , "2023-01-17T23:19:04.765182352Z" ,
173
173
"@version" , "3" ,
174
174
"message" , "hello, world" ));
175
- final IngestDocument intermediate = idm .toIngestDocument (input );
175
+ final IngestDocumentBridge intermediate = idm .toIngestDocument (input );
176
176
177
177
final long updatedMetadataVersion = 17L ;
178
178
intermediate .getMetadata ().setVersion (updatedMetadataVersion );
@@ -192,7 +192,7 @@ void ingestDocToEventAdditionalMetadata() {
192
192
"@timestamp" , "2023-01-17T23:19:04.765182352Z" ,
193
193
"@version" , "3" ,
194
194
"message" , "hello, world" ));
195
- final IngestDocument intermediate = idm .toIngestDocument (input );
195
+ final IngestDocumentBridge intermediate = idm .toIngestDocument (input );
196
196
197
197
intermediate .getMetadata ().setVersion (8191L );
198
198
intermediate .getMetadata ().setVersionType ("external_gte" ); // constrained
@@ -217,7 +217,7 @@ void ingestDocToEventIncludingReservedAtTimestampField() {
217
217
"@version" , "3" ,
218
218
"message" ,
219
219
"hello, world" ));
220
- final IngestDocument intermediate = idm .toIngestDocument (input );
220
+ final IngestDocumentBridge intermediate = idm .toIngestDocument (input );
221
221
222
222
// intentionally String to pass-through Valuifier#convert and make validation easier
223
223
final String atTimestampInSource = "2023-03-12T01:17:38.135792468Z" ;
@@ -237,7 +237,7 @@ void ingestDocToEventIncludingReservedAtVersionField() {
237
237
"@timestamp" , "2023-01-17T23:19:04.765182352Z" ,
238
238
"@version" , "3" ,
239
239
"message" , "hello, world" ));
240
- final IngestDocument intermediate = idm .toIngestDocument (input );
240
+ final IngestDocumentBridge intermediate = idm .toIngestDocument (input );
241
241
242
242
final String atVersionInSource = "bananas" ;
243
243
intermediate .setFieldValue (org .logstash .Event .VERSION , atVersionInSource );
@@ -256,7 +256,7 @@ void ingestDocToEventIncludingReservedAtMetadataFieldWithAcceptableShape() {
256
256
"@timestamp" , "2023-01-17T23:19:04.765182352Z" ,
257
257
"@version" , "3" , "message" ,
258
258
"hello, world" ));
259
- final IngestDocument intermediate = idm .toIngestDocument (input );
259
+ final IngestDocumentBridge intermediate = idm .toIngestDocument (input );
260
260
261
261
final Map <String ,Object > atMetadataInSource = Map .of ("this" , "that" ,"flip" , "flop" );
262
262
intermediate .setFieldValue (org .logstash .Event .METADATA , atMetadataInSource );
@@ -276,7 +276,7 @@ void ingestDocToEventIncludingReservedAtMetadataFieldWithInvalidShape() {
276
276
"@timestamp" , "2023-01-17T23:19:04.765182352Z" ,
277
277
"@version" , "3" ,
278
278
"message" , "hello, world" ));
279
- final IngestDocument intermediate = idm .toIngestDocument (input );
279
+ final IngestDocumentBridge intermediate = idm .toIngestDocument (input );
280
280
281
281
final List <String > atMetadataInSource = List .of ("wrong" , "incorrect" );
282
282
intermediate .setFieldValue (org .logstash .Event .METADATA , atMetadataInSource );
@@ -295,7 +295,7 @@ void ingestDocToEventIncludingReservedAtMetadataFieldWithInvalidShape() {
295
295
@ Test
296
296
void ingestDocToEventIncludingReservedTagsFieldWithInvalidShape () {
297
297
final Event input = BasicEventFactory .INSTANCE .newEvent (Map .of ("message" , "hello, world" ));
298
- final IngestDocument intermediate = idm .toIngestDocument (input );
298
+ final IngestDocumentBridge intermediate = idm .toIngestDocument (input );
299
299
300
300
final Map <String ,Object > atTagsInSource = Map .of ("this" , "that" );
301
301
intermediate .setFieldValue (org .logstash .Event .TAGS , atTagsInSource );
@@ -311,7 +311,7 @@ void ingestDocToEventIncludingReservedTagsFieldWithInvalidShape() {
311
311
@ Test
312
312
void ingestDocToEventIncludingReservedTagsFieldWithInvalidCoercibleShape () {
313
313
final Event input = BasicEventFactory .INSTANCE .newEvent (Map .of ("message" , "hello, world" ));
314
- final IngestDocument intermediate = idm .toIngestDocument (input );
314
+ final IngestDocumentBridge intermediate = idm .toIngestDocument (input );
315
315
316
316
final Set <String > atTagsInSource = Set .of ("this" , "that" );
317
317
intermediate .setFieldValue (org .logstash .Event .TAGS , atTagsInSource );
@@ -328,7 +328,7 @@ void ingestDocToEventIncludingReservedTagsFieldWithInvalidCoercibleShape() {
328
328
@ Test
329
329
void ingestDocToEventIncludingReservedTagsFieldWithStringShape () {
330
330
final Event input = BasicEventFactory .INSTANCE .newEvent (Map .of ("message" , "hello, world" ));
331
- final IngestDocument intermediate = idm .toIngestDocument (input );
331
+ final IngestDocumentBridge intermediate = idm .toIngestDocument (input );
332
332
333
333
final String atTagsInSource = "this" ;
334
334
intermediate .setFieldValue (org .logstash .Event .TAGS , atTagsInSource );
@@ -344,7 +344,7 @@ void ingestDocToEventIncludingReservedTagsFieldWithStringShape() {
344
344
@ Test
345
345
void ingestDocToEventIncludingReservedTagsFieldWithListOfStringShape () {
346
346
final Event input = BasicEventFactory .INSTANCE .newEvent (Map .of ("message" , "hello, world" ));
347
- final IngestDocument intermediate = idm .toIngestDocument (input );
347
+ final IngestDocumentBridge intermediate = idm .toIngestDocument (input );
348
348
349
349
final List <String > atTagsInSource = List .of ("this" , "that" );
350
350
intermediate .setFieldValue (org .logstash .Event .TAGS , atTagsInSource );
@@ -367,7 +367,7 @@ void ingestDocToEventIncludingReservedTagsFieldWithListOfStringShape() {
367
367
368
368
@ Test void ingestDocToEventIncludingArrayType () {
369
369
final Event input = BasicEventFactory .INSTANCE .newEvent (Map .of ("message" , "hello, world" ));
370
- final IngestDocument intermediate = idm .toIngestDocument (input );
370
+ final IngestDocumentBridge intermediate = idm .toIngestDocument (input );
371
371
372
372
final String [] arrayValueInSource = new String []{"this" , "that" };
373
373
intermediate .setFieldValue ("deeply.nested" , arrayValueInSource );
@@ -381,7 +381,7 @@ void ingestDocToEventIncludingReservedTagsFieldWithListOfStringShape() {
381
381
@ Test
382
382
void eventToIngestDocFieldWithNestedZonedDateTimeValue () {
383
383
final Event input = BasicEventFactory .INSTANCE .newEvent (Map .of ("message" , "hello, world" ));
384
- final IngestDocument intermediate = idm .toIngestDocument (input );
384
+ final IngestDocumentBridge intermediate = idm .toIngestDocument (input );
385
385
386
386
final String iso8601value = "2023-05-03T03:17:59.182736455Z" ;
387
387
final ZonedDateTime zonedDateTime = ZonedDateTime .parse (iso8601value );
@@ -407,7 +407,7 @@ void eventToIngestDoc() {
407
407
"flip" , "flop"
408
408
)));
409
409
410
- final IngestDocument ingestDocument = idm .toIngestDocument (input );
410
+ final IngestDocumentBridge ingestDocument = idm .toIngestDocument (input );
411
411
412
412
final String ingestTimestamp = getIngestDocumentTimestamp (ingestDocument );
413
413
assertThat (ingestTimestamp , is (notNullValue ()));
@@ -428,7 +428,7 @@ void eventToIngestDocMissingRequiredVersion() {
428
428
)));
429
429
input .remove (org .logstash .Event .VERSION );
430
430
431
- final IngestDocument ingestDocument = idm .toIngestDocument (input );
431
+ final IngestDocumentBridge ingestDocument = idm .toIngestDocument (input );
432
432
433
433
// sensible default
434
434
assertThat (ingestDocument .getMetadata ().getVersion (), is (equalTo (1L )));
@@ -446,7 +446,7 @@ void eventToIngestDocMissingRequiredTimestamp() {
446
446
)));
447
447
input .remove (org .logstash .Event .TIMESTAMP );
448
448
449
- final IngestDocument ingestDocument = idm .toIngestDocument (input );
449
+ final IngestDocumentBridge ingestDocument = idm .toIngestDocument (input );
450
450
451
451
final String ingestTimestamp = getIngestDocumentTimestamp (ingestDocument );
452
452
assertThat (ingestTimestamp , where (Instant ::parse , is (recentCurrentTimestamp ())));
@@ -470,11 +470,11 @@ Instant getEventTimestamp(final Event event) {
470
470
return ((org .logstash .Timestamp ) event .getField (org .logstash .Event .TIMESTAMP )).toInstant ();
471
471
}
472
472
473
- String getIngestDocumentTimestamp (final IngestDocument ingestDocument ) {
474
- return ingestDocument .getFieldValue ( IngestDocument . INGEST_KEY + "." + INGEST_METADATA_TIMESTAMP_FIELD , String . class );
473
+ String getIngestDocumentTimestamp (final IngestDocumentBridge ingestDocument ) {
474
+ return ( String ) ingestDocument .getIngestMetadata (). get ( INGEST_METADATA_TIMESTAMP_FIELD );
475
475
}
476
476
477
- void validateIngestDocument (final IngestDocument ingestDocument , Consumer <IngestDocument > ingestDocumentConsumer ) {
477
+ void validateIngestDocument (final IngestDocumentBridge ingestDocument , Consumer <IngestDocumentBridge > ingestDocumentConsumer ) {
478
478
ingestDocumentConsumer .accept (ingestDocument );
479
479
}
480
480
0 commit comments