Class RemoteRepositoryFilterSourceSupport

java.lang.Object
org.eclipse.aether.internal.impl.filter.RemoteRepositoryFilterSourceSupport
All Implemented Interfaces:
org.eclipse.aether.spi.connector.filter.RemoteRepositoryFilterSource
Direct Known Subclasses:
GroupIdRemoteRepositoryFilterSource, PrefixesRemoteRepositoryFilterSource

public abstract class RemoteRepositoryFilterSourceSupport extends Object implements org.eclipse.aether.spi.connector.filter.RemoteRepositoryFilterSource
Support class for RemoteRepositoryFilterSource implementations.

Support class for implementing RemoteRepositoryFilterSource. It implements basic support like optional "basedir" calculation, handling of "enabled" flag.

The configuration keys supported:

  • aether.remoteRepositoryFilter.${id}.enabled
    (boolean) must be explicitly set to "true" to become enabled
  • aether.remoteRepositoryFilter.${id}.basedir
    (string, path) directory from where implementation can use files. If unset, default value is ".remoteRepositoryFilters/${id}" and is resolved from local repository basedir.
Since:
1.9.0
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    protected static class 
    Simple RemoteRepositoryFilter.Result immutable implementation.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected static final String
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected Path
    getBasedir(org.eclipse.aether.RepositorySystemSession session, String defaultValue, String configPropKey, boolean mayCreate)
    Uses common DirectoryUtils.resolveDirectory(RepositorySystemSession, String, String, boolean) to calculate (and maybe create) basedir for this implementation, never returns null.
    protected abstract boolean
    isEnabled(org.eclipse.aether.RepositorySystemSession session)
    Returns true if session configuration contains this name set to true.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.eclipse.aether.spi.connector.filter.RemoteRepositoryFilterSource

    getRemoteRepositoryFilter
  • Field Details

  • Constructor Details

  • Method Details

    • isEnabled

      protected abstract boolean isEnabled(org.eclipse.aether.RepositorySystemSession session)
      Returns true if session configuration contains this name set to true.

      Default is false.

    • getBasedir

      protected Path getBasedir(org.eclipse.aether.RepositorySystemSession session, String defaultValue, String configPropKey, boolean mayCreate)
      Uses common DirectoryUtils.resolveDirectory(RepositorySystemSession, String, String, boolean) to calculate (and maybe create) basedir for this implementation, never returns null. The returned Path may not exists, if invoked with mayCreate being false.

      Default value is ${LOCAL_REPOSITORY}/.checksums.

      Returns:
      The Path of basedir, never null.