v0.15.0
New features
- SealParser: unified entry point for parsing VDS and IDB seals, replaces
type-specific fromString()/fromByteArray() factory methods; supports
configurable seal type filtering via SealType enum and throws
SealParseException on parse errors - VdsSeal.Builder / IdbSeal.Builder: single-step fluent builder API replacing
manual assembly of header, message group and payload objects; internal
types (VdsHeader, VdsMessageGroup, IdbHeader, IdbPayload, …) are now hidden - IDB sub-messages: recursive parsing and navigation of nested message
structures (e.g. PROOF_OF_VACCINATION → VACCINATION_EVENT) - String input accepted for DATE and DATE_TIME in encodeValueByCoding
Breaking changes
- VdsSeal.Builder / IdbSeal.Builder replace the old multi-step construction;
internal types are no longer part of the public API - SealParser replaces fromString()/fromByteArray() on individual seal classes
- Registry renames: VdsSealCodingRegistry → VdsDocumentTypeRegistry,
ExtendedMessageDefinitionRegistry → VdsProfileDefinitionRegistry,
IdbNationalDocumentTypeRegistry → IdbDocumentTypeRegistry - Resource file renames: SealCodings.json → VdsDocumentTypes.json,
ExtendedMessageDefinitions.json → VdsProfileDefinitions.json,
IdbNationalDocumentTypes.json → IdbGermanDocumentTypes.json - Document type constants: ICAO_VISA → VISA,
ICAO_EMERGENCY_TRAVEL_DOCUMENT → EMERGENCY_TRAVEL_DOCUMENT - Signer class → EcdsaSigner; Signer is now an interface
- Message.messages renamed to messageList
- Verifier type-specific constructors deprecated; use Verifier(seal) or
Verifier(signatureInfo) - DataEncoder wrapper methods removed; use registry properties directly
(.sealCodings, .idbMessageTypes, .idbDocumentTypes, .extendedDefinitions)
Full Changelog: v0.14.0...v0.15.0