Interface ContentFilter
-
- All Superinterfaces:
ExtensionPoint
- All Known Implementing Classes:
ContentMapping
,InetAddressContentFilter
,NoneFilter
,SensitiveContentFilter
public interface ContentFilter extends ExtensionPoint
Provides a strategy to filter support bundle written contents. This is primarily useful to anonymize data written to the bundle, though more complex filtering can be achieved. AContentFilter
may produceContentMappings
duringreload()
andfilter(String)
that are automatically persisted. It is therefore important to useBulkChange
when reloading the filter as well as when launching a task that performs the filtering:ContentFilter filter = ContentFilter.ALL; try { ContentFilter.reloadAndSaveMappings(filter); } catch (IOException e) { ... } [...] try (BulkChange change = new BulkChange(ContentFilter.bulkChangeTarget())) { doSomething(filter); change.commit(); }
- Since:
- TODO
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface hudson.ExtensionPoint
ExtensionPoint.LegacyInstancesAreScopedToHudson
-
-
Field Summary
Fields Modifier and Type Field Description static ContentFilter
ALL
Provides a ContentFilter that combines all registered ContentFilter extensions.static ContentFilter
NONE
Provides a noop ContentFilter that pass through the value.
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Deprecated Methods Modifier and Type Method Description static ExtensionList<ContentFilter>
all()
static Saveable
bulkChangeTarget()
Return the target forBulkChange
.default void
ensureLoaded()
Deprecated.use reload() insteadstatic String
filter(ContentFilter filter, String text)
An utility method to filter a text only when both, the filter and the text are not null and the text is not empty too.String
filter(String input)
Filters a line or snippet of text.default void
reload()
Reloads the state of this filter.static void
reloadAndSaveMappings(ContentFilter filter)
Reloads the state of this filter and commit .
-
-
-
Field Detail
-
ALL
static final ContentFilter ALL
Provides a ContentFilter that combines all registered ContentFilter extensions.
-
NONE
static final ContentFilter NONE
Provides a noop ContentFilter that pass through the value.
-
-
Method Detail
-
all
static ExtensionList<ContentFilter> all()
- Returns:
- all ContentFilter extensions
-
filter
@NonNull String filter(@NonNull String input)
Filters a line or snippet of text.- Parameters:
input
- input data to filter- Returns:
- the filtered input data
-
ensureLoaded
@Deprecated default void ensureLoaded()
Deprecated.use reload() insteadEnsure that the filter has been loaded at least once.
-
reload
default void reload()
Reloads the state of this filter. This may be implemented to rescan for more items to filter.
-
filter
static String filter(@NonNull ContentFilter filter, @CheckForNull String text)
An utility method to filter a text only when both, the filter and the text are not null and the text is not empty too.- Parameters:
filter
- the filter to use when filteringtext
- the text to filter- Returns:
- the text filtered if it is not empty and the filter is not null
-
bulkChangeTarget
static Saveable bulkChangeTarget()
Return the target forBulkChange
.- Returns:
- a
Saveable
-
reloadAndSaveMappings
static void reloadAndSaveMappings(@NonNull ContentFilter filter) throws IOException
Reloads the state of this filter and commit .- Throws:
IOException
- if reload or saving failed
-
-