I don't understand why there is a factory method "parseFrom" and at the same time a hidden constructor. Move the code of the parse method into the constructor and remove the parse method. Your parse method _is_ a constructor.