// ĠCopyright Ġ 2 0 1 7 - 2 0 2 0 ĠFit bit , ĠInc Ċ // ĠSPDX - License - Identifier : ĠApache - 2 . 0 Ċ Ċ package Ġcom . fit bit . remote api Ċ Ċ /** Ċ Ġ* ĠEnum Ġrepresenting Ġa Ġpeer Ġid Ġtype Ċ Ġ*/ Ċ enum Ġclass ĠPeer IdType ( val Ġvalue : ĠString ) Ġ{ ĊĠĠĠ ĠNAME (" name "), ĊĠĠĠ ĠPRODUCT _ ID (" productId "), ĊĠĠĠ ĠW I RE _ ID (" wire Id "), ĊĠĠĠ ĠMAC _ ADDRESS (" mac Address "); ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġfrom String ( value : ĠString ) Ġ= ĠPeer IdType . values (). first OrNull Ġ{ Ġit . value Ġ== Ġvalue Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ?: Ġthrow ĠIllegalArgumentException (" The Ġvalue Ġ'$ value ' Ġprovided Ġdoes Ġnot Ġmatch Ġan Ġenum Ġvalue ") ĊĠĠĠ Ġ} Ċ } Ċ Ċ /** Ċ Ġ* ĠData Ġclass Ġidentifying Ġa Ġpeer Ġthrough Ġit 's Ġidentifier Ġand Ġ[ Peer IdType ] Ċ Ġ* Ġ@ param Ġid ĠThe Ġid Ċ Ġ* Ġ@ param Ġtype ĠThe Ġtype Ċ Ġ*/ Ċ data Ġclass ĠPeer Id ( val Ġid : String , Ġval Ġtype : Peer IdType ) Ċ