public function isPublic() {
    $allowsAllHosts = FALSE;
    $allowsRListings = FALSE;
    foreach ($this->rules as $rule) {
      if (self::READ & $rule['mask']) {
        if (!empty($rule['rlistings'])) {
          $allowsRListings = TRUE;
        }
        elseif(!empty($rule['host']) && trim($rule['host']) == '*') {
          $allowsAllHosts = TRUE;
        }
      }
    }
    return $allowsAllHosts && $allowsRListings;
  }