package Ġcom . ur ban air ship . preference center Ċ Ċ import Ġcom . ur ban air ship . actions . Action Ċ import Ġcom . ur ban air ship . actions . Action Arguments Ċ import Ġcom . ur ban air ship . actions . ActionResult Ċ import Ġcom . ur ban air ship . util . Air ship Component Utils Ċ import Ġjava . util . concurrent . Callable Ċ Ċ /** Ċ Ġ* ĠOpen s Ġa ĠPreference ĠCenter . Ċ Ġ*/ Ċ class ĠOpen Preference Center Action ( ĊĠĠĠ Ġprivate Ġval Ġpreference Center Callable : ĠCallable < Preference Center > Ġ= ĠAir ship Component Utils . callable For Component ( Preference Center :: class . java ) Ċ ) Ġ: ĠAction () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġaccepts Arguments ( arguments : ĠAction Arguments ): ĠBoolean Ġ= ĊĠĠĠĠĠĠĠ Ġwhen Ġ( arguments . sit uation ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠS IT UATION _ PUSH _ OPEN ED , ĠS IT UATION _ WEB _ VIEW _ IN VOC ATION , ĠS IT UATION _ MAN UAL _ IN VOC ATION , ĠS IT UATION _ FO REG ROUND _ NOTIFICATION _ ACTION _ BUTTON , ĠS IT UATION _ AUT OM ATION Ġ-> Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ ĠS IT UATION _ BACKGROUND _ NOTIFICATION _ ACTION _ BUTTON , ĠS IT UATION _ PUSH _ RECE IVED Ġ-> Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġperform ( arguments : ĠAction Arguments ): ĠActionResult Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpreference Center Id Ġ= Ġarguments . value . map ?. opt (" preference _ center _ id ") ?. string ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( preference Center Id Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmsg Ġ= Ġ" Failed Ġto Ġperform ĠOpen Preference Center Action ! ĠRequired Ġargument Ġ' preference _ center _ id ' Ġis Ġnull ." ĊĠĠĠĠĠĠĠĠĠĠĠ ĠActionResult . new Error Result ( IllegalArgumentException ( msg )) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpreference Center Callable . call (). open ( preference Center Id ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠActionResult . new Empty Result () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġshould Run On MainThread (): ĠBoolean Ġ= Ġtrue Ċ } Ċ