Index

A B C D E F G H I J K L M N O P R S T U V W Y 
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 ConfigurationsBuilder for constructing Configurations instances.
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 configClazz record 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 Configurations objects.
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 ObjectMapper instance 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 ObjectMapper used 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 file record 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 Format class.
FileWrapper(Format<?, ?>, T) - Constructor for record class dev.chojo.ocular.components.FileWrapper
Creates an instance of a FileWrapper record class.
force() - Element in annotation interface dev.chojo.ocular.override.OverwritePrefix
When true, the prefix is always prepended to the key — even when the user provides an explicit name in @Env or @Prop.
format() - Method in record class dev.chojo.ocular.components.FileWrapper
Returns the value of the format record 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 initValue record 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 Key record 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 name record 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 Wrapper for the provided key and configuration.
OverrideApplier - Class in dev.chojo.ocular.override
Applies override values from a ValueSupplier to 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 path record 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 rootPackage record 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 OcularProcessor to 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 strict record 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 UnknownFormatException with 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
 
A B C D E F G H I J K L M N O P R S T U V W Y 
All Classes and Interfaces|All Packages|Serialized Form