class TomcatGroupManager extends BaseTomcatManager implements GroupManager,
                                                                     ContextualManager {

    @Override
    public List<Group> getAll() throws SecurityManagementException {
        MemoryUserDatabase userDatabase = getDatabase();
        try {
            Iterator<org.apache.catalina.Role> groupIterator = userDatabase.getRoles();
            List<Group> groups = new ArrayList<>();
            if (groupIterator != null) {
                while (groupIterator.hasNext()) {
                    org.apache.catalina.Role group = groupIterator.next();
                    Group groupname = SecurityManagementUtils.createGroup(group.getRolename());
                    groups.add(groupname);
                }
            }
            return groups;
        } finally {
            closeDatabase(userDatabase);
        }
    }

    public  TomcatGroupManager();
    public  TomcatGroupManager(final Map<String, String> gitPrefs);
    public  TomcatGroupManager(final ConfigProperties gitPrefs);

}