class DefaultMessageMapperRegistry implements MessageMapperRegistry {

    @Override
    public List<MessageMapper> getMappers(final PayloadMapping payloadMapping) {
        return payloadMapping.getMappings().stream()
                .map(this::resolveMessageMapper)
                .map(resolvedMapper -> null == resolvedMapper ? defaultMapper : resolvedMapper)
                .collect(Collectors.toList());
    }

    private  DefaultMessageMapperRegistry(final MessageMapper defaultMapper,
            final Map<String, MessageMapper> customMappers,
            final Map<String, MessageMapper> fallbackMappers);

}