private void getInterestMaps(FilterProfile pf, String rName, int mapIndex, Object interestID) {
      try {
        // Check if interested in all keys.
        boolean all = pf.isInterestedInAllKeys(interestID);
        if (all) {
          if (interestMaps[mapIndex].allKeys == null) {
            interestMaps[mapIndex].allKeys = new HashMap<>();
          }
          interestMaps[mapIndex].allKeys.put(rName, ".*");
        }

        // Check if interested in all keys, for which updates are sent as invalidates.
        all = pf.isInterestedInAllKeysInv(interestID);
        if (all) {
          if (interestMaps[mapIndex].allKeysInv == null) {
            interestMaps[mapIndex].allKeysInv = new HashMap<>();
          }
          interestMaps[mapIndex].allKeysInv.put(rName, ".*");
        }

        // Collect interest of type keys.
        Set<?> keys = pf.getKeysOfInterest(interestID);
        if (keys != null) {
          if (interestMaps[mapIndex].keysOfInterest == null) {
            interestMaps[mapIndex].keysOfInterest = new HashMap<>();
          }
          interestMaps[mapIndex].keysOfInterest.put(rName, keys);
        }

        // Collect interest of type keys, for which updates are sent as invalidates.
        keys = pf.getKeysOfInterestInv(interestID);
        if (keys != null) {
          if (interestMaps[mapIndex].keysOfInterestInv == null) {
            interestMaps[mapIndex].keysOfInterestInv = new HashMap<>();
          }
          interestMaps[mapIndex].keysOfInterestInv.put(rName, keys);
        }

        // Collect interest of type expression.
        keys = pf.getPatternsOfInterest(interestID);
        if (keys != null) {
          if (interestMaps[mapIndex].patternsOfInterest == null) {
            interestMaps[mapIndex].patternsOfInterest = new HashMap<>();
          }
          interestMaps[mapIndex].patternsOfInterest.put(rName, keys);
        }

        // Collect interest of type expression, for which updates are sent as invalidates.
        keys = pf.getPatternsOfInterestInv(interestID);
        if (keys != null) {
          if (interestMaps[mapIndex].patternsOfInterestInv == null) {
            interestMaps[mapIndex].patternsOfInterestInv = new HashMap<>();
          }
          interestMaps[mapIndex].patternsOfInterestInv.put(rName, keys);
        }

        // Collect interest of type filter.
        keys = pf.getFiltersOfInterest(interestID);
        if (keys != null) {
          if (interestMaps[mapIndex].filtersOfInterest == null) {
            interestMaps[mapIndex].filtersOfInterest = new HashMap<>();
          }
          interestMaps[mapIndex].filtersOfInterest.put(rName, keys);
        }

        // Collect interest of type filter, for which updates are sent as invalidates.
        keys = pf.getFiltersOfInterestInv(interestID);
        if (keys != null) {
          if (interestMaps[mapIndex].filtersOfInterestInv == null) {
            interestMaps[mapIndex].filtersOfInterestInv = new HashMap<>();
          }
          interestMaps[mapIndex].filtersOfInterestInv.put(rName, keys);
        }
      } catch (Exception ex) {
        if (logger.isDebugEnabled()) {
          logger.debug("{}: Failed to get Register interest info for region : {}", this, rName, ex);
        }
      }
    }
Collects all the filters registered by this client on regions.
geode-core/src/main/java/org/apache/geode/internal/cache/InitialImageOperation.java