package org.archive.resource.warc.record;
import java.util.logging.Logger;
import org.archive.format.dns.DNSRecord;
import org.archive.format.dns.DNSResponse;
import org.archive.resource.AbstractEmptyResource;
import org.archive.resource.MetaData;
import org.archive.resource.ResourceConstants;
import org.archive.resource.ResourceContainer;
import org.json.JSONException;
import org.json.JSONObject;
public class DNSResource extends AbstractEmptyResource implements ResourceConstants {
private static final Logger LOG =
Logger.getLogger(DNSResource.class.getName());
public DNSResource(MetaData metaData, ResourceContainer container,
DNSResponse response) {
super(metaData, container);
metaData.putString(DNS_DATE, response.getDate());
try {
for(DNSRecord rec : response) {
JSONObject rjo = new JSONObject();
rjo.put(DNS_NAME, rec.getName());
rjo.put(DNS_TTL, rec.getTtl());
rjo.put(DNS_NETCLASS, rec.getNetClass());
rjo.put(DNS_TYPE, rec.getType());
rjo.put(DNS_VALUE, rec.getValue());
metaData.appendChild(DNS_ENTRIES, rjo);
}
} catch(JSONException e) {
LOG.severe(e.getMessage());
}
}
}