private function buildQuery($filter, $user_phid)
 {
     $query = new DifferentialRevisionQuery();
     $query->needRelationships(true);
     switch ($filter) {
         case 'active':
             $query->withResponsibleUsers(array($user_phid));
             $query->withStatus(DifferentialRevisionQuery::STATUS_OPEN);
             $query->setLimit(null);
             break;
         case 'revisions':
             $query->withAuthors(array($user_phid));
             break;
         case 'reviews':
             $query->withReviewers(array($user_phid));
             break;
         case 'subscribed':
             $query->withSubscribers(array($user_phid));
             break;
         case 'drafts':
             $query->withDraftRepliesByAuthors(array($user_phid));
             break;
         case 'all':
             break;
         default:
             throw new Exception("Unknown filter '{$filter}'!");
     }
     return $query;
 }