package Ġnet . mi lo sv asic . pus sy cat . core . data Ċ Ċ import Ġnet . mi lo sv asic . pus sy cat . core . common . Filter Ċ import Ġnet . mi lo sv asic . pus sy cat . core . common . Data Filter Ċ import Ġnet . mi lo sv asic . pus sy cat . logging . LOG _ TYPE Ċ import Ġjava . util . concurrent . Copy On Write ArrayList Ċ Ċ abstract Ġclass ĠData < T >( val Ġfilter : ĠData Filter < Copy On Write ArrayList < T >, ĠString >) Ġ: ĠFilter < String , ĠT > Ġ{ ĊĊĠĠĠ Ġprotected Ġvar Ġpattern Ġ= Ġ"" ĊĠĠĠ Ġprotected Ġval Ġdata Ġ= ĠCopy On Write ArrayList < T >() ĊĊĠĠĠ Ġoverride Ġfun Ġapply ( pattern : ĠString ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . pattern Ġ= Ġpattern Ġ?: Ġ"" ĊĠĠĠĠĠĠĠ Ġfilter . apply ( data , Ġpattern ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Filter Pattern (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġpattern ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġclear () Ġ{ ĊĠĠĠĠĠĠĠ Ġdata . clear () ĊĠĠĠĠĠĠĠ Ġpattern Ġ= Ġ"" ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget (): ĠCopy On Write ArrayList < T > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġdata ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprotected Ġfun Ġevalu able ( pattern : ĠString ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġevalu able ( listOf ( pattern )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprotected Ġfun Ġevalu able ( pattern : ĠString , Ġoperator : ĠOPER ATOR ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġevalu able ( listOf ( pattern ), Ġoperator ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġabstract Ġfun Ġadd Data ( message : ĠT ) ĊĊĠĠĠ Ġprotected Ġabstract Ġfun Ġevalu able ( elements : ĠList < String >): ĠBoolean ĊĊĠĠĠ Ġprotected Ġabstract Ġfun Ġevalu able ( elements : ĠList < String >, Ġoperator : ĠOPER ATOR ): ĠBoolean ĊĊĠĠĠ Ġprotected Ġabstract Ġfun Ġevaluate And ( line : ĠT , Ġpattern : ĠString ): ĠBoolean ĊĊĠĠĠ Ġprotected Ġabstract Ġfun Ġevaluate Or ( line : ĠT , Ġpattern : ĠString ): ĠBoolean ĊĊĠĠĠ Ġprotected Ġabstract Ġfun Ġget Tag ( message : ĠT ): ĠLOG _ TYPE ? ĊĊĠĠĠ Ġprotected Ġabstract Ġfun Ġget Identifier ( message : ĠT ): ĠString ĊĊĠĠĠ Ġabstract Ġfun ĠT . contains IgnoreCase ( word : ĠString ): ĠBoolean ĊĊĠĠĠ Ġfun ĠString . contains IgnoreCase ( word : ĠString ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . toLowerCase (). contains ( word . toLowerCase ()) ĊĠĠĠ Ġ} Ċ Ċ }