private List<String> updateStatus(List<String> unsentRegIds,Map<String,Result> allResults,MulticastResult multicastResult){
  List<Result> results=multicastResult.getResults();
  if (results.size() != unsentRegIds.size()) {
    throw new RuntimeException("Internal error: sizes do not match. " + "currentResults: " + results + "; unsentRegIds: "+ unsentRegIds);
  }
  List<String> newUnsentRegIds=new ArrayList<String>();
  for (int i=0; i < unsentRegIds.size(); i++) {
    String regId=unsentRegIds.get(i);
    Result result=results.get(i);
    allResults.put(regId,result);
    String error=result.getErrorCodeName();
    if (error != null && (error.equals(Constants.ERROR_UNAVAILABLE) || error.equals(Constants.ERROR_INTERNAL_SERVER_ERROR))) {
      newUnsentRegIds.add(regId);
    }
  }
  return newUnsentRegIds;
}

private List < String > updateStatus ( List < String > unsentRegIds , Map < String , Result > allResults , MulticastResult multicastResult ) { List < Result > results = multicastResult . getResults ( ) ; if ( results . size ( ) != unsentRegIds . size ( ) ) { throw new RuntimeException ( "Internal error: sizes do not match. " + "currentResults: " + results + "; unsentRegIds: " + unsentRegIds ) ; } List < String > newUnsentRegIds = new ArrayList < String > ( ) ; for ( int i = 0 ; i < unsentRegIds . size ( ) ; i ++ ) { String regId = unsentRegIds . get ( i ) ; Result result = results . get ( i ) ; allResults . put ( regId , result ) ; String error = result . getErrorCodeName ( ) ; if ( error != null && ( error . equals ( Constants . ERROR_UNAVAILABLE ) || error . equals ( Constants . ERROR_INTERNAL_SERVER_ERROR ) ) ) { newUnsentRegIds . add ( regId ) ; } } return newUnsentRegIds ; }
updates the status of the messages sent to devices and the list of devices that should be retried .
