All Classes and Interfaces

Class
Description
The cosid endpoint and health indicator, each when its Actuator module is present.
Starts the CosIdRuntime (07-runtime-and-spring.md §4.2): the spec from cosid.* and the RuntimeSpecCustomizers (CosIdGeneratorRegistrar), the StoreProvider beans, the clients of the context (DataSource, Lettuce or RedisConnectionFactory, MongoClient, CuratorFramework), the GeneratorListener beans and a HostResolver bean if any (Spring Cloud's InetUtils gives one, the first non-loopback address, as in 4.x).
The read-only cosid Actuator endpoint (07 §4.2, D17), replacing the 4.x cosid, cosidGenerator and cosidStringGenerator endpoints: GET /actuator/cosid: every generator (CosIdRuntime.describe()); GET /actuator/cosid/{name}: one generator; GET /actuator/cosid/{name}/long: a long id (snowflake, segment and custom); GET /actuator/cosid/{name}/string: a text id, through the generator's codec. An unknown generator answers 404; a disabled one, or long of a text-only one, 400.
The JSON body of a generator: GeneratorInfo, which has no bean accessors for Jackson, as a record.
Registers one bean per generator, named after it, whose instance CosIdRuntime provides (07 §4.1): the runtime stays the one source of truth.
The bean of one generator: the runtime's view of it by the bean type, which counts the ids when cosid.metrics.generated.enabled is on.
The health of the machine slots (07 §4.2, api-freeze.md §2.4), replacing the 4.x MachineIdHealthIndicator: DOWN when a started machine lost its lease and did not acquire it again, or when the slot binding of a time-based generator on it is no longer valid; otherwise UP.
The integrations (07-runtime-and-spring.md §5, D29), each when its module (cosid-jackson, cosid-mybatis, cosid-spring-data-jdbc, cosid-activiti, cosid-flowable, cosid-axon) and the classes it plugs into are on the classpath: Jackson: a CosIdJacksonModule of the runtime, so @AsString(generator = ...) works. MyBatis (cosid.mybatis.enabled, default on): the CosIdInterceptor, batch inserts under cosid.mybatis.list-key (default list). Spring Data JDBC (cosid.jdbc.enabled, off by default as in 4.x): the CosIdBeforeConvertCallback, @Id properties from cosid.jdbc.id-generator (default default). Activiti and Flowable (cosid.activiti.enabled, cosid.flowable.enabled, default on): the engine's id generator on cosid.activiti.generator-name / cosid.flowable.generator-name, else the system property cosid.activiti / cosid.flowable, else default. Axon: binds the runtime to CosIdIdentifierFactory once it is started and unbinds it before it is closed, generator cosid.axon.generator-name, else the system property cosid.axon, else default.
The Micrometer metrics (07 §2, 11 §5): a GeneratorListener for events and gauges on the runtime's state, replacing the 4.x CosIdMeterBinder.
The Micrometer metrics (CosIdMeterListener) when the context has a MeterRegistry.
The cosid.* configuration (07-runtime-and-spring.md §4.1), bound once and immutable.
An item of a codec list: exactly one of its fields.
A date prefix.
A friendly codec.
Counting the ids every generator issues (cosid.generator.generated), through every view the runtime hands out (4.x cosid.metrics.generated.enabled).
A generator.
A slot leased from a store.
The default machine slot: exactly one of leased or static.
The Micrometer metrics.
A named machine slot (D37, cosid.machines.<name>): exactly one of leased or static, in a namespace of its own.
The period key of a periodic segment in its text ids (the 4.x group-prefix).
A radix codec.
What a time-based generator does when the clock goes back.
A slot the deployment keeps unique.
A store.
Native image hints (11 §5): the stores' ServiceLoader registrations and providers, the Redis Lua scripts, the JDBC schemas and dialect registrations, the generator bean factory, and the endpoint's CosIdEndpoint.Generator for JSON, and the CosIdProperties records the registrar binds.
Changes the RuntimeSpec built from cosid.* before the runtime starts (07-runtime-and-spring.md §4.1): add, remove or change generators, stores or the machine.
RedisScripts on a Spring Data RedisConnectionFactory (D6), for a factory without a native Lettuce client, such as a Jedis one; a LettuceConnectionFactory's own client is given to the store instead (clientOf(org.springframework.data.redis.connection.RedisConnectionFactory, me.ahoo.cosid.runtime.StoreSpec)), which opens a connection of its own on it.