Fix [SonarQube] Useless parentheses around expressions should be removed
to prevent any misunderstanding (Remove those useless parentheses)
Fix [SonarQube] Loose Coupling (Avoid using implementation types like
'HashMap'; use the interface instead)
Fix [SonarQube] String literals should not be duplicated (Define a
constant instead of duplicating a literal N times)
Fix [SonarQube] Field names should comply with a naming convention
(Rename this field name to match the regular expression
'^[a-z][a-zA-Z0-9]*$')
Add javadoc
Add javadoc
Move getters to end of class
Extract strings to static final fields
Extract strings to static final fields
Update javadoc punctuation
Fix [SonarQube] Field names should comply with a naming convention
(Rename this field name to match the regular expression
'^[a-z][a-zA-Z0-9]*$')
Format per coding standard
Fix [SonarQube] Public methods should throw at most one checked
exception (Refactor this method to throw at most one checked exception)

Moved getter/setters to end of class
Extract string to static final field
Fix [SonarQube] String literals should not be duplicated (Define a
constant instead of duplicating a literal N times)
Format per coding standard