Class GroupIdRemoteRepositoryFilterSource

java.lang.Object
org.eclipse.aether.internal.impl.filter.RemoteRepositoryFilterSourceSupport
org.eclipse.aether.internal.impl.filter.GroupIdRemoteRepositoryFilterSource
All Implemented Interfaces:
org.eclipse.aether.spi.connector.filter.RemoteRepositoryFilterSource, org.eclipse.aether.spi.resolution.ArtifactResolverPostProcessor

@Singleton @Named("groupId") public final class GroupIdRemoteRepositoryFilterSource extends RemoteRepositoryFilterSourceSupport implements org.eclipse.aether.spi.resolution.ArtifactResolverPostProcessor
Remote repository filter source filtering on G coordinate. It is backed by a file that lists all allowed groupIds and groupId not present in this file are filtered out.

The file can be authored manually: format is one groupId per line, comments starting with "#" (hash) amd empty lines for structuring are supported. The file can also be pre-populated by "record" functionality of this filter. When "recording", this filter will not filter out anything, but will instead populate the file with all encountered groupIds.

The groupId file is expected on path "${basedir}/groupId-${repository.id}.txt".

The groupId file once loaded are cached in component, so in-flight groupId file change during component existence are NOT noticed.

Since:
1.9.0
  • Field Details

  • Constructor Details

  • Method Details

    • getRemoteRepositoryFilter

      public org.eclipse.aether.spi.connector.filter.RemoteRepositoryFilter getRemoteRepositoryFilter(org.eclipse.aether.RepositorySystemSession session)
      Specified by:
      getRemoteRepositoryFilter in interface org.eclipse.aether.spi.connector.filter.RemoteRepositoryFilterSource
    • postProcess

      public void postProcess(org.eclipse.aether.RepositorySystemSession session, List<org.eclipse.aether.resolution.ArtifactResult> artifactResults)
      Specified by:
      postProcess in interface org.eclipse.aether.spi.resolution.ArtifactResolverPostProcessor