org.spongycastle.ocsp.RevokedStatus Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of scprov-jdk15 Show documentation
Show all versions of scprov-jdk15 Show documentation
Spongy Castle is a package-rename (org.bouncycastle.* to org.spongycastle.*) of Bouncy Castle intended for Android.
Android ships with a stripped-down version of Bouncy Castle - this causes classloader collisions if you try to add
an alternative (updated/complete) Bouncy Castle jar.
This jar contains JCE provider and lightweight API for the Bouncy Castle Cryptography APIs for JDK 1.5.
package org.spongycastle.ocsp;
import org.spongycastle.asn1.DERGeneralizedTime;
import org.spongycastle.asn1.ocsp.RevokedInfo;
import org.spongycastle.asn1.x509.CRLReason;
import java.text.ParseException;
import java.util.Date;
/**
* wrapper for the RevokedInfo object
*/
public class RevokedStatus
implements CertificateStatus
{
RevokedInfo info;
public RevokedStatus(
RevokedInfo info)
{
this.info = info;
}
public RevokedStatus(
Date revocationDate,
int reason)
{
this.info = new RevokedInfo(new DERGeneralizedTime(revocationDate), new CRLReason(reason));
}
public Date getRevocationTime()
{
try
{
return info.getRevocationTime().getDate();
}
catch (ParseException e)
{
throw new IllegalStateException("ParseException:" + e.getMessage());
}
}
public boolean hasRevocationReason()
{
return (info.getRevocationReason() != null);
}
/**
* return the revocation reason. Note: this field is optional, test for it
* with hasRevocationReason() first.
* @return the revocation reason value.
* @exception IllegalStateException if a reason is asked for and none is avaliable
*/
public int getRevocationReason()
{
if (info.getRevocationReason() == null)
{
throw new IllegalStateException("attempt to get a reason where none is available");
}
return info.getRevocationReason().getValue().intValue();
}
}