public function updateRecord(Record $record, ParameterBag $parameters)
{
$res = false;
$domain = $record->getZone()->getDomain();
$info = Transip_DomainService::getInfo($domain);
$recList = $info->dnsEntries;
$tmpRec = $this->formatRecord($parameters);
$need_add = true;
foreach ($recList as &$pv) {
if ($pv->name == $tmpRec['name'] && $pv->type == $tmpRec['type']) {
if (isset($tmpRec['ttl']) && $tmpRec['ttl'] > 0) {
$pv->expire = $tmpRec['ttl'];
}
if (isset($tmpRec['data']) && strlen($tmpRec['data']) > 0) {
$pv->content = $tmpRec['data'];
}
$need_add = false;
break;
}
}
unset($pv);
if ($need_add) {
$recList[] = new Transip_DnsEntry($tmpRec['name'], $tmpRec['ttl'], $tmpRec['type'], $tmpRec['data']);
}
Transip_DomainService::setDnsEntries($domain, $recList);
$res = true;
return $res;
}