class DBService implements RolesProvider {

    DomainRoleMembership getPendingDomainRoleMembers(final String principal) {

        DomainRoleMembership domainRoleMembership = new DomainRoleMembership();
        List<DomainRoleMembers> domainRoleMembersList = new ArrayList<>();
        DomainRoleMembers domainRoleMembers;

        try (ObjectStoreConnection con = store.getConnection(true, false)) {
            Map<String, List<DomainRoleMember>> domainRoleMembersMap = con.getPendingDomainRoleMembers(principal);
            if (domainRoleMembersMap != null) {
                for (String domain : domainRoleMembersMap.keySet()) {
                    domainRoleMembers = new DomainRoleMembers();
                    domainRoleMembers.setDomainName(domain);
                    domainRoleMembers.setMembers(domainRoleMembersMap.get(domain));
                    domainRoleMembersList.add(domainRoleMembers);
                }
                domainRoleMembership.setDomainRoleMembersList(domainRoleMembersList);
            }
        }
        return domainRoleMembership;
    }

    public  DBService(ObjectStore store, AuditLogger auditLogger, ZMSConfig zmsConfig, AuditReferenceValidator auditReferenceValidator);

}