According to the data-pipe architectural model, it's stated from the functional requirements to build a successful API, that the data transforming components could be Preprocessing filters, which entails components that are bound to the receiving procedural interface (e.g., data decryptors, and data decoders), and Postprocessing filters, which entails components that are bound to the transmitting procedural interface (e.g., data encryptors, and data encoders).
Concurrency, through the process/thread view of the design analysis, should be considered, and it will become handy to use Jector.
The HID-API should provide the following to achieve this:
DataProcessingFilter interface: encapsulating filter properties (e.g., name of executing thread), and other meta-data.
DataFilterListener interface: provides a standard strategy pattern for the data filter components.
Incorporate the TaskExecutorManager from Jector-API in the HID-API; to execute filters as tasks on pre-defined threads if existing or create a new thread pool to execute data filters.
PreprocessingFilter interface (optional if a specific usage is attained).
PostprocessingFilter interface (optional if a specific usage is attained).
Note: Data filters could be also designated as PretransmissionFilters and PostreceiveFilters.
According to the
data-pipe architectural model
, it's stated from the functional requirements to build a successful API, that the data transforming components could be Preprocessing filters, which entails components that are bound to the receiving procedural interface (e.g., data decryptors, and data decoders), and Postprocessing filters, which entails components that are bound to the transmitting procedural interface (e.g., data encryptors, and data encoders).Concurrency, through the process/thread view of the design analysis, should be considered, and it will become handy to use Jector.
The HID-API should provide the following to achieve this:
Jector-API
in the HID-API; to execute filters as tasks on pre-defined threads if existing or create a new thread pool to execute data filters.Note: Data filters could be also designated as
PretransmissionFilter
s andPostreceiveFilter
s.