package Ġch . r my . android . http _ shortcuts . script ing . actions . types Ċ Ċ import Ġch . r my . android . http _ shortcuts . R Ċ import Ġch . r my . android . http _ shortcuts . data . Common s Ċ import Ġch . r my . android . http _ shortcuts . data . DataSource Ċ import Ġch . r my . android . http _ shortcuts . exceptions . Action Exception Ċ import Ġch . r my . android . http _ shortcuts . script ing . ExecutionContext Ċ import Ġch . r my . android . http _ shortcuts . utils . Date Util Ċ import Ġio . reactivex . Comp letable Ċ Ċ class ĠTrigger Shortcut Action ( ĊĠĠĠ Ġprivate Ġval Ġshortcut Name Or Id : ĠString ?, ĊĠĠĠ Ġprivate Ġval Ġvariable Values : ĠMap < String , ĠAny ?> ?, ĊĠĠĠ Ġprivate Ġval Ġdelay : ĠInt ?, Ċ ) Ġ: ĠBase Action () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġexecute ( executionContext : ĠExecutionContext ): ĠComp letable Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( executionContext . recursion Depth Ġ>= ĠMAX _ REC UR SION _ DEPTH ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠComp letable ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. error ( Action Exception Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . getString ( R . string . action _ type _ trigger _ shortcut _ error _ recursion _ depth _ re ached ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġshortcut Ġ= ĠDataSource . get Shortcut ByName Or Id ( shortcut Name Or Id Ġ?: Ġexecution Context . shortcut Id ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ?: Ġreturn ĠComp letable ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. error ( Action Exception Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . getString ( R . string . error _ shortcut _ not _ found _ for _ trigger ing , Ġshortcut Name Or Id ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĊĠĠĠĠĠĠĠ Ġval Ġdelay Ġ= Ġdelay Ġ?: Ġshortcut . delay ĊĊĠĠĠĠĠĠĠ Ġreturn ĠCommons . create Pending Execution ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġshortcut Id Ġ= Ġshortcut . id , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresolved Variables Ġ= Ġvariable Values ?. map Values Ġ{ Ġit . toString () Ġ} Ġ?: Ġempty Map (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Number Ġ= Ġ 0 , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwait Until Ġ= ĠDate Util . calculate Date ( delay ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrequires Network Ġ= Ġshortcut . is WaitFor Network , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrecursion Depth Ġ= Ġif Ġ( delay Ġ>= Ġ 5 0 0 ) Ġ 0 Ġelse Ġexecution Context . recursion Depth Ġ+ Ġ 1 , ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠMAX _ REC UR SION _ DEPTH Ġ= Ġ 5 ĊĠĠĠ Ġ} Ċ Ċ } Ċ