Package io.vertx.tp.modular.reference
Class AbstractRay<T>
java.lang.Object
io.vertx.tp.modular.reference.AbstractRay<T>
- All Implemented Interfaces:
AoRay<T>
## Abstract Reference Processor
### 1. Intro
Template pattern to provide all the calculation metadata in current class, all sub-classes could share the data structure that current class defined.
### 2. Components
Here are two hash maps that stored `field = xx`, the `xx` means components of following two categories:
- RaySource: The field calculator component that contains code logical ( Action ).
- DataQRule: The field definition rules POJO data object that contains metadata definition ( Rule ).
- Author:
- Lang
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected ConcurrentMap<String,io.vertx.tp.modular.reference.RaySource> The hashmap reference of `field =RaySource`.protected ConcurrentMap<String,io.aeon.experiment.reference.RResult> The hashmap reference of `field =HRule`.protected DataTplThe reference toDataTplthat be related to model definition. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionThis method will modify the inputHRecordelement(s).io.vertx.core.Future<T>doRayAsync(T input) abstract TThis method must be inherit by all sub-classes, it provide reference data mounting.abstract io.vertx.core.Future<T>Bind the component to data model templateDataTpl.protected io.vertx.core.Future<ConcurrentMap<String,io.vertx.core.json.JsonArray>> thenCombine(List<io.vertx.core.Future<ConcurrentMap<String, io.vertx.core.json.JsonArray>>> futures)
-
Field Details
-
tpl
The reference toDataTplthat be related to model definition. -
input
The hashmap reference of `field =RaySource`. -
output
The hashmap reference of `field =HRule`.
-
-
Constructor Details
-
AbstractRay
public AbstractRay()
-
-
Method Details
-
on
-
doRay
This method will modify the inputHRecordelement(s). Here contains `shorten` code logical when the hash map is EMPTY, skip reference calculator. -
doRayAsync
- Specified by:
doRayAsyncin interfaceAoRay<T>
-
exec
This method must be inherit by all sub-classes, it provide reference data mounting.- Parameters:
input- Input element ofHRecordfor single/multi- Returns:
- Return the modified data record(s).
-
execAsync
-
thenCombine
protected io.vertx.core.Future<ConcurrentMap<String,io.vertx.core.json.JsonArray>> thenCombine(List<io.vertx.core.Future<ConcurrentMap<String, io.vertx.core.json.JsonArray>>> futures)
-