Skip to content

Instantly share code, notes, and snippets.

@felipehummel
Created February 17, 2012 04:44
Show Gist options
  • Save felipehummel/1850746 to your computer and use it in GitHub Desktop.
Save felipehummel/1850746 to your computer and use it in GitHub Desktop.
Refactor implicit
def create(userId: String, feedItemId: String) {
println("user: "+userId + " clipou: "+feedItemId)
redisClientPool.withClient { implicit client =>
val itemsAdded = addItemToClips(userId, feedItemId)
if (itemsAdded != 0) {
addClipToTimeline(userId, feedItemId)
userFollowersSet(userId).flatten { followersIds =>
addClipToTimeline(userId, feedItemId)
}
}
}
}
def addClipToTimeline(userId: String, feedItemId: String)(client: RedisClient) =
client.lpush("user:"+userId+":timeline","c|"+feedItemId+"|"+userId)
def userFollowersSet(userId: String)(client: RedisClient) : Set[Option[String]] =
client.smembers("user:"+userId+":followers").getOrElse(Some(Set())
def addItemToClips(userId, feedItemId: String)(client: RedisClient) : Int =
client.sadd("user:"+userId+":clips", feedItemId).getOrElse(0)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment