package Ġorg . so yl ent system . realm Ċ Ċ import Ġandroid . content . Context Ċ import Ġdal vik . system . Dex File Ċ Ċ class ĠTransaction ( context : ĠContext ) Ġ: ĠRealm ( context ) Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġclean () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġrealm Class Ġ= Ġrealm . java Class ĊĠĠĠĠĠĠĠ Ġval Ġrealm Object Class Ġ= ĠClass . forName (" io . realm . Realm Object ") ĊĠĠĠĠĠĠĠ Ġvar ĠpackageName Ġ= Ġcontext . get PackageName () ĊĊĠĠĠĠĠĠĠ Ġrealm Class . getMethod (" beginTransaction "). invoke ( realm ) ĊĊĠĠĠĠĠĠĠ ĠDex File ( context . get Package Code Path ()). entries (). as Sequence (). filter Ġ{ Ġklass Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġklass . contains ( packageName ) Ġ&& Ġrealm Object Class . isAssignableFrom ( Class . forName ( klass )) ĊĠĠĠĠĠĠĠ Ġ}. forEach Ġ{ Ġklass Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrealm Class . get Methods (). first Ġ{ Ġm Ġ-> Ġm . getName () Ġ== Ġ" clear " Ġ}. invoke ( realm , ĠClass . forName ( klass )) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġrealm Class . getMethod (" commit Transaction "). invoke ( realm ) ĊĠĠĠĠĠĠĠ Ġrealm Class . getMethod (" close "). invoke ( realm ) ĊĠĠĠ Ġ} Ċ Ċ } Ċ