apollo-client/src/main/java/com/ctrip/framework/apollo/internals/SimpleConfig.java/SimpleConfig/onRepositoryChange
class SimpleConfig:  @Override
  public synchronized void onRepositoryChange(String namespace, Properties newProperties) {
    if (newProperties.equals(m_configProperties)) {
      return;
    }
    Properties newConfigProperties = propertiesFactory.getPropertiesInstance();
    newConfigProperties.putAll(newProperties);

    List<ConfigChange> changes = calcPropertyChanges(namespace, m_configProperties, newConfigProperties);
    Map<String, ConfigChange> changeMap = Maps.uniqueIndex(changes,
        new Function<ConfigChange, String>() {
          @Override
          public String apply(ConfigChange input) {
            return input.getPropertyName();
          }
        });

    updateConfig(newConfigProperties, m_configRepository.getSourceType());
    clearConfigCache();

    this.fireConfigChange(m_namespace, changeMap);

    Tracer.logEvent("Apollo.Client.ConfigChanges", m_namespace);
  }