| @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); |
| ``` |