blob: 33127c54fde5f3328a8dc26b9b13292e91a8a4f6 [file] [log] [blame] [view]
@PLUGIN@ extension points
==============
The @PLUGIN@ plugin exposes an extension point to allow influencing its
behaviour from another plugin or a script.
Extension points are available only when the plugin extension points module
is loaded as [libModule](/config-gerrit.html#gerrit.installModule) and
implemented by another plugin which depends on this as `provided`
dependency.
### Install extension libModule
The @PLUGIN@ plugin's extension points are defined in the
`c.g.g.p.r.p.ReplicationExtensionPointModule` that needs to be configured
as libModule.
Create a symbolic link from `$GERRIT_SITE/plugins/@PLUGIN@.jar` into
`$GERRIT_SITE/lib` and then add the @PLUGIN@ extension module to the
`gerrit.config`.
Example:
```
[gerrit]
installModule = com.googlesource.gerrit.plugins.replication.pull.ReplicationExtensionPointModule
```
> **NOTE**: Use and configuration of the @PLUGIN@ plugin as library module
requires a Gerrit server restart and does not support hot plugin install or
upgrade.
### Extension points
* `com.googlesource.gerrit.plugins.replication.pull.ReplicationFetchFilter`
Filter out the refs fetched from a remote instance.
Only one filter at a time is supported. Filter implementation needs to
bind a `DynamicItem`.
Default: no filtering
Example:
```
DynamicItem.bind(binder(), ReplicationFetchFilter.class).to(ReplicationFetchFilterImpl.class);
```