001package io.avaje.jsonb.spi; 002 003/** 004 * Factory that is service loaded to create the adapter for underlying json parsing and generation. 005 */ 006public interface AdapterFactory { 007 008 /** 009 * Create the adapter to use for the underlying json parsing and generation. 010 * 011 * @param serializeNulls The default setting for serializing nulls 012 * @param serializeEmpty The default setting for serializing empty arrays 013 * @param failOnUnknown The default setting for fail when deserializing unknown properties 014 * @return The adapter to use 015 */ 016 JsonStreamAdapter create(boolean serializeNulls, boolean serializeEmpty, boolean failOnUnknown); 017}