package Ġcom . j sh v arts . conduct orm vp . add note Ċ Ċ import Ġcom . j sh v arts . conduct orm vp . mvp . Base Presenter Ċ import Ġcom . j sh v arts . not ed omain . model . Note Ċ import Ġcom . j sh v arts . not ed omain . use cases . Add Note UseCase Ċ import Ġio . reactivex . android . schedul ers . Android Schedulers Ċ import Ġio . reactivex . schedul ers . Schedulers Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠAdd Note Presenter Ġ@ Inject Ġconstructor ( private Ġval Ġadd Note UseCase : ĠAdd Note UseCase ) Ġ: ĠBase Presenter < Add Note View >(), ĠAdd Note Contract . Presenter Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġadd Note ( note Text : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġdis pos ables . add ( add Note UseCase . add ( Note ( note Text Ġ= Ġnote Text )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe On ( Schedulers . io ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. observe On ( Android Schedulers . main Thread ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe ({ Ġview ?. on Add Note Success () Ġ}, Ġthis :: on Add Note Error )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġon Add Note Error ( throwable : ĠThrowable ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen ( throwable ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠIllegalArgumentException Ġ-> Ġview ?. on Note Validation Failed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġview ?. on Add Note Error ( throwable ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }