Interface JctFileManagerConfigurer

All Known Implementing Classes:
JctFileManagerAnnotationProcessorClassPathConfigurer, JctFileManagerJvmClassPathConfigurer, JctFileManagerJvmClassPathModuleConfigurer, JctFileManagerJvmModulePathConfigurer, JctFileManagerJvmSystemModulesConfigurer, JctFileManagerLoggingProxyConfigurer, JctFileManagerRequiredLocationsConfigurer, JctFileManagerWorkspaceConfigurer
Functional Interface:
This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

@API(since="0.0.1", status=STABLE) @FunctionalInterface public interface JctFileManagerConfigurer
Interface for a JctFileManager configurer.

Configurers are designed to be chained to enable applying sets of operation to file managers during creation.

The configurer itself must return a JctFileManager instance. This will usually be the same value that is passed in the input parameter, as most configurers will only want to mutate an existing file manager. Configurers may instead opt to return a different file manager as the result, enabling wrapping the input in proxies or delegating implementations.

Configurers may also decide to not run at all by marking themselves as being disabled, which will result in them being skipped by any configurer chain or file manager that respects this attribute.

Since:
0.0.1
Author:
Ashley Scopes