@@ -294,8 +294,12 @@ public void shouldHandlePartiallyUnmatchedLiteralsAndEntitiesInElseNestedSource(
294
294
i .endRecord ();
295
295
},
296
296
(o , f ) -> {
297
+ // Pass-through coordinates with morph whether to start/end an entity
297
298
final boolean coordinatesWithEntity = false ;
299
+
300
+ // Pass-through and morph entities are separated (one ends when the other starts)
298
301
final boolean separatesFromEntity = false ;
302
+
299
303
o .get ().startRecord ("1" );
300
304
o .get ().literal ("Shikotan" , "Aekap" );
301
305
o .get ().startEntity ("Germany" );
@@ -308,65 +312,65 @@ public void shouldHandlePartiallyUnmatchedLiteralsAndEntitiesInElseNestedSource(
308
312
o .get ().startEntity ("USA2" );
309
313
o .get ().literal ("Hawaii" , "Aloha" );
310
314
if (!coordinatesWithEntity ) {
311
- o .get ().endEntity ();
312
- o .get ().startEntity ("USA2" );
315
+ o .get ().endEntity ();
316
+ o .get ().startEntity ("USA2" );
313
317
}
314
318
o .get ().literal ("Langeoog" , "Moin" );
315
319
o .get ().literal ("Baltrum" , "Moin Moin" );
316
320
o .get ().endEntity ();
317
321
o .get ().startEntity ("USA3" );
318
322
o .get ().literal ("Langeoog" , "Moin" );
319
323
if (!coordinatesWithEntity ) {
320
- o .get ().startEntity ("USA3" );
324
+ o .get ().startEntity ("USA3" );
321
325
}
322
326
else if (separatesFromEntity ) {
323
- o .get ().endEntity ();
324
- o .get ().startEntity ("USA3" );
327
+ o .get ().endEntity ();
328
+ o .get ().startEntity ("USA3" );
325
329
}
326
330
o .get ().literal ("Hawaii" , "Aloha" );
327
331
if (!coordinatesWithEntity ) {
328
- o .get ().endEntity ();
332
+ o .get ().endEntity ();
329
333
}
330
334
else if (separatesFromEntity ) {
331
- o .get ().endEntity ();
332
- o .get ().startEntity ("USA3" );
335
+ o .get ().endEntity ();
336
+ o .get ().startEntity ("USA3" );
333
337
}
334
338
o .get ().literal ("Baltrum" , "Moin Moin" );
335
339
o .get ().endEntity ();
336
340
o .get ().startEntity ("USA4" );
337
341
o .get ().literal ("Langeoog" , "Moin" );
338
342
o .get ().literal ("Baltrum" , "Moin Moin" );
339
343
if (!coordinatesWithEntity ) {
340
- o .get ().startEntity ("USA4" );
344
+ o .get ().startEntity ("USA4" );
341
345
}
342
346
else if (separatesFromEntity ) {
343
- o .get ().endEntity ();
344
- o .get ().startEntity ("USA4" );
347
+ o .get ().endEntity ();
348
+ o .get ().startEntity ("USA4" );
345
349
}
346
350
o .get ().literal ("Hawaii" , "Aloha" );
347
351
if (!coordinatesWithEntity ) {
348
- f .apply (2 ).endEntity ();
352
+ f .apply (2 ).endEntity ();
349
353
}
350
354
else {
351
- o .get ().endEntity ();
355
+ o .get ().endEntity ();
352
356
}
353
357
o .get ().endRecord ();
354
358
}
355
359
);
356
360
}
357
361
358
362
@ Test
359
- public void shouldNotHandleDataByElseNestedSourceIfDataBelonginToEntityIsRuledByMorph () {
363
+ public void shouldNotHandleDataByElseNestedSourceIfDataBelongingToEntityIsRuledByMorph () {
360
364
assertMorph (receiver ,
361
365
"<rules>" +
362
366
" <entity name='USA1'>" +
363
367
" <data source='USA1.Sylt' name='Hawaii' />" +
364
368
" </entity>" +
365
- " <entity name='USA2' sameEntity='true' reset='true' flushWith='USA2' flushIncomplete='true '>" +
369
+ " <entity name='USA2' sameEntity='true' flushWith='USA2'>" +
366
370
" <data source='USA2.Sylt' name='Hawaii' />" +
367
371
" <data source='USA2.Langeoog' name='Langeoog' />" +
368
372
" </entity>" +
369
- " <entity name='USA3' sameEntity='true' reset='true' flushWith='USA3' flushIncomplete='true '>" +
373
+ " <entity name='USA3' sameEntity='true' flushWith='USA3'>" +
370
374
" <data source='USA3.Sylt' name='Hawaii' />" +
371
375
" </entity>" +
372
376
" <data source='_elseNested' />" +
@@ -395,7 +399,7 @@ public void shouldNotHandleDataByElseNestedSourceIfDataBelonginToEntityIsRuledBy
395
399
i .endEntity ();
396
400
i .endRecord ();
397
401
},
398
- ( o , f ) -> {
402
+ o -> {
399
403
o .get ().startRecord ("1" );
400
404
o .get ().literal ("Shikotan" , "Aekap" );
401
405
o .get ().startEntity ("Germany" );
0 commit comments