public static function getUserDataArray($rowSets)
 {
     $usersData = array();
     if (!empty($rowSets)) {
         foreach ($rowSets as $userDataRow) {
             $userData = new UserData($userDataRow);
             $userDataId = $userDataRow['userDataId'];
             // The UserData constructor does not set the userDataId for
             // a new UserData object; the UserData table takes care of that
             // during insertion. Here we manually set the userDataId to
             // complete the UserData object.
             $userData->setUserDataId($userDataId);
             // We should also get the user's associated skills
             $skillAssocs = SkillAssocsDB::getSkillAssocsBy('userDataId', $userDataId);
             $skill_areas = array();
             foreach ($skillAssocs as $skillAssoc) {
                 $skillId = $skillAssoc->getSkillId();
                 // skillIds start from 1, however array-indexing
                 // starts at 0; so we use an offset of -1 when retrieving
                 // values from $SKILL_AREAS
                 $skill_name = Skill::$SKILL_AREAS[$skillId - 1];
                 array_push($skill_areas, $skill_name);
             }
             $userData->setSkillAreas($skill_areas);
             array_push($usersData, $userData);
         }
     }
     return $usersData;
 }