// package Ġcom . mars . infra . router Ċ // Ċ // /** Ċ // Ġ* ĠCreated Ġby ĠJ oh nn y S word Man Ġon Ġ 2 0 2 2 / 1 / 2 2 Ċ // Ġ*/ Ċ // internal Ġobject ĠService Manager Ġ{ Ċ // Ċ //// ĠĠĠ Ġ// Ġtest Ċ //// ĠĠĠ Ġprivate Ġvar Ġtest Ġ= Ġfalse Ċ //// Ċ //// ĠĠĠ Ġ// ĠAS M Ċ //// ĠĠĠ Ġfun Ġ< T > Ġget Service ( service Class : ĠClass < T >): ĠT ? Ġ{ Ċ //// ĠĠĠĠĠĠĠ Ġreturn Ġnull Ċ //// ĠĠĠ Ġ} Ċ // Ċ // ĠĠĠ Ġfun Ġ< T > Ġget Service ( service Class : ĠClass < T >): ĠT ? Ġ{ Ċ // ĠĠĠĠĠĠĠ Ġreturn Ġwhen Ġ( service Class ) Ġ{ Ċ // ĠĠĠĠĠĠĠĠĠĠĠ ĠI Login Service :: class . java Ġ-> Ġ{ Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlogin Service Ġ= ĠLogin ServiceImpl () Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlogin Service Ġas ĠT Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ċ // ĠĠĠĠĠĠĠĠĠĠĠ ĠIF ake Service :: class . java Ġ-> Ġ{ Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfake Service Ġ= ĠFake ServiceImpl () Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfake Service Ġas ĠT Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ{ Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ċ // ĠĠĠĠĠĠĠ Ġ} Ċ // ĠĠĠ Ġ} Ċ // Ċ // ĠĠĠ Ġfun Ġtest Collect ServiceImpl Map (): ĠMutable Map < String , ĠString > Ġ{ Ċ // ĠĠĠĠĠĠĠ Ġval Ġmap : ĠMutable Map < String , ĠString > Ġ= ĠHashMap () Ċ // ĠĠĠĠĠĠĠ Ġmap [" com . mars . infra . router . I Login Service "] Ġ= Ġ" com . mars . infra . router . Login ServiceImpl " Ċ // ĠĠĠĠĠĠĠ Ġmap [" com . mars . infra . router . IF ake Service "] Ġ= Ġ" com . mars . infra . router . Fake ServiceImpl " Ċ // ĠĠĠĠĠĠĠ Ġreturn Ġmap Ċ // ĠĠĠ Ġ} Ċ // Ċ //}