Skip to content

tomitribe/tomitribe-util

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

324 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Tomitribe Util

A cornucopia of useful utility classes.

Data Encoding

Class Description
Base32 Case-insensitive Base32 encoding and decoding
Base58 Bitcoin-style Base58 encoding and decoding
Base64 RFC 2045 Base64 encoding and decoding
Binary Binary string to byte array conversion
Hex Hexadecimal string to byte array conversion

Units and Measurement

Class Description
Duration Parses and manipulates time durations like 3 hours and 12 minutes
Size Parses and manipulates data sizes like 256mb
SizeUnit Enum for data size unit conversion (bytes through terabytes)
Bytes Accumulates and compacts byte values across size units
TimeUtils Converts milliseconds to human-readable time strings

I/O and Filesystem

Class Description
IO Read, write, and copy streams, files, and channels
Files File filtering, walking, deletion, and iteration
Zips Extract ZIP and JAR files to a directory
Archive In-memory JAR-like structure using lambdas for lazy byte loading
Pipe Pipes an InputStream to an OutputStream as a Runnable/Future
JarLocation Finds the JAR file on disk that contains a given class
Mvn Locates Maven artifacts in the local repository by coordinates

Strongly-Typed Directory Proxies

Define an interface whose method names mirror a directory structure; get back a proxy that returns File or Path references with compile-time safety.

Class Description
Dir java.io.File-based directory proxy
Dir (paths) java.nio.file.Path-based directory proxy
Paths Utilities for walking and filtering Path trees

Supporting annotations: @Filter, @Walk, @Mkdir, @Mkdirs, @Name, @Parent

Collections and Iteration

Class Description
FilteredIterable Iterable wrapper that filters elements with a predicate
FilteredIterator Iterator wrapper that filters elements with a predicate
CompositeIterable Chains multiple iterables into a single sequence
CompositeIterator Chains multiple iterators into a single sequence
AbstractIterator Base class for custom iterators with an advance() pattern
Suppliers Converts Suppliers into lazy Iterators and Streams
ObjectMap Exposes an object's getters and fields as a Map<String, Object>

Reflection

Class Description
Generics Extracts generic type parameters from fields, methods, and parameters
Parameter Represents a method parameter with its annotations and types
Reflection Iterates over methods and parameters
Classes Maps between primitive types and their wrapper classes
SetAccessible PrivilegedAction for setting accessibility on reflected members
StackTraceElements Utilities for working with stack traces

Type Conversion

Class Description
Converter Converts between Java types using PropertyEditors, constructors, and static factory methods
AbstractConverter Base class for PropertyEditor implementations
Editors Finds and registers PropertyEditor instances by type
DateEditor PropertyEditor for parsing strings into Date objects
PathEditor PropertyEditor for java.nio.file.Path
CharacterEditor PropertyEditor for Character

Strings and Formatting

Class Description
Join Joins collections and arrays with a delimiter
StringTemplate {placeholder} string replacement with customizable delimiters
Strings Case conversion utilities
Escapes Unescapes backslash sequences like \n and \t
Formats Helpers for difficult-to-remember Formatter conversions
PrintString PrintStream that writes to an internal string buffer

Numeric and Low-Level

Class Description
Ints Convert integers to and from byte arrays and hex
Longs Convert longs to and from byte arrays

Hashing

Class Description
XxHash64 64-bit xxHash non-cryptographic hash
XxHash32 32-bit xxHash non-cryptographic hash
Slice Low-level byte buffer for efficient memory access
Slices Slice allocation and resizing
SizeOf Calculates memory size of Java objects using Unsafe

Configuration

Class Description
Options Strongly-typed Properties wrapper with enum and collection support
SuperProperties Extended Properties with comments, attributes, and case-insensitive lookup

Other

Class Description
Version Comparable version number parsing
Futures Combines multiple Futures into a single Future<List>

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages