2 namespace dns\system\cache\builder
;
6 * @author Jan Altensen (Stricted)
7 * @copyright 2013-2015 Jan Altensen (Stricted)
9 class DNSApiCacheBuilder
extends AbstractCacheBuilder
{
11 * @see \dns\system\cache\builder\AbstractCacheBuilder::$maxLifetime
13 protected $maxLifetime = 30;
16 * @see \dns\system\cache\builder\AbstractCacheBuilder::rebuild()
18 public function rebuild(array $parameters) {
21 $sql = "SELECT * FROM dns_soa where active = ?";
22 $statement = DNS
::getDB()->query($sql, array(1));
24 while ($zone = DNS
::getDB()->fetch_array($statement)) {
25 $data[$zone['origin']] = array();
26 $data[$zone['origin']]['soa'] = $zone;
27 $data[$zone['origin']]['rr'] = array();
28 $data[$zone['origin']]['sec'] = array();
30 /* resource records */
31 $sql2 = "SELECT * FROM dns_rr where zone = ? and active = ?";
32 $statement2 = DNS
::getDB()->query($sql2, array($zone['id'], 1));
33 while ($rr = DNS
::getDB()->fetch_array($statement2)) {
34 $data[$zone['origin']]['rr'][] = $rr;
39 $sql3 = "SELECT * FROM dns_sec where zone = ? and active = ?";
40 $statement3 = DNS
::getDB()->query($sql3, array($zone['id'], 1));
41 while ($sec = DNS
::getDB()->fetch_array($statement3)) {
42 $data[$zone['origin']]['sec'][] = $sec;