package Ġorg . cloudfoundry . tools . push apps . config Ċ Ċ import Ġcom . fasterxml . jackson . core . Json Parser Ċ import Ġcom . fasterxml . jackson . databind . Deserialization Context Ċ import Ġcom . fasterxml . jackson . databind . JsonNode Ċ import Ġcom . fasterxml . jackson . databind . annotation . Json Deserialize Ċ import Ġcom . fasterxml . jackson . databind . de ser . std . Std Deserializer Ċ Ċ @ Json Deserialize ( using Ġ= ĠRoute Deserializer :: class ) Ċ data Ġclass ĠRoute ( ĊĠĠĠĠĠĠĠ Ġval Ġhostname : ĠString , ĊĠĠĠĠĠĠĠ Ġval Ġpath : ĠString ? Ġ= Ġnull Ċ ) Ċ Ċ class ĠRoute Deserializer : ĠStd Deserializer < Route >( Route :: class . java ) Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġdeserialize ( p : ĠJson Parser , Ġctx : ĠDeserial ization Context ): ĠRoute Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġnode Ġ= Ġp . codec . read Tree < JsonNode >( p ) ĊĊĠĠĠĠĠĠĠ Ġval Ġhostname Ġ= Ġnode . get (" hostname "). as Text () ĊĠĠĠĠĠĠĠ Ġval Ġpath Ġ= Ġnode . get (" path ") ?. as Text () ĊĊĠĠĠĠĠĠĠ Ġreturn ĠRoute ( hostname Ġ= Ġhostname , Ġpath Ġ= Ġpath ) ĊĠĠĠ Ġ} Ċ }