Index
All Classes and Interfaces|All Packages|Serialized Form
A
- addFormat(DataFormat<?, ?>) - Method in class dev.chojo.ocular.ConfigurationsBuilder
-
Adds a single data format to the builder's list of formats.
- addFormats(List<DataFormat<?, ?>>) - Method in class dev.chojo.ocular.ConfigurationsBuilder
-
Adds a list of data formats to the builder.
- additionalModules() - Method in class dev.chojo.ocular.Configurations
-
Allows registering additional modules to the mapper.
- additionalModules() - Method in interface dev.chojo.ocular.dataformats.DataFormat
-
Provides additional Jackson modules required by the implementing data format.
- additionalModules() - Method in class dev.chojo.ocular.impl.ModifyableConfigurations
- addModule(Collection<JacksonModule>) - Method in class dev.chojo.ocular.ConfigurationsBuilder
-
Adds a collection of modules to the builder's configuration.
- addModule(JacksonModule) - Method in class dev.chojo.ocular.ConfigurationsBuilder
-
Adds a module to the current configuration builder.
- applyOverrides(V, ValueSupplier) - Static method in class dev.chojo.ocular.override.OverrideApplier
-
Applies all available overrides from the given supplier to the configuration object.
- assertInstalled() - Method in interface dev.chojo.ocular.dataformats.DataFormat
-
Ensures that the necessary module for handling the specific data format is installed and available.
- assertInstalled() - Method in class dev.chojo.ocular.dataformats.JsonDataFormat
- assertInstalled() - Method in class dev.chojo.ocular.dataformats.TomlDataFormat
- assertInstalled() - Method in class dev.chojo.ocular.dataformats.YamlDataFormat
- asString() - Method in record class dev.chojo.ocular.components.FileWrapper
-
Serializes the encapsulated file object into its JSON string representation using the configured writer of the associated format.
B
- base() - Method in class dev.chojo.ocular.Configurations
- beginBlock(String, Object...) - Method in class dev.chojo.ocular.processor.SourceWriter
-
Opens a block: prints the line and increments indent.
- build() - Method in class dev.chojo.ocular.ConfigurationsBuilder
- build() - Method in class dev.chojo.ocular.key.KeyBuilder
- builder(Key<V>, DataFormat<?, ?>) - Static method in class dev.chojo.ocular.Configurations
-
Creates a new
ConfigurationsBuilderfor constructingConfigurationsinstances. - builder(Path, Supplier<T>) - Static method in record class dev.chojo.ocular.key.Key
C
- close() - Method in class dev.chojo.ocular.components.Wrapper
- close() - Method in class dev.chojo.ocular.locks.KeyLock
- close() - Method in class dev.chojo.ocular.processor.SourceWriter
- config() - Method in class dev.chojo.ocular.components.Wrapper
-
Get the wrapped config file.
- configClazz() - Method in record class dev.chojo.ocular.key.Key
-
Returns the value of the
configClazzrecord component. - ConfigSubscriber - Interface in dev.chojo.ocular.hooks
-
This interface may be implemented by plugins in config classes.
- ConfigurationException - Exception Class in dev.chojo.ocular.exceptions
-
Represents an exception that occurs due to configuration-related issues.
- ConfigurationException(String, Throwable) - Constructor for exception class dev.chojo.ocular.exceptions.ConfigurationException
- Configurations<T> - Class in dev.chojo.ocular
-
The Configurations class represents a hierarchical configuration management system.
- Configurations(Path, Key<T>, List<DataFormat<?, ?>>, ClassLoader, Configurations<?>) - Constructor for class dev.chojo.ocular.Configurations
- ConfigurationsBuilder<T> - Class in dev.chojo.ocular
-
ConfigurationsBuilder is a builder pattern class for creating
Configurationsobjects. - ConfigurationsBuilder(Key<T>, DataFormat<?, ?>) - Constructor for class dev.chojo.ocular.ConfigurationsBuilder
-
Constructs a new instance of the ConfigurationsBuilder.
- Configurator<M,
B> - Interface in dev.chojo.ocular.dataformats -
Represents a configurable interface for setting up ObjectMapper or MapperBuilder instances.
- configure(B) - Method in interface dev.chojo.ocular.dataformats.Configurator
-
Configures the provided mapper builder with specific settings or customizations.
- configure(M) - Method in interface dev.chojo.ocular.dataformats.Configurator
-
Configures the given mapper instance by applying custom configurations.
- configure(MapperBuilder<ObjectMapper, ?>) - Method in class dev.chojo.ocular.Configurations
- configure(MapperBuilder<ObjectMapper, ?>) - Method in class dev.chojo.ocular.impl.ModifyableConfigurations
- configure(JsonMapper) - Method in class dev.chojo.ocular.dataformats.JsonDataFormat
- configure(ObjectMapper) - Method in class dev.chojo.ocular.Configurations
- configure(ObjectMapper) - Method in class dev.chojo.ocular.impl.ModifyableConfigurations
- configure(YAMLMapper.Builder) - Method in class dev.chojo.ocular.dataformats.YamlDataFormat
- configureBuilder(Consumer<MapperBuilder<ObjectMapper, ?>>) - Method in class dev.chojo.ocular.ConfigurationsBuilder
-
Configures the builder used to create and customize the
ObjectMapper. - configureMapper(Consumer<ObjectMapper>) - Method in class dev.chojo.ocular.ConfigurationsBuilder
-
Configures the
ObjectMapperinstance using the provided configuration logic. - configureReader(B) - Method in interface dev.chojo.ocular.dataformats.Configurator
-
Configures the provided mapper builder instance for reading operations.
- configureReader(M) - Method in interface dev.chojo.ocular.dataformats.Configurator
-
Configures the provided ObjectMapper instance for reading.
- configureReader(MapperBuilder<ObjectMapper, ?>) - Method in class dev.chojo.ocular.impl.ModifyableConfigurations
- configureReader(ObjectMapper) - Method in class dev.chojo.ocular.impl.ModifyableConfigurations
- configureReaderBuilder(Consumer<MapperBuilder<ObjectMapper, ?>>) - Method in class dev.chojo.ocular.ConfigurationsBuilder
-
Configures the reader builder with the specified customization logic.
- configureReaderMapper(Consumer<ObjectMapper>) - Method in class dev.chojo.ocular.ConfigurationsBuilder
-
Configures the
ObjectMapperused for reading data. - configureWriter(B) - Method in interface dev.chojo.ocular.dataformats.Configurator
-
Configures the provided mapper builder for writing operations.
- configureWriter(M) - Method in interface dev.chojo.ocular.dataformats.Configurator
-
Configures the given ObjectMapper instance specifically for writing operations.
- configureWriter(MapperBuilder<ObjectMapper, ?>) - Method in class dev.chojo.ocular.impl.ModifyableConfigurations
- configureWriter(ObjectMapper) - Method in class dev.chojo.ocular.impl.ModifyableConfigurations
- configureWriterBuilder(Consumer<MapperBuilder<ObjectMapper, ?>>) - Method in class dev.chojo.ocular.ConfigurationsBuilder
-
Configures the writer builder for the current configuration.
- configureWriterMapper(Consumer<ObjectMapper>) - Method in class dev.chojo.ocular.ConfigurationsBuilder
-
Configures a writer-specific ObjectMapper instance using the provided customization logic.
- Consumers - Class in dev.chojo.ocular.util
- Consumers() - Constructor for class dev.chojo.ocular.util.Consumers
- createAndLoad(Key<V>) - Method in class dev.chojo.ocular.Configurations
-
Load a file defined in the configuration key.
- createMapper() - Method in interface dev.chojo.ocular.dataformats.DataFormat
-
Creates and returns a new instance of the mapper builder associated with the data format.
- createMapper() - Method in class dev.chojo.ocular.dataformats.JsonDataFormat
- createMapper() - Method in class dev.chojo.ocular.dataformats.TomlDataFormat
- createMapper() - Method in class dev.chojo.ocular.dataformats.YamlDataFormat
D
- DataFormat<M,
B> - Interface in dev.chojo.ocular.dataformats -
Interface representing a data format used for configuring and initializing Jackson ObjectMapper instances with specific serialization and deserialization capabilities.
- decrementIndent() - Method in class dev.chojo.ocular.processor.SourceWriter
- description() - Element in annotation interface dev.chojo.ocular.override.Overwrite
-
Description of the override.
- dev.chojo.ocular - module dev.chojo.ocular
- dev.chojo.ocular - package dev.chojo.ocular
- dev.chojo.ocular.components - package dev.chojo.ocular.components
- dev.chojo.ocular.dataformats - package dev.chojo.ocular.dataformats
- dev.chojo.ocular.exceptions - package dev.chojo.ocular.exceptions
- dev.chojo.ocular.hooks - package dev.chojo.ocular.hooks
- dev.chojo.ocular.impl - package dev.chojo.ocular.impl
- dev.chojo.ocular.key - package dev.chojo.ocular.key
- dev.chojo.ocular.locks - package dev.chojo.ocular.locks
- dev.chojo.ocular.override - package dev.chojo.ocular.override
- dev.chojo.ocular.processor - package dev.chojo.ocular.processor
- dev.chojo.ocular.util - package dev.chojo.ocular.util
E
- enablePrettyPrint() - Method in interface dev.chojo.ocular.dataformats.DataFormat
-
Used to determine whether the default pretty printer should be used explicitly
- enablePrettyPrint() - Method in class dev.chojo.ocular.dataformats.JsonDataFormat
- endBlock() - Method in class dev.chojo.ocular.processor.SourceWriter
-
Shorthand for
endBlock("")}. - endBlock(String) - Method in class dev.chojo.ocular.processor.SourceWriter
-
Closes a block: decrements indent and prints the closing line.
- env() - Element in annotation interface dev.chojo.ocular.override.Overwrite
-
Environment variable sources to check for an override value.
- Env - Annotation Interface in dev.chojo.ocular.override
-
Specifies that a configuration field or method can be overridden by an environment variable.
- equals(Object) - Method in record class dev.chojo.ocular.components.FileWrapper
-
Indicates whether some other object is "equal to" this one.
- equals(Object) - Method in record class dev.chojo.ocular.key.Key
-
Indicates whether some other object is "equal to" this one.
- exists(Key<V>) - Method in class dev.chojo.ocular.Configurations
-
Checks whether the config file was created already
F
- file() - Method in record class dev.chojo.ocular.components.FileWrapper
-
Returns the value of the
filerecord component. - FileWrapper<T> - Record Class in dev.chojo.ocular.components
-
A generic wrapper class that associates a file object with a specific data format encapsulated by the
Formatclass. - FileWrapper(Format<?, ?>, T) - Constructor for record class dev.chojo.ocular.components.FileWrapper
-
Creates an instance of a
FileWrapperrecord class. - force() - Element in annotation interface dev.chojo.ocular.override.OverwritePrefix
- format() - Method in record class dev.chojo.ocular.components.FileWrapper
-
Returns the value of the
formatrecord component. - format() - Method in class dev.chojo.ocular.components.Format
-
Retrieves the associated DataFormat instance used for configuring and managing the mapping of data objects.
- Format<M,
B> - Class in dev.chojo.ocular.components -
The Format class encapsulates the configuration and initialization logic for creating ObjectMapper instances configured for a specific data format.
- Format(DataFormat<M, B>, Configurations<?>) - Constructor for class dev.chojo.ocular.components.Format
- formatString() - Method in interface dev.chojo.ocular.dataformats.DataFormat
-
Formats the type information of this data format instance into a readable string.
G
- getValue(String) - Method in interface dev.chojo.ocular.override.ValueSupplier
-
Returns the override value for the given field or method name, if one was found in the environment variables or system properties at construction time.
H
- hashCode() - Method in record class dev.chojo.ocular.components.FileWrapper
-
Returns a hash code value for this object.
- hashCode() - Method in record class dev.chojo.ocular.key.Key
-
Returns a hash code value for this object.
I
- identity() - Static method in class dev.chojo.ocular.util.Consumers
- incrementIndent() - Method in class dev.chojo.ocular.processor.SourceWriter
- init(ProcessingEnvironment) - Method in class dev.chojo.ocular.processor.OcularProcessor
-
Called once by the compiler before processing begins.
- initValue() - Method in record class dev.chojo.ocular.key.Key
-
Returns the value of the
initValuerecord component. - isInRootPackage(Class<?>) - Method in record class dev.chojo.ocular.key.Key
-
Checks whether objects of the given class belong to the configuration and are searched for overrides.
J
- JsonDataFormat - Class in dev.chojo.ocular.dataformats
- JsonDataFormat() - Constructor for class dev.chojo.ocular.dataformats.JsonDataFormat
- JsonDataFormat(boolean) - Constructor for class dev.chojo.ocular.dataformats.JsonDataFormat
K
- Key<T> - Record Class in dev.chojo.ocular.key
-
A key for a config file.
- Key(String, Path, Class<T>, Supplier<T>) - Constructor for record class dev.chojo.ocular.key.Key
-
Creates a key that replaces unreadable files with the initial value after backing them up.
- Key(String, Path, Class<T>, Supplier<T>, boolean) - Constructor for record class dev.chojo.ocular.key.Key
-
Creates a key whose root package is the package of the config class.
- Key(String, Path, Class<T>, Supplier<T>, boolean, String) - Constructor for record class dev.chojo.ocular.key.Key
-
Creates an instance of a
Keyrecord class. - KeyBuilder<T> - Class in dev.chojo.ocular.key
-
This class is used to build a configuration key with specific attributes.
- KeyBuilder(Path, Supplier<T>) - Constructor for class dev.chojo.ocular.key.KeyBuilder
-
Constructs a new KeyBuilder instance with the specified path and initial value supplier.
- KeyLock - Class in dev.chojo.ocular.locks
- KeyLocks - Class in dev.chojo.ocular.locks
- KeyLocks() - Constructor for class dev.chojo.ocular.locks.KeyLocks
L
- load(Key<V>) - Method in class dev.chojo.ocular.Configurations
-
Load a file defined in the configuration key.
- loaded(Key<V>) - Method in class dev.chojo.ocular.Configurations
-
Checks whether the config file was already loaded
- lock(Key<?>) - Method in class dev.chojo.ocular.locks.KeyLocks
M
- main() - Method in class dev.chojo.ocular.Configurations
-
Get the primary configuration.
- mainWrapped() - Method in class dev.chojo.ocular.Configurations
-
Get the primary configuration wrapper.
- matches(Key<?>) - Method in interface dev.chojo.ocular.dataformats.DataFormat
-
Checks whether the specified key matches the type or any of the type aliases of the current data format.
- migrate(Key<V>, Key<V>) - Method in class dev.chojo.ocular.Configurations
-
Migrates the configuration data from one key to another key.
- MissingDataTypeInstallationException - Exception Class in dev.chojo.ocular.exceptions
- MissingDataTypeInstallationException(String, String) - Constructor for exception class dev.chojo.ocular.exceptions.MissingDataTypeInstallationException
- ModifyableConfigurations<T> - Class in dev.chojo.ocular.impl
- ModifyableConfigurations(Path, Key<T>, List<DataFormat<?, ?>>, ClassLoader, Configurations<?>, Consumer<MapperBuilder<ObjectMapper, ?>>, Consumer<ObjectMapper>, Consumer<MapperBuilder<ObjectMapper, ?>>, Consumer<ObjectMapper>, Consumer<MapperBuilder<ObjectMapper, ?>>, Consumer<ObjectMapper>, List<JacksonModule>) - Constructor for class dev.chojo.ocular.impl.ModifyableConfigurations
N
- name() - Method in record class dev.chojo.ocular.key.Key
-
Returns the value of the
namerecord component. - name(String) - Method in class dev.chojo.ocular.key.KeyBuilder
-
Sets the name for the key being built.
O
- OcularProcessor - Class in dev.chojo.ocular.processor
-
Compile-time annotation processor that generates override helper classes for configuration objects.
- OcularProcessor() - Constructor for class dev.chojo.ocular.processor.OcularProcessor
- of(Key<V>, Configurations<?>) - Static method in class dev.chojo.ocular.components.Wrapper
-
Creates a new instance of a
Wrapperfor the provided key and configuration. - OverrideApplier - Class in dev.chojo.ocular.override
-
Applies override values from a
ValueSupplierto a configuration object at runtime. - Overwrite - Annotation Interface in dev.chojo.ocular.override
-
Marks a field or method in a configuration class as overridable at runtime.
- OverwritePrefix - Annotation Interface in dev.chojo.ocular.override
-
Overrides the class name used as the prefix when deriving default environment variable and system property names for
@Overwrite-annotated fields.
P
- ParallelAccessException - Exception Class in dev.chojo.ocular.exceptions
-
This exception is thrown to indicate an illegal attempt to access a resource or perform an operation that is not allowed due to concurrent or parallel access constraints.
- ParallelAccessException() - Constructor for exception class dev.chojo.ocular.exceptions.ParallelAccessException
- parent - Variable in class dev.chojo.ocular.Configurations
- parent(Configurations<?>) - Method in class dev.chojo.ocular.ConfigurationsBuilder
-
Set a configurations object as parent for the new one.
- path() - Method in record class dev.chojo.ocular.key.Key
-
Returns the value of the
pathrecord component. - postRead(Configurations<?>) - Method in interface dev.chojo.ocular.hooks.ConfigSubscriber
-
This method is invoked after the configuration has been read.
- preWrite(Configurations<?>) - Method in interface dev.chojo.ocular.hooks.ConfigSubscriber
-
A hook that is called before writing configurations.
- println() - Method in class dev.chojo.ocular.processor.SourceWriter
-
Prints an empty line.
- println(String, Object...) - Method in class dev.chojo.ocular.processor.SourceWriter
-
Prints an indented line with optional format arguments, followed by a newline.
- process(Set<? extends TypeElement>, RoundEnvironment) - Method in class dev.chojo.ocular.processor.OcularProcessor
-
Main entry point called by the compiler for each processing round.
- prop() - Element in annotation interface dev.chojo.ocular.override.Overwrite
-
System property sources to check for an override value.
- Prop - Annotation Interface in dev.chojo.ocular.override
-
Specifies that a configuration field or method can be overridden by a JVM system property.
R
- reader() - Method in class dev.chojo.ocular.components.Format
-
Returns a lazily initialized and configured ObjectMapper instance for reading data.
- reload() - Method in class dev.chojo.ocular.Configurations
-
Reloads all files loaded via this instance including the main configuration.
- reload(Key<?>) - Method in class dev.chojo.ocular.Configurations
-
Reloads a single file associated with the config key
- replace(Key<V>, V) - Method in class dev.chojo.ocular.Configurations
-
Replace the configuration currently associated with this key with a new configuration.
- rootPackage() - Method in record class dev.chojo.ocular.key.Key
-
Returns the value of the
rootPackagerecord component. - rootPackage(String) - Method in class dev.chojo.ocular.key.KeyBuilder
-
Sets the package that holds the configuration classes.
S
- save() - Method in class dev.chojo.ocular.Configurations
-
Saves all files loaded via this instance.
- save(Key<?>) - Method in class dev.chojo.ocular.Configurations
-
Saves the file associated with the config key
- secondary(Key<V>) - Method in class dev.chojo.ocular.Configurations
-
Get a configuration file.
- secondaryWrapped(Key<V>) - Method in class dev.chojo.ocular.Configurations
-
Get a configuration file.
- setBase(Path) - Method in class dev.chojo.ocular.ConfigurationsBuilder
-
Sets the base path for configurations.
- SourceWriter - Class in dev.chojo.ocular.processor
-
A simple indentation-aware source code writer used by
OcularProcessorto generate Java source files. - SourceWriter(Writer) - Constructor for class dev.chojo.ocular.processor.SourceWriter
- strict() - Method in record class dev.chojo.ocular.key.Key
-
Returns the value of the
strictrecord component. - strict() - Method in class dev.chojo.ocular.key.KeyBuilder
-
Makes loading fail when the file cannot be read, leaving the file untouched, instead of backing it up and replacing it with the initial value.
T
- TomlDataFormat - Class in dev.chojo.ocular.dataformats
- TomlDataFormat() - Constructor for class dev.chojo.ocular.dataformats.TomlDataFormat
- toString() - Method in record class dev.chojo.ocular.components.FileWrapper
-
Returns a string representation of this record class.
- toString() - Method in record class dev.chojo.ocular.key.Key
-
Returns a string representation of this record class.
- tryLock(Key<?>) - Method in class dev.chojo.ocular.locks.KeyLocks
- type() - Method in interface dev.chojo.ocular.dataformats.DataFormat
-
Returns the primary type identifier for the data format.
- type() - Method in class dev.chojo.ocular.dataformats.JsonDataFormat
- type() - Method in class dev.chojo.ocular.dataformats.TomlDataFormat
- type() - Method in class dev.chojo.ocular.dataformats.YamlDataFormat
- typeAlias() - Method in interface dev.chojo.ocular.dataformats.DataFormat
-
Provides a list of alternative type aliases for the data format.
- typeAlias() - Method in class dev.chojo.ocular.dataformats.YamlDataFormat
U
- UnknownFormatException - Exception Class in dev.chojo.ocular.exceptions
-
This exception signals that an attempt to handle or parse a file failed due to the absence of a registered format for the key specified.
- UnknownFormatException(Key<?>, Collection<Format<?, ?>>) - Constructor for exception class dev.chojo.ocular.exceptions.UnknownFormatException
-
Constructs an
UnknownFormatExceptionwith details about the unsupported key and a list of supported formats.
V
- value() - Element in annotation interface dev.chojo.ocular.override.Env
-
The environment variable name to read.
- value() - Element in annotation interface dev.chojo.ocular.override.OverwritePrefix
-
The custom prefix to use instead of the class name.
- value() - Element in annotation interface dev.chojo.ocular.override.Prop
-
The system property name to read.
- ValueSupplier - Interface in dev.chojo.ocular.override
-
Provides override values for configuration fields and methods.
- visibilityChecker(VisibilityChecker) - Method in class dev.chojo.ocular.Configurations
-
Modifies the visibility settings of a provided
VisibilityChecker.
W
- withClassLoader(ClassLoader) - Method in class dev.chojo.ocular.ConfigurationsBuilder
-
Sets the class loader to be used by this builder.
- Wrapper<T> - Class in dev.chojo.ocular.components
-
Class allowing to access a configuration file.
- Wrapper(Key<T>, Configurations<?>) - Constructor for class dev.chojo.ocular.components.Wrapper
- writer() - Method in class dev.chojo.ocular.components.Format
-
Returns a lazily initialized and configured ObjectMapper instance for writing data.
Y
- YamlDataFormat - Class in dev.chojo.ocular.dataformats
- YamlDataFormat() - Constructor for class dev.chojo.ocular.dataformats.YamlDataFormat
All Classes and Interfaces|All Packages|Serialized Form