public function getRoles()
 {
     // sleep for creation of new roles
     sleep(5);
     $this->role_name_object_map = array();
     $this->role_id_object_map = array();
     $search_for = new \stdClass();
     $search_for->matchType = c\T::MATCH_ANY;
     $search_for->searchRoles = true;
     $search_for->assetName = '*';
     $this->service->search($search_for);
     if ($this->service->isSuccessful()) {
         if (!is_null($this->service->getSearchMatches()->match)) {
             $roles = $this->service->getSearchMatches()->match;
             $this->roles = array();
             foreach ($roles as $role) {
                 $role_identifier = new p\Identifier($role);
                 $this->roles[] = $role_identifier;
                 $role_object = $role_identifier->getAsset($this->service);
                 if (self::DEBUG) {
                     u\DebugUtility::out($role_object->getName());
                 }
                 $this->role_name_object_map[$role_object->getName()] = $role_object;
                 $this->role_id_object_map[$role_object->getId()] = $role_object;
             }
         }
     }
     return $this->roles;
 }