package Ġorg . kin . stell ar fork . responses Ċ Ċ import Ġcom . google . gson . Json Deserialization Context Ċ import Ġcom . google . gson . Json Deserializer Ċ import Ġcom . google . gson . Json Element Ċ import Ġcom . google . gson . Json ParseException Ċ import Ġorg . kin . stell ar fork . Asset Ċ import Ġorg . kin . stell ar fork . Asset Type Native Ċ import Ġorg . kin . stell ar fork . KeyPair Ċ import Ġjava . lang . reflect . Type Ċ Ċ internal Ġclass ĠAsset Deserializer Ġ: ĊĠĠĠ ĠJson Deserializer < Asset > Ġ{ ĊĠĠĠ Ġ@ Throws ( Json ParseException :: class ) ĊĠĠĠ Ġoverride Ġfun Ġdeserialize ( ĊĠĠĠĠĠĠĠ Ġjson : ĠJson Element , ĊĠĠĠĠĠĠĠ ĠtypeOf T : ĠType , ĊĠĠĠĠĠĠĠ Ġcontext : ĠJson Deserialization Context ĊĠĠĠ Ġ): ĠAsset Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtype Ġ= Ġjson . as JsonObject [" asset _ type "]. asString ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( type Ġ== Ġ" native ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAsset Type Native ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcode Ġ= Ġjson . as JsonObject [" asset _ code "]. asString ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġissuer Ġ= Ġjson . as JsonObject [" asset _ issuer "]. asString ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAsset . create Non Native Asset ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠKey Pair . from AccountId ( issuer ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ