package Ġcom . md zz . hook . proxy Ċ Ċ import Ġandroid . content . SharedPreferences Ċ import Ġcom . md zz . hook . base . Base Hook Ċ import Ġorg . json . JSONObject Ċ Ċ class ĠEditor Proxy ( private Ġval Ġeditor : ĠSharedPreferences . Editor ) Ġ: ĠSharedPreferences . Editor Ġby Ġeditor { ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠTAG Ġ= Ġ" Editor Proxy " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġkeys Ġ= ĠarrayOf (" sp _ key _ mock _ data ") ĊĊĠĠĠ Ġoverride Ġfun Ġput String ( key : ĠString ?, Ġvalue : ĠString ?): ĠSharedPreferences . Editor Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( keys . contains ( key )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠjsonObject Ġ= ĠJSONObject ( value ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠBase Hook . log ( TAG , Ġ" virtual Type Ġ= Ġ${ jsonObject [" virtual Type "] }") ĊĠĠĠĠĠĠĠĠĠĠĠ ĠjsonObject . put (" virtual Type ", Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠBase Hook . log ( TAG , Ġ" hook Type Ġ= Ġ${ jsonObject [" hook Type "] }") ĊĠĠĠĠĠĠĠĠĠĠĠ ĠjsonObject . put (" hook Type ", Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠBase Hook . log ( TAG , Ġ" mock Type Ġ= Ġ${ jsonObject [" mock Type "] }") ĊĠĠĠĠĠĠĠĠĠĠĠ ĠjsonObject . put (" mock Type ", Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġeditor . putString ( key , ĠjsonObject . toString ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġeditor . putString ( key , Ġvalue ) ĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} Ċ }