/**
  *
  * @param integer straatnaamId
  * @param integer sorteerVeld Zie de HUISNR_SORT_ constanten.
  * @return array Een associatieve array met de volgende sleutels:
  * <ul>
  *  <li>huisnummer: Het huisnummer in tesktvorm.</li>
  *  <li>huisnummerId: Een uniek nummer voor het huisnummer.</li>
  * </ul>
  * @throws InvalidArgumentException Indien er een foute parameter wordt doorgegeven.
  * @throws RuntimeException Indien de lijst met huisnummers niet geladen kan worden.
  */
 public function listHuisnummersByStraatnaamId($straatnaamId, $sorteerVeld = self::HUISNR_SORT_NAAM)
 {
     if ($sorteerVeld < 1 || $sorteerVeld > 2) {
         throw new InvalidArgumentException("De parameter sorteerVeld van de functie listHuisnummersByStraatnaamId moet tussen 1 en 2 liggen!");
     }
     $functionParameters = func_get_args();
     $result = $this->_cache->cacheGet($this->getCacheName(__FUNCTION__), $functionParameters);
     if ($result != false) {
         return unserialize($result);
     }
     $params = new StdClass();
     $params->StraatnaamId = (int) $straatnaamId;
     $params->SorteerVeld = (int) $sorteerVeld;
     $paramsWrapper = new SoapParam($params, "ListHuisnummersByStraatnaamId");
     try {
         $result = $this->_client->ListHuisnummersByStraatnaamId($paramsWrapper);
     } catch (Exception $e) {
         throw new RuntimeException('Kon de lijst met huisnummers niet laden wegens: ' . $e->getMessage());
     }
     $huisnummers = array();
     if (isset($result->ListHuisnummersByStraatnaamIdResult->HuisnummerItem)) {
         foreach ($result->ListHuisnummersByStraatnaamIdResult->HuisnummerItem as $huisnummer) {
             $huisnummerArray = array();
             $huisnummerArray['huisnummer'] = $huisnummer->Huisnummer;
             $huisnummerArray['huisnummerId'] = (int) $huisnummer->HuisnummerId;
             $huisnummers[] = $huisnummerArray;
         }
     }
     $this->_cache->cachePut($this->getCacheName(__FUNCTION__), $functionParameters, serialize($huisnummers));
     return $huisnummers;
 }