code: public void setServerManagedPropertiesMode(final String value) {
          if ("strict".equals(value) || "relaxed".equals(value)) {
              final String propertyValue = System.getProperty(SERVER_MANAGED_PROPERTIES_MODE);
              if (propertyValue != null) {
                  LOGGER.warn("The system property \"{}\" with the value \"{}\" is being used instead of the" +
                                  "serverManagedPropertiesMode of \"{}\" specified in the Spring configuration!",
                          SERVER_MANAGED_PROPERTIES_MODE, propertyValue, value);
              } else {
                  LOGGER.info("Set system property \"{}\" to \"{}\" to correspond to serverManagedPropertiesMode.",
                          SERVER_MANAGED_PROPERTIES_MODE, value);
                  System.setProperty(SERVER_MANAGED_PROPERTIES_MODE, value);
              }
          } else {
              throw new IllegalArgumentException("Invalid value \"" + value
                      + "\" supplied for serverManagedPropertiesMode (expecting \"strict\" or \"relaxed\")!");
          }
      }
docs: Set the mode for server managed properties.  The value "strict" (default)
  will result in the classic behavior where certain provenance-related
  properties cannot be set, while "relaxed" will allow for them to be
  set in some circumstances.
  
  @param value the value (must be either "strict" or "relaxed")