[
https://issues.apache.org/jira/browse/MINIFICPP-1953?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Marton Szasz updated MINIFICPP-1953:
------------------------------------
Description:
Processor currently has a lot of static metadata, but uses macros to make
static data available through overridden virtual functions. Instead, we should
split the Processor class into an interface (called Processor) and an abstract
CRTP implementation (called AbstractProcessor, BasicProcessor, ProcessorBase,
or something similar), which overrides the virtual functions with the static
data available.
rationale:
- [DRY|https://en.wikipedia.org/wiki/Don%27t_repeat_yourself]
- [macros
bad|https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#Res-macros]
was:Processor currently has a lot of static metadata, but uses macros to make
static data available through overridden virtual functions. Instead, we should
split the Processor class into an interface (called Processor) and an abstract
CRTP implementation (called AbstractProcessor, BasicProcessor, ProcessorBase,
or something similar), which overrides the virtual functions with the static
data available.
> Refactor Processor class to centrally convert static metadata to dynamic,
> instead of using macros
> -------------------------------------------------------------------------------------------------
>
> Key: MINIFICPP-1953
> URL: https://issues.apache.org/jira/browse/MINIFICPP-1953
> Project: Apache NiFi MiNiFi C++
> Issue Type: Improvement
> Reporter: Marton Szasz
> Priority: Major
>
> Processor currently has a lot of static metadata, but uses macros to make
> static data available through overridden virtual functions. Instead, we
> should split the Processor class into an interface (called Processor) and an
> abstract CRTP implementation (called AbstractProcessor, BasicProcessor,
> ProcessorBase, or something similar), which overrides the virtual functions
> with the static data available.
> rationale:
> - [DRY|https://en.wikipedia.org/wiki/Don%27t_repeat_yourself]
> - [macros
> bad|https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#Res-macros]
--
This message was sent by Atlassian Jira
(v8.20.10#820010)