/* Ċ Ġ* ĠCopyright Ġ 2 0 1 6 ĠSh iny a ĠMo ch ida Ċ Ġ* ĠĊ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , Version 2 . 0 ( the " License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* ĠĊ Ġ* Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* ĠĊ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , software Ċ Ġ* ĠDistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan " AS ĠIS " BAS IS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , either Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ package Ġorg . mi ken e ck . ku ick check . runner Ċ Ċ import Ġjava . nio . file . Path Ċ Ċ /** Ċ Ġ* ĠThis Ġclass Ġrepresents Ġclass Ġfile Ġand Ġconverts Ġfile Ġname Ġto Ġclass Ġinstance . Ċ Ġ*/ Ċ interface ĠClass File Ġ{ ĊĠĠĠ Ġfun Ġto Qualified ClassName (): ĠString ĊĠĠĠ Ġfun Ġto Java Class (): ĠJava Class Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġname Ġ= Ġto Qualified ClassName () ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġjava Class Ġ= ĠClass . forName ( name ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠJava Class ( name , Ġjava Class ) ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠClass NotFoundException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠJava Class ( name ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ internal Ġclass ĠReal Class File ( val Ġparent : ĠPath , Ġval Ġfile : ĠString ): ĠClass File Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġto Qualified ClassName (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġfile . remove Suffix (". class ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. remove Prefix ("$ parent / "). replace ("/ "," .") ĊĠĠĠ Ġ} Ċ } Ċ Ċ internal Ġclass ĠZip Class File ( val Ġfile : ĠString ): ĠClass File Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġto Qualified ClassName (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġfile . remove Suffix (". class "). replace ("/", Ġ". ") ĊĠĠĠ Ġ} Ċ } Ċ