package Ġapp . model Ċ Ċ import Ġapp . Protos Ċ import Ġcom . google . protobuf . InvalidProtocolBufferException Ċ import Ġjava . security . Invalid Parameter Exception Ċ Ċ /** Ċ Ġ* ĠUsed Ġto Ġdescribe Ġprocessing Ġof Ġmultiple Ġrepos . Ċ Ġ*/ Ċ data Ġclass ĠProcess ( ĊĠĠĠ Ġvar Ġid : ĠInt Ġ= Ġ 0 , ĊĠĠĠ Ġvar Ġrequest Num Entries : ĠInt Ġ= Ġ 0 , ĊĠĠĠ Ġvar Ġentries : ĠList < Process Entry > Ġ= Ġmutable ListOf () Ċ ) Ġ{ ĊĠĠĠ Ġ@ Throws ( Invalid Parameter Exception :: class ) ĊĠĠĠ Ġconstructor ( proto : ĠProto s . Process ) Ġ: Ġthis () Ġ{ ĊĠĠĠĠĠĠĠ Ġid Ġ= Ġproto . id ĊĠĠĠĠĠĠĠ Ġrequest Num Entries Ġ= Ġproto . request Num Entries ĊĠĠĠĠĠĠĠ Ġentries Ġ= Ġproto . entries List . map Ġ{ ĠProcess Entry ( it ) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Throws ( InvalidProtocolBufferException :: class ) ĊĠĠĠ Ġconstructor ( bytes : ĠByteArray ) Ġ: Ġthis ( Protos . Process . parseFrom ( bytes )) ĊĊĠĠĠ Ġconstructor ( serialized : ĠString ) Ġ: Ġthis ( serialized . toByteArray ()) ĊĊĠĠĠ Ġfun Ġget Proto (): ĠProto s . Process Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠProto s . Process . newBuilder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setId ( id ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setRequest Num Entries ( request Num Entries ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. addAll Entries ( entries . map Ġ{ Ġit . get Proto () Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġserialize (): ĠByteArray Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġget Proto (). toByteArray () ĊĠĠĠ Ġ} Ċ } Ċ