@Override public void publish(ScannerReportWriter writer) { MapEntryToContextPropertyFunction transformer = new MapEntryToContextPropertyFunction(); // properties defined programmatically by plugins Stream<ScannerReport.ContextProperty> fromCache = cache.getAll().entrySet().stream().map(transformer); // properties that are automatically included to report so that // they can be included to webhook payloads Stream<ScannerReport.ContextProperty> fromSettings = config.getProperties().entrySet().stream() .filter(e -> e.getKey().startsWith(CorePropertyDefinitions.SONAR_ANALYSIS)) .map(transformer); writer.writeContextProperties(Stream.concat(fromCache, fromSettings).collect(Collectors.toList())); }
@Test public void shouldStoreContextProperty() { underTest.storeProperty("foo", "bar"); assertThat(contextPropertiesCache.getAll()).containsOnly(entry("foo", "bar")); }
@Test public void put_overrides_existing_value() { underTest.put("foo", "bar"); underTest.put("foo", "baz"); assertThat(underTest.getAll()).containsOnly(entry("foo", "baz")); }
@Override public void publish(ScannerReportWriter writer) { MapEntryToContextPropertyFunction transformer = new MapEntryToContextPropertyFunction(); // properties defined programmatically by plugins Stream<ScannerReport.ContextProperty> fromCache = cache.getAll().entrySet().stream().map(transformer); // properties that are automatically included to report so that // they can be included to webhook payloads Stream<ScannerReport.ContextProperty> fromSettings = config.getProperties().entrySet().stream() .filter(e -> e.getKey().startsWith(CorePropertyDefinitions.SONAR_ANALYSIS)) .map(transformer); writer.writeContextProperties(Stream.concat(fromCache, fromSettings).collect(Collectors.toList())); }