package Ġlt . pet us ka . hazelcast . explorer . public . dsl Ċ Ċ import Ġcom . hazelcast . core . H azelcast Instance Ċ import Ġlt . pet us ka . hazelcast . explorer . domain . environment . target . Target Ċ import Ġlt . pet us ka . hazelcast . explorer . domain . environment . target . entity . Map Ċ import Ġlt . pet us ka . hazelcast . explorer . domain . environment . target . entity . Topic Ċ Ċ class ĠTarget Builder ( ĊĠ Ġenvironment Id : ĠString , ĊĠ Ġval Ġname : ĠString , ĊĠ Ġval Ġclient : Ġ() Ġ-> ĠH azelcast Instance , ĊĠ Ġval ĠdisplayName : ĠString , ĊĠ Ġval ĠreadOnly : ĠBoolean Ċ ) Ġ{ ĊĠ Ġval Ġid Ġ= Ġ"$ environment Id [$ name ]" ĊĠ Ġprivate Ġval Ġmaps Ġ= Ġmutable ListOf < Map >() ĊĠ Ġprivate Ġval Ġtopics Ġ= Ġmutable ListOf < Topic >() ĊĠĠĊĠ Ġfun Ġadd Map ( map : ĠMap ) Ġ= Ġmaps . add ( map ) ĊĠ Ġfun Ġadd Topic ( topic : ĠTopic ) Ġ= Ġtopics . add ( topic ) ĊĠĠĊĠ Ġfun Ġbuild () Ġ= ĠTarget ( id , Ġname , ĠdisplayName , ĠreadOnly , Ġmaps , Ġtopics , Ġclient ) Ċ } Ċ Ċ @ H ze Dsl Ċ fun ĠEnvironment Builder . target ( ĊĠ Ġname : ĠString , ĊĠ Ġclient : Ġ() Ġ-> ĠH azelcast Instance , ĊĠ ĠdisplayName : ĠString Ġ= Ġname , ĊĠ ĠreadOnly : ĠBoolean Ġ= Ġthis . readOnly , ĊĠ Ġbuilder : ĠTarget Builder . () Ġ-> ĠUnit Ċ ): ĠTarget Ġ{ ĊĠ Ġval Ġfactory Ġ= ĠTarget Builder ( id , Ġname , Ġclient , ĠdisplayName , ĠreadOnly ) ĊĠ Ġfactory . builder () ĊĠ Ġreturn Ġfactory . build (). also Ġ{ Ġadd Target ( it ) Ġ} Ċ }