package Ġcom . github . sol air er ove . j azz . robots . config Ċ Ċ import Ġorg . do zer . Do zer Bean Mapper Ċ import Ġorg . do zer . loader . api . Bean Mapping Builder Ċ import Ġorg . springframework . context . annotation . Bean Ċ import Ġorg . springframework . context . annotation . Class Path Sc anning Candidate Component Provider Ċ import Ġorg . springframework . context . annotation . Configuration Ċ import Ġorg . springframework . core . type . filter . Assignable Type Filter Ċ Ċ /** Ċ Ġ* ĠConfiguration Ġfor ĠDo zer Ċ Ġ*/ Ċ @ Configuration Ċ class ĠDo zer Configuration Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠPACK AGE _ TO _ SCAN Ġ= Ġ" com . github . sol air er ove . j azz . robots . application . mapping " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Bean ĊĠĠĠ Ġfun Ġmapper (): ĠDo zer Bean Mapper Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmapper Ġ= ĠDo zer Bean Mapper () ĊĠĠĠĠĠĠĠ Ġval Ġregistered Mappings Ġ= Ġregistered Mappings () ĊĠĠĠĠĠĠĠ Ġregistered Mappings . forEach ( mapper :: add Mapping ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġmapper ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġregistered Mappings (): ĠList < Bean Mapping Builder > Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġscanner Ġ= ĠClass Path Sc anning Candidate Component Provider ( false ) ĊĠĠĠĠĠĠĠ Ġscanner . add Include Filter ( Assignable Type Filter ( Bean Mapping Builder :: class . java )) ĊĊĠĠĠĠĠĠĠ Ġval Ġcustom Mapping Ġ= ĠArrayList < Bean Mapping Builder >() ĊĠĠĠĠĠĠĠ Ġscanner . find Candidate Components ( PACKAGE _ TO _ SCAN ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. map To ( custom Mapping ) Ġ{ Ġ( Class . forName ( it . bean ClassName ). newInstance () Ġas ĠBean Mapping Builder ) Ġ} ĊĊĠĠĠĠĠĠĠ Ġreturn Ġcustom Mapping ĊĠĠĠ Ġ} Ċ } Ċ