Skip to content

Instantly share code, notes, and snippets.

@onilton
Forked from felipehummel/refactor2.scala
Created February 17, 2012 12:56
Show Gist options
  • Save onilton/1853265 to your computer and use it in GitHub Desktop.
Save onilton/1853265 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.foreach { followerId =>
addClipToTimeline(followerId, 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