package Ġcom . stream _ suite . link . shared . util Ċ Ċ import Ġandroid . content . Context Ċ import Ġcom . stream _ suite . link . api . implementation . Account Ċ import Ġcom . stream _ suite . link . shared . data . DataSource Ċ import Ġcom . stream _ suite . link . shared . data . MimeType Ċ import Ġcom . stream _ suite . link . shared . data . Settings Ċ import Ġcom . stream _ suite . link . shared . data . model . Conversation Ċ import Ġcom . stream _ suite . link . shared . data . model . Message Ċ import Ġcom . stream _ suite . link . shared . service . message _ parser . Auto Reply Parser Service Ċ import Ġcom . stream _ suite . link . shared . service . message _ parser . Media Parser Service Ċ import Ġcom . stream _ suite . link . shared . service . message _ parser . V card Parser Service Ċ import Ġcom . stream _ suite . link . shared . util . media . parsers . Article Parser Ċ Ċ @ Suppress (" Red undant If ") Ċ class ĠMessage Insertion Metadata Helper ( private Ġval Ġcontext : ĠContext ) Ġ{ ĊĊĠĠĠ Ġprivate Ġfun Ġshould Process On This Device (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ(! Account . exists () Ġ|| ĠAccount . primary ) Ġ&& Ġ! W ear able Check . is Android W ear ( context ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġprocess ( message : ĠMessage ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ(! should Process On This Device ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġconversation Ġ= Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠDataSource . get Conversation ( context , Ġmessage . conversation Id ) ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ( conversation Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprocess ( message , Ġconversation ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġprocess ( message : ĠMessage , Ġconversation : ĠCon versation ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( message . mime Type Ġ== ĠMime Type . TEXT _ PLAIN Ġ&& Ġcan Process Media ( message )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMedia Parser Service . start ( context , Ġmessage ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ( message . type Ġ== ĠMessage . TYPE _ RECE IVED Ġ&& Ġcan Process Auto Reply ( message , Ġconversation )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAuto Reply Parser Service . start ( context , Ġmessage ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ( MimeType . is V card ( message . mime Type !! ) Ġ&& Ġcan Process V card ( message )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠV card Parser Service . start ( context , Ġmessage ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġcan Process Media ( message : ĠMessage ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġparser Ġ= ĠMedia Parser Service . create Parser ( context , Ġmessage ) ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( parser Ġ== Ġnull Ġ|| Ġ(! Settings . internal Browser Ġ&& Ġparser Ġis ĠArticle Parser )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfalse ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġcan Process Auto Reply ( message : ĠMessage , Ġconversation : ĠCon versation ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAuto Reply Parser Service . create Parsers ( context , Ġconversation , Ġmessage ). isNotEmpty () ĊĊĠĠĠ Ġprivate Ġfun Ġcan Process V card ( message : ĠMessage ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠV card Parser Service . create Parsers ( context , Ġmessage ). isNotEmpty () Ċ Ċ }