added javadoc api documentation