class DBService implements RolesProvider {

    public ResourceAccessList getResourceAccessList(String principal, String action) {
        
        // this commands takes a quite a bit of time due to joining tables
        // and needs to be optimized. For now we'll configure it with
        // default timeout of 30 minutes to avoid any issues
        
        try (ObjectStoreConnection con = store.getConnection(true, false)) {
            con.setOperationTimeout(1800);
            return con.listResourceAccess(principal, action, zmsConfig.getUserDomain());
        }
    }

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

}