logging
Add defaultValue support and javadocs