class KiePMMLRegressionTableRegressionFactory {

    static MethodDeclaration getNumericPredictorWithoutExponentTemplate(final NumericPredictor numericPredictor, final ClassOrInterfaceDeclaration evaluateTemplateClass) {
        final MethodDeclaration toReturn =
                evaluateTemplateClass.getMethodsByName("evaluateNumericWithoutExponent").get(0);
        final BlockStmt body =
                toReturn.getBody().orElseThrow(() -> new KiePMMLInternalException(String.format(MISSING_BODY_TEMPLATE
                        , toReturn.getName())));
        VariableDeclarator variableDeclarator = getVariableDeclarator(body, COEFFICIENT)
                .orElseThrow(() -> new KiePMMLInternalException(String.format(MISSING_VARIABLE_IN_BODY, COEFFICIENT,
                                                                              body)));
        variableDeclarator.setInitializer(String.valueOf(numericPredictor.getCoefficient().doubleValue()));
        return toReturn;
    }

    private  KiePMMLRegressionTableRegressionFactory();

}