Skip to content

flamingock/flamingock-java-general-util

Repository files navigation

Flamingock logo

flamingock-general-util

Internal shared utilities for the Flamingock ecosystem.

Maven Version Build License


Internal library. This module is a shared dependency used across Flamingock modules. It is published to Maven Central for build convenience, but is not intended for direct external consumption. Its API surface may change without notice between releases.


What it provides

General-purpose utilities and helper classes shared across Flamingock modules:

  • HTTP client — Fluent request builder on top of Apache HttpClient with JSON serialization.
  • Reflection utilities — Generic type resolution, constructor and method discovery, annotation collection.
  • Typed identifiers — Immutable, validated ID types (RunnerId, ServiceId, EnvironmentId).
  • Error model — Standardized FlamingockError with HTTP variants and recovery flags.
  • Time and concurrency — Testable TimeService, StopWatch, and controlled ThreadSleeper.
  • Serialization — Pre-configured Jackson ObjectMapper and YAML file loading via SnakeYAML.
  • Audit constants — Field names and store names used by the audit subsystem.
  • Common typesResult<Ok, Error>, Pair, Trio, Wrapper, functional interfaces.
  • Logging — Centralized logger factory with consistent Flamingock log formatting.

Coordinates

<dependency>
    <groupId>io.flamingock</groupId>
    <artifactId>flamingock-general-util</artifactId>
    <version>${flamingock-general-util.version}</version>
</dependency>
implementation("io.flamingock:flamingock-general-util:$flamingockGeneralUtilVersion")

Requirements

  • Java 8+

Building

./gradlew build

License

This project is licensed under the Apache License 2.0.

flamingock.io

About

Flamingock general utilities

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors