@@ -0,0 +1,954 @@
+package com.mlefevre.maths;%0A%0Aimport com.sgcib.fip.common.maths.converter.FormulaConverter;%0Aimport com.sgcib.fip.common.maths.domain.Formula;%0Aimport com.sgcib.fip.common.maths.parser.FormulaParser;%0A%0Apublic class FormulaBuilder %7B%0A%0A    private FormulaConverter converter;%0A    private FormulaParser parser;%0A%0A%0A    private FormulaBuilder() %7B%0A%0A    %7D%0A%0A%0A    public static FormulaBuilder get() %7B%0A        return new FormulaBuilder();%0A    %7D%0A%0A%0A    public FormulaBuilder addConverter(FormulaConverter converter) %7B%0A        this.converter = converter;%0A        return this;%0A    %7D%0A%0A    public FormulaBuilder addParser(FormulaParser parser) %7B%0A        this.parser = parser;%0A        return this;%0A    %7D%0A%0A    public String build(String input) throws Exception %7B%0A        if(null == converter %7C%7C null == parser) %7B%0A            throw new Exception(%22Wrong configuration%22);%0A        %7D%0A        Formula formula = parser.parse(input);%0A        return converter.convert(formula);%0A    %7D%0A%0A%7D%0A

Create FormulaBuilder.java