/* Ċ Ġ* ĠCopyright Ġ 2 0 1 6 ĠAnd y ĠB ao Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġxyz . null dev . ts . api . http . manga Ċ Ċ import Ġeu . kan ade . t ach iy omi . data . database . models . M anga Ċ import Ġjava . util .* Ċ Ċ /** Ċ Ġ* ĠProject : ĠT ach i Server Ċ Ġ* ĠAuthor : Ġnull dev Ċ Ġ* ĠCreation ĠDate : Ġ 3 0 / 0 9 / 1 6 Ċ Ġ*/ Ċ enum Ġclass ĠM anga Flag Ġconstructor ( private Ġval Ġflag Mask : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar arg Ġval Ġflag States : ĠM anga Flag . Flag State ) Ġ{ ĊĠĠĠ ĠSORT _ DIRECTION ( M anga . SORT _ MASK , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFlag State (" DESC ENDING ", ĠM anga . SORT _ DESC ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFlag State (" ASC ENDING ", ĠM anga . SORT _ ASC )), ĊĠĠĠ ĠDISPLAY _ MODE ( M anga . DISPLAY _ MASK , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFlag State (" NAME ", ĠM anga . DISPLAY _ NAME ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFlag State (" NUMBER ", ĠM anga . DISPLAY _ NUMBER )), ĊĠĠĠ ĠREAD _ FILTER ( M anga . READ _ MASK , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFlag State (" READ ", M anga . SHOW _ READ ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFlag State (" UN READ ", ĠM anga . SHOW _ UN READ ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFlag State (" ALL ", ĠM anga . SHOW _ ALL )), ĊĠĠĠ ĠDOWN LOADED _ FILTER ( M anga . DOWN LOADED _ MASK , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFlag State (" DOWN LOADED ", ĠM anga . SHOW _ DOWN LOADED ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFlag State (" NOT _ DOWN LOADED ", ĠM anga . SHOW _ NOT _ DOWN LOADED ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFlag State (" ALL ", ĠM anga . SHOW _ ALL )), ĊĠĠĠ ĠSORT _ TYPE ( M anga . SORT ING _ MASK , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFlag State (" SOURCE ", ĠM anga . SORT ING _ SOURCE ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFlag State (" NUMBER ", ĠM anga . SORT ING _ NUMBER )); ĊĊĠĠĠ Ġfun Ġfind Flag State ( name : ĠString ): ĠFlag State ? Ġ{ ĊĠĠĠĠĠĠĠ Ġfor Ġ( state Ġin Ġflag States ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( state . name Ġ== Ġname ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġstate ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġnull ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġfind Flag State ( value : ĠInt ): ĠFlag State ? Ġ{ ĊĠĠĠĠĠĠĠ Ġfor Ġ( state Ġin Ġflag States ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( state . value Ġ== Ġvalue ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġstate ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġnull ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoperator Ġfun Ġset ( manga : ĠM anga , Ġstate : ĠFlag State ) Ġ{ ĊĠĠĠĠĠĠĠ Ġset Flag ( manga , Ġstate . value , Ġflag Mask ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġset Flag ( manga : ĠM anga , Ġflag : ĠInt , Ġmask : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġm anga . chapter _ flags Ġ= Ġm anga . chapter _ flags Ġand Ġmask . inv () Ġor Ġ( flag Ġand Ġmask ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoperator Ġfun Ġget ( manga : ĠM anga ): ĠFlag State ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġfind Flag State ( manga . chapter _ flags Ġand Ġflag Mask ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ" M anga Flag {" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" flag Mask =" Ġ+ Ġflag Mask Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ", Ġflag States =" Ġ+ ĠArrays . toString ( flag States ) Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ' }' ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠFlag State Ġinternal Ġconstructor ( val Ġname : ĠString ?, Ġval Ġvalue : ĠInt ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġequals ( other : ĠAny ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( this Ġ=== Ġother ) Ġreturn Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( other Ġ== Ġnull Ġ|| Ġjava Class Ġ!= Ġother . java Class ) Ġreturn Ġfalse ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġflag State Ġ= Ġother Ġas ĠFlag State ? ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġvalue Ġ== Ġflag State !!. value Ġ&& Ġif Ġ( name Ġ!= Ġnull ) Ġname Ġ== Ġflag State . name Ġelse Ġflag State . name Ġ== Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠhashCode (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġresult Ġ= Ġif Ġ( name Ġ!= Ġnull ) Ġname . hashCode () Ġelse Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġvalue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġresult ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġ" Flag State { name ='$ name ', Ġvalue =$ value }" ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ