package Ġnet . t ass ia Ċ Ċ import Ġjava . io . InputStream Ċ Ċ /** Ċ Ġ* ĠReads Ġa Ġresource Ġfrom Ġthe Ġclasspath . Ċ Ġ* Ċ Ġ* Ġ@ param Ġpath Ġthe Ġpath Ġto Ġthe Ġresource Ċ Ġ* Ġ@ return Ġthe Ġread Ġresource Ċ Ġ* Ċ Ġ* Ġ@ since ĠKom mon s Ġ 1 . 0 Ċ Ġ*/ Ċ inline Ġfun Ġ< re ified ĠT Ġ: ĠAny > Ġread Resource OrNull ( path : ĠString ): ĠByteArray ? Ġ{ Ċ ĉ return Ġread Resource OrNull ( T :: class . java , Ġpath ) Ċ } Ċ Ċ /** Ċ Ġ* ĠReads Ġa Ġresource Ġfrom Ġthe Ġclasspath . Ċ Ġ* Ċ Ġ* Ġ@ param Ġklass Ġthe Ġclass Ġof Ġwhich Ġto Ġuse Ġthe Ġclass loader Ġfrom Ċ Ġ* Ġ@ param Ġpath Ġthe Ġpath Ġto Ġthe Ġresource Ċ Ġ* Ġ@ return Ġthe Ġread Ġresource Ċ Ġ* Ċ Ġ* Ġ@ since ĠKom mon s Ġ 1 . 0 Ċ Ġ*/ Ċ fun Ġread Resource OrNull ( klass : ĠClass <* >, Ġpath : ĠString ): ĠByteArray ? Ġ{ Ċ ĉ return Ġklass . getResource AsStream ( path )?. use ( InputStream :: read Bytes ) Ċ } Ċ Ċ /** Ċ Ġ* ĠReads Ġa Ġresource Ġfrom Ġthe Ġclasspath . Ċ Ġ* Ċ Ġ* Ġ@ param Ġpath Ġthe Ġpath Ġto Ġthe Ġresource Ċ Ġ* Ġ@ return Ġthe Ġread Ġresource Ċ Ġ* Ċ Ġ* Ġ@ since ĠKom mon s Ġ 1 . 0 Ċ Ġ*/ Ċ inline Ġfun Ġ< re ified ĠT Ġ: ĠAny > Ġread Resource ( path : ĠString ): ĠByteArray Ġ{ Ċ ĉ return Ġread Resource ( T :: class . java , Ġpath ) Ċ } Ċ Ċ /** Ċ Ġ* ĠReads Ġa Ġresource Ġfrom Ġthe Ġclasspath . Ċ Ġ* Ċ Ġ* Ġ@ param Ġklass Ġthe Ġclass Ġof Ġwhich Ġto Ġuse Ġthe Ġclass loader Ġfrom Ċ Ġ* Ġ@ param Ġpath Ġthe Ġpath Ġto Ġthe Ġresource Ċ Ġ* Ġ@ return Ġthe Ġread Ġresource Ċ Ġ* Ċ Ġ* Ġ@ since ĠKom mon s Ġ 1 . 0 Ċ Ġ*/ Ċ fun Ġread Resource ( klass : ĠClass <* >, Ġpath : ĠString ): ĠByteArray Ġ{ Ċ ĉ return Ġread Resource OrNull ( klass , Ġpath ) Ġ?: Ġthrow ĠIllegalArgumentException (" Resource Ġ'$ path ' Ġnot Ġfound .") Ċ } Ċ