001package io.avaje.jsonb; 002 003/** 004 * User defined components to register custom JsonAdapters with Jsonb.Builder. 005 * <p> 006 * These are service loaded when Jsonb starts. They can be specified in 007 * {@code META-INF/services/io.avaje.jsonb.JsonbComponent} or when using 008 * java module system via a {@code provides} clause in module-info. 009 */ 010@FunctionalInterface 011public interface JsonbComponent { 012 013 /** 014 * Register JsonAdapters with the Builder. 015 */ 016 void register(Jsonb.Builder builder); 017}