Currently, validation process of some tool is described completely separately of its class (PlatformIO and CubeMX, Java can be treated as a part of CubeMX actually):
We can define some IVerifiable interface that a tool should implement by having a tool.validator attribute which in turn absorbs all related logic. In such configuration, adding a new tool will automatically register it in the virtual "pool" of verifiable instruments.
Currently, validation process of some tool is described completely separately of its class (PlatformIO and CubeMX, Java can be treated as a part of CubeMX actually):
We can define some
IVerifiable
interface that a tool should implement by having atool.validator
attribute which in turn absorbs all related logic. In such configuration, adding a new tool will automatically register it in the virtual "pool" of verifiable instruments.