code: @Override
      public void updateCache(Dictionary<String, Object> properties, Set<ConfigID> references, Set<String> newUniques) throws IOException {
          lock.lock();
          try {
              removeReferences();
  
              setProperties(properties);
              this.references = references;
              this.uniqueVariables = newUniques;
  
              caFactory.getConfigurationStore().saveConfiguration(pid, this);
              changeCount.incrementAndGet();
  
              addReferences();
              sendEvents = true;
          } finally {
              lock.unlock();
          }
      }
docs: Updates ConfigurationAdmin's cache with current config properties.
  If replaceProp is set to true, current config properties is replace with
  the given properties before caching
  and the internal pid-to-config table is updated to reflect the new config
  properties.
  
  @param properties
  @param replaceProp
  @param isMetaTypeProperties
  true if properties is MetaType converted properties
  @param newUniques
  @throws IOException