class DataStore implements DataCacheProvider, RolesProvider {

    void processStandardMembership(Set<MemberRole> memberRoles, String rolePrefix,
            String[] requestedRoleList, Set<String> accessibleRoles, boolean keepFullName) {
        
        /* if we have no member roles, then we haven't added anything
         * to our return result list */

        if (memberRoles == null) {
            return;
        }
        
        long currentTime = System.currentTimeMillis();
        for (MemberRole memberRole : memberRoles) {
            
            // before adding to the list make sure the user
            // hasn't expired

            long expiration = memberRole.getExpiration();
            if (expiration != 0 && expiration < currentTime) {
                continue;
            }
            addRoleToList(memberRole.getRole(), rolePrefix, requestedRoleList,
                    accessibleRoles, keepFullName);
        }
    }

    public  DataStore(ChangeLogStore clogStore, CloudStore cloudStore);

}