All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.minidns.dnssec.DnssecQueryResult Maven / Gradle / Ivy

The newest version!
/*
 * Copyright 2015-2024 the original author or authors
 *
 * This software is licensed under the Apache License, Version 2.0,
 * the GNU Lesser General Public License version 2 or later ("LGPL")
 * and the WTFPL.
 * You may choose either license to govern your use of this software only
 * upon the condition that you accept all of the terms of either
 * the Apache License 2.0, the LGPL 2.1+ or the WTFPL.
 */
package org.minidns.dnssec;

import java.util.Collections;
import java.util.Set;

import org.minidns.dnsmessage.DnsMessage;
import org.minidns.dnsqueryresult.DnsQueryResult;
import org.minidns.record.RRSIG;
import org.minidns.record.Record;

public class DnssecQueryResult {

    public final DnsMessage synthesizedResponse;
    public final DnsQueryResult dnsQueryResult;

    private final Set> signatures;
    private final Set dnssecUnverifiedReasons;

    DnssecQueryResult(DnsMessage synthesizedResponse, DnsQueryResult dnsQueryResult, Set> signatures,
            Set dnssecUnverifiedReasons) {
        this.synthesizedResponse = synthesizedResponse;
        this.dnsQueryResult = dnsQueryResult;
        this.signatures = Collections.unmodifiableSet(signatures);
        if (dnssecUnverifiedReasons == null) {
            this.dnssecUnverifiedReasons = Collections.emptySet();
        } else {
            this.dnssecUnverifiedReasons = Collections.unmodifiableSet(dnssecUnverifiedReasons);
        }
    }

    public boolean isAuthenticData() {
        return dnssecUnverifiedReasons.isEmpty();
    }

    public Set> getSignatures() {
        return signatures;
    }

    public Set getUnverifiedReasons() {
        return dnssecUnverifiedReasons;
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy