public Set registerClientInterestList(Object inputClientID,List keys,boolean updatesAsInvalidates){
  Long clientID=getClientIDForMaps(inputClientID);
  Set keysRegistered=new HashSet(keys);
synchronized (interestListLock) {
    Map<Object,Set> koi=updatesAsInvalidates ? getKeysOfInterestInv() : getKeysOfInterest();
    CopyOnWriteHashSet interestList=(CopyOnWriteHashSet)koi.get(clientID);
    if (interestList == null) {
      interestList=new CopyOnWriteHashSet();
      koi.put(clientID,interestList);
    }
 else {
      keysRegistered.removeAll(interestList.getSnapshot());
    }
    interestList.addAll(keys);
    if (this.region != null && this.isLocalProfile) {
      sendProfileOperation(clientID,operationType.REGISTER_KEYS,keys,updatesAsInvalidates);
    }
  }
  return keysRegistered;
}

public Set registerClientInterestList ( Object inputClientID , List keys , boolean updatesAsInvalidates ) { Long clientID = getClientIDForMaps ( inputClientID ) ; Set keysRegistered = new HashSet ( keys ) ; synchronized ( interestListLock ) { Map < Object , Set > koi = updatesAsInvalidates ? getKeysOfInterestInv ( ) : getKeysOfInterest ( ) ; CopyOnWriteHashSet interestList = ( CopyOnWriteHashSet ) koi . get ( clientID ) ; if ( interestList == null ) { interestList = new CopyOnWriteHashSet ( ) ; koi . put ( clientID , interestList ) ; } else { keysRegistered . removeAll ( interestList . getSnapshot ( ) ) ; } interestList . addAll ( keys ) ; if ( this . region != null && this . isLocalProfile ) { sendProfileOperation ( clientID , operationType . REGISTER_KEYS , keys , updatesAsInvalidates ) ; } } return keysRegistered ; }
registers interest in a set of keys for a client
