code: @SuppressWarnings("WeakerAccess")
      void addOrReplaceProperty(final String name, final Object value) {
          final String currentValue = SecurityActions.setPropertyPrivileged(name, value.toString());
          if (currentValue != null) {
              propertiesToReset.put(name, currentValue);
          } else {
              propertiesToClear.add(name);
          }
      }
docs: Adds or replaces the system property. If the system property already exists with a different value on
  {@link #restore()} the system property will be set back to it's previous value.
  
  @param name  the name of the property
  @param value the value to set