public function findAll($page = 1, $perPage = 0)
  {
    $this->db->select()
             ->from($this->getSource());
    
    if(is_numeric($perPage) && $perPage > 0){
      $this->db->limit($perPage);
      
      if(is_numeric($page) && $page > 1){
        $offset = $this->paging->getOffset($page, $perPage);
        $this->db->offset($offset);
      }
    }
    
    $this->db->execute();
    $this->db->setFetchModeClass(__CLASS__);
    return $this->db->fetchAll();
  }