refactoring + javadoc
Signed-off-by:jonathanlermitage <jonathan.lermitage@gmail.com>