use of org.sonarsource.sonarlint.core.proto.Sonarlint.GlobalProperties in project sonarlint-core by SonarSource.
the class GlobalSettingsUpdateChecker method checkForUpdates.
public void checkForUpdates(String serverVersion, DefaultStorageUpdateCheckResult result) {
GlobalProperties serverGlobalProperties = globalPropertiesDownloader.fetchGlobalSettings(serverVersion);
GlobalProperties storageGlobalProperties = storageReader.readGlobalProperties();
MapDifference<String, String> propDiff = Maps.difference(filter(storageGlobalProperties.getPropertiesMap()), filter(serverGlobalProperties.getPropertiesMap()));
if (!propDiff.areEqual()) {
result.appendToChangelog("Global settings updated");
for (Map.Entry<String, String> entry : propDiff.entriesOnlyOnLeft().entrySet()) {
LOG.debug("Property '{}' removed", entry.getKey());
}
for (Map.Entry<String, String> entry : propDiff.entriesOnlyOnRight().entrySet()) {
LOG.debug("Property '{}' added with value '{}'", entry.getKey(), formatValue(entry.getKey(), entry.getValue()));
}
for (Map.Entry<String, ValueDifference<String>> entry : propDiff.entriesDiffering().entrySet()) {
LOG.debug("Value of property '{}' changed from '{}' to '{}'", entry.getKey(), formatLeftDiff(entry.getKey(), entry.getValue().leftValue(), entry.getValue().rightValue()), formatRightDiff(entry.getKey(), entry.getValue().leftValue(), entry.getValue().rightValue()));
}
}
}
Aggregations