- Type Parameters:
S- the type of the stamp used by the source (such as byte[] with a digest of a file)
- All Known Implementing Classes:
ConfigSources.SystemPropertiesConfigSource,DirectoryConfigSource,EtcdConfigSource,FileConfigSource,FileOverrideSource,GitConfigSource,MapConfigSource,SecretBundleNodeConfigSource,UrlConfigSource,UrlOverrideSource
public interface PollableSource<S>
A source implementing this interface provides support for polling using a
PollingStrategy.
This is achieved through a stamp passed between the source and the strategy to check for changes.- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interfacePollableSource.Builder<T extends PollableSource.Builder<T>>A builder for pollable source. -
Method Summary
Modifier and TypeMethodDescriptionbooleanisModified(S stamp) This method is invoked to check if this source has changed.If a polling strategy is configured with this source, return it.
-
Method Details
-
isModified
This method is invoked to check if this source has changed.- Parameters:
stamp- the stamp of the last loaded content- Returns:
trueif the current data of this config source differ from the loaded data, including cases when the source has disappeared
-
pollingStrategy
Optional<PollingStrategy> pollingStrategy()If a polling strategy is configured with this source, return it. The source implementation does not need to handle polling strategy.- Returns:
- polling strategy if one is configured on this source
-