xades4j.properties.CompleteCertificateRefsProperty Maven / Gradle / Ivy
Show all versions of xades4j Show documentation
/*
* XAdES4j - A Java library for generation and verification of XAdES signatures.
* Copyright (C) 2010 Luis Goncalves.
*
* XAdES4j is free software; you can redistribute it and/or modify it under
* the terms of the GNU Lesser General Public License as published by the Free
* Software Foundation; either version 3 of the License, or any later version.
*
* XAdES4j is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public License along
* with XAdES4j. If not, see .
*/
package xades4j.properties;
import java.security.cert.X509Certificate;
import java.util.Collection;
/**
* The {@code CompleteCertificateRefs} property which contains the sequence of
* references to the full set of CA certificates that have been used to validate
* the electronic signature up to (but not including) the signer's certificate.
*
* This is an optional unsigned property that qualifies the signature. There is
* at most one occurence of this property in the signature.
*
* This property is not used directly when producing a signature. Instead, it is
* enforced by the {@link xades4j.production.XadesSigner} producing a XAdES-C.
* @author Luís
*/
public final class CompleteCertificateRefsProperty extends UnsignedSignatureProperty
{
public static final String PROP_NAME = "CompleteCertificateRefs";
private final Collection certificates;
/**
* Creates an instance of the property that will result in certificate references
* for {@code certificates}.
* @param certificates the set of certificates that will have references on the property
* @throws NullPointerException if {@code certificates} is {@code null}
*/
public CompleteCertificateRefsProperty(
Collection certificates)
{
if (null == certificates)
throw new NullPointerException();
this.certificates = certificates;
}
public Collection getCertificates()
{
return certificates;
}
@Override
public String getName()
{
return PROP_NAME;
}
}