/* Ċ Ġ* ĠThis Ġfile Ġis Ġpart Ġof ĠMy th ic D rops , Ġlicensed Ġunder Ġthe ĠMIT ĠLicense . Ċ Ġ* Ċ Ġ* ĠCopyright Ġ( C ) Ġ 2 0 2 1 ĠRichard ĠH arr ah Ċ Ġ* Ċ Ġ* ĠPermission Ġis Ġhereby Ġgranted , Ġfree Ġof Ġcharge , Ċ Ġ* Ġto Ġany Ġperson Ġobtaining Ġa Ġcopy Ġof Ġthis Ġsoftware Ġand Ġassociated Ġdocumentation Ġfiles Ġ( the Ġ" Software "), Ċ Ġ* Ġto Ġdeal Ġin Ġthe ĠSoftware Ġwithout Ġrestriction , Ġincluding Ġwithout Ġlimitation Ġthe Ġrights Ġto Ġuse , Ċ Ġ* Ġcopy , Ġmodify , Ġmerge , Ġpublish , Ġdistribute , Ġsublicense , Ġand / or Ġsell Ġcopies Ġof Ġthe ĠSoftware , Ċ Ġ* Ġand Ġto Ġpermit Ġpersons Ġto Ġwhom Ġthe ĠSoftware Ġis Ġfurnished Ġto Ġdo Ġso , Ġsubject Ġto Ġthe Ġfollowing Ġconditions : Ċ Ġ* Ċ Ġ* ĠThe Ġabove Ġcopyright Ġnotice Ġand Ġthis Ġpermission Ġnotice Ġshall Ġbe Ġincluded Ġin Ġall Ġcopies Ġor Ċ Ġ* Ġsubstantial Ġportions Ġof Ġthe ĠSoftware . Ċ Ġ* Ċ Ġ* ĠTHE ĠSOFTWARE ĠIS ĠPROVIDED Ġ" AS ĠIS ", ĠWITHOUT ĠWARRANTY ĠOF ĠANY ĠKIND , ĠEXPRESS ĠOR ĠIMPLIED , Ċ Ġ* ĠINCLUDING ĠBUT ĠNOT ĠLIMITED ĠTO ĠTHE ĠWARRANTIES ĠOF ĠMERCHANTABILITY , Ċ Ġ* ĠFITNESS ĠFOR ĠA ĠPARTICULAR ĠPURPOSE ĠAND ĠNONINFRINGEMENT . ĠIN ĠNO ĠEVENT ĠSHALL ĠTHE ĠAUTHORS Ċ Ġ* ĠOR ĠCOPYRIGHT ĠHOLDERS ĠBE ĠLIABLE ĠFOR ĠANY ĠCLAIM , ĠDAMAGES ĠOR ĠOTHER ĠLIABILITY , Ċ Ġ* ĠWHETHER ĠIN ĠAN ĠACTION ĠOF ĠCONTRACT , ĠTORT ĠOR ĠOTHERWISE , ĠARISING ĠFROM , ĠOUT ĠOF ĠOR ĠIN Ċ Ġ* ĠCONNECTION ĠWITH ĠTHE ĠSOFTWARE ĠOR ĠTHE ĠUSE ĠOR ĠOTHER ĠDEALINGS ĠIN ĠTHE ĠSOFTWARE . Ċ Ġ*/ Ċ package Ġio . pix e lout law . minecraft . sp ig ot . config . migration . models Ċ Ċ import Ġorg . bukkit . configuration . serialization . Configuration Serializable Ċ Ċ /** Ċ Ġ* ĠSimple Ġpair Ġof Ġa Ġname Ġfor Ġa Ġ[ Config Migration ]. Ċ Ġ*/ Ċ data Ġclass ĠNamed Config Migration ( val Ġmigration Name : ĠString , Ġval Ġconfig Migration : ĠConfig Migration ) Ġ: ĊĠĠĠ ĠConfiguration Serializable Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġdeserialize ( map : ĠMap < String , ĠAny >): ĠNamed Config Migration Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmigration Name Ġ= Ġmap . get OrDefault (" migration Name ", Ġ""). toString () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġconfig Migration Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmap . get OrDefault (" config Migration ", ĠConfig Migration . NO _ OP ) Ġas ? ĠConfig Migration ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠNamed Config Migration ( migration Name , Ġconfig Migration Ġ?: ĠConfig Migration . NO _ OP ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġserialize (): ĠMutable Map < String , ĠAny > Ġ= ĊĠĠĠĠĠĠĠ Ġmutable Map Of (" migration Name " Ġto Ġmigration Name , Ġ" config Migration " Ġto Ġconfig Migration ) Ċ } Ċ