|
|
|
|
|
|
|
*/ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
*/ |
|
package com.sun.org.apache.xml.internal.security.keys.content.x509; |
|
|
|
import java.math.BigInteger; |
|
import java.security.cert.X509Certificate; |
|
|
|
import com.sun.org.apache.xml.internal.security.exceptions.XMLSecurityException; |
|
import com.sun.org.apache.xml.internal.security.utils.Constants; |
|
import com.sun.org.apache.xml.internal.security.utils.RFC2253Parser; |
|
import com.sun.org.apache.xml.internal.security.utils.SignatureElementProxy; |
|
import org.w3c.dom.Document; |
|
import org.w3c.dom.Element; |
|
|
|
public class XMLX509IssuerSerial extends SignatureElementProxy implements XMLX509DataContent { |
|
|
|
private static final com.sun.org.slf4j.internal.Logger LOG = |
|
com.sun.org.slf4j.internal.LoggerFactory.getLogger(XMLX509IssuerSerial.class); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
*/ |
|
public XMLX509IssuerSerial(Element element, String baseURI) throws XMLSecurityException { |
|
super(element, baseURI); |
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
*/ |
|
public XMLX509IssuerSerial(Document doc, String x509IssuerName, BigInteger x509SerialNumber) { |
|
super(doc); |
|
addReturnToSelf(); |
|
addTextElement(x509IssuerName, Constants._TAG_X509ISSUERNAME); |
|
addTextElement(x509SerialNumber.toString(), Constants._TAG_X509SERIALNUMBER); |
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
*/ |
|
public XMLX509IssuerSerial(Document doc, String x509IssuerName, String x509SerialNumber) { |
|
this(doc, x509IssuerName, new BigInteger(x509SerialNumber)); |
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
*/ |
|
public XMLX509IssuerSerial(Document doc, String x509IssuerName, int x509SerialNumber) { |
|
this(doc, x509IssuerName, new BigInteger(Integer.toString(x509SerialNumber))); |
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
*/ |
|
public XMLX509IssuerSerial(Document doc, X509Certificate x509certificate) { |
|
this( |
|
doc, |
|
x509certificate.getIssuerX500Principal().getName(), |
|
x509certificate.getSerialNumber() |
|
); |
|
} |
|
|
|
|
|
|
|
|
|
|
|
*/ |
|
public BigInteger getSerialNumber() { |
|
String text = |
|
this.getTextFromChildElement(Constants._TAG_X509SERIALNUMBER, Constants.SignatureSpecNS); |
|
LOG.debug("X509SerialNumber text: {}", text); |
|
|
|
return new BigInteger(text); |
|
} |
|
|
|
|
|
|
|
|
|
|
|
*/ |
|
public int getSerialNumberInteger() { |
|
return this.getSerialNumber().intValue(); |
|
} |
|
|
|
|
|
|
|
|
|
|
|
*/ |
|
public String getIssuerName() { |
|
return RFC2253Parser.normalize( |
|
this.getTextFromChildElement(Constants._TAG_X509ISSUERNAME, Constants.SignatureSpecNS) |
|
); |
|
} |
|
|
|
|
|
public boolean equals(Object obj) { |
|
if (!(obj instanceof XMLX509IssuerSerial)) { |
|
return false; |
|
} |
|
|
|
XMLX509IssuerSerial other = (XMLX509IssuerSerial) obj; |
|
|
|
return this.getSerialNumber().equals(other.getSerialNumber()) |
|
&& this.getIssuerName().equals(other.getIssuerName()); |
|
} |
|
|
|
public int hashCode() { |
|
int result = 17; |
|
result = 31 * result + getSerialNumber().hashCode(); |
|
result = 31 * result + getIssuerName().hashCode(); |
|
return result; |
|
} |
|
|
|
|
|
public String getBaseLocalName() { |
|
return Constants._TAG_X509ISSUERSERIAL; |
|
} |
|
} |