in src/main/scala/security/ApiKeyAuth.scala [49:63]
def extractUserTier(req:Request[IO]):Option[UserTier] = {
req.headers
.get(ApiKeyAuth.name)
.flatMap(keyValue=>{
lookUpInCache(keyValue.head.value) match {
case Some(tier)=>Some(tier)
case None=>
for {
tierName <- lookUpKey(keyValue.head.value)
tier <- UserTier(tierName)
_ = updateCache(keyValue.head.value, tier)
} yield tier
}
})
}