Fix [SonarQube] Use Index Of Char (String.indexOf(char) is faster than
String.indexOf(String))
Fix [SonarQube] Synchronized class StringBuffer should not be used
(Replace the synchronized class "StringBuffer" by an unsynchronized one
such as "StringBuilder")
Fix [SonarQube] Use Index Of Char (String.indexOf(char) is faster than
String.indexOf(String))
Fix [SonarQube] Loose Coupling (Avoid using implementation types like
'HashSet'; use the interface instead)
Fix [SonarQube] String literals should not be duplicated (Define a
constant instead of duplicating a literal N times)

Extract strings to static final fields
Remove unused import
Fix [SonarQube] Throws declarations should not be redundant (Remove the
declaration of thrown exception 'com.sleepycat.je.DatabaseException'
which is a runtime exception)
Update javadoc
Update javadoc puntuation
Remove unused import
Add javadoc
Move getters to end of class
Remove '+' concatenation from StringBuilder#append