private boolean operate(C context) throws HyscaleException {
        if (context == null || context.isFailed()) {
            logger.error("Cannot execute the component {}", getClass());
            if (context != null && context.getHyscaleException() != null) {
                throw context.getHyscaleException();
            }
            return false;
        }
        doExecute(context);
        return true;
    }
Any class can extend this class to process.
Hooks can be implemented using @see {@link InvokerHook} and register
with component @see {@link #addHook(InvokerHook)}

@param <C> <p> Implementation Notes </p>
@see #doExecute(ComponentInvokerContext) to execute any process . This method
will be invoked after all {@link InvokerHook#preHook(Object)}.
After successful execution all {@link InvokerHook#postHook(Object)}
are executed. In case of error the execution is terminated, then
{@link #onError(ComponentInvokerContext, HyscaleException)} is invoked.
commons/src/main/java/io/hyscale/commons/component/ComponentInvoker.java