private void printSourceSection(ConfigSource source, PrintWriter printWriter) {
    String[] validAttributeNames = getAttributeNames();
    boolean sourceFound = false;
    Map<String, ConfigSource> sourceMap = getAttSourceMap();
    boolean sourceIsSecured = source != null && source.getType() == ConfigSource.Type.SECURE_FILE;
    for (String name : validAttributeNames) {
      if (source == null) {
        if (sourceMap.get(name) != null) {
          continue;
        }
      } else if (!source.equals(sourceMap.get(name))) {
        continue;
      }
      if (!sourceFound) {
        sourceFound = true;
        if (source == null) {
          printWriter.println(GEM_FIRE_PROPERTIES_USING_DEFAULT_VALUES);
        } else {
          printWriter.println(GEM_FIRE_PROPERTIES_DEFINED_WITH_PREFIX + source.getDescription()
              + GEM_FIRE_PROPERTIES_DEFINED_WITH_SUFFIX);
        }
      }
      // hide the shiro-init configuration for now. Remove after we can allow customer to specify
      // shiro.ini file
      if (name.equals(SECURITY_SHIRO_INIT)) {
        continue;
      }

      String attributeValueToPrint;
      if (source == null) {
        // always show defaults values
        attributeValueToPrint = getAttribute(name);
      } else if (sourceIsSecured) {
        // Never show secure sources
        attributeValueToPrint = ArgumentRedactor.getRedacted();
      } else {
        // Otherwise, redact based on the key string
        attributeValueToPrint =
            ArgumentRedactor.redactArgumentIfNecessary(name, getAttribute(name));
      }
      printWriter.print(name);
      printWriter.print('=');
      printWriter.println(attributeValueToPrint);
    }
  }
Set to true if most of the attributes can be modified. Set to false if most of the attributes
are read only.
geode-core/src/main/java/org/apache/geode/internal/AbstractConfig.java