![JAR search and dependency download from the Maven repository](/logo.png)
nl.open.jwtdependency.org.bouncycastle.asn1.dvcs.PathProcInput Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of java-jwt-nodependencies Show documentation
Show all versions of java-jwt-nodependencies Show documentation
This is a drop in replacement for the auth0 java-jwt library (see https://github.com/auth0/java-jwt). This jar makes sure there are no external dependencies (e.g. fasterXml, Apacha Commons) needed. This is useful when deploying to an application server (e.g. tomcat with Alfreso or Pega).
The newest version!
/***************************************************************/
/****** DO NOT EDIT THIS CLASS bc-java SOURCE FILE ******/
/***************************************************************/
package org.bouncycastle.asn1.dvcs;
import java.util.Arrays;
import org.bouncycastle.asn1.ASN1Boolean;
import org.bouncycastle.asn1.ASN1EncodableVector;
import org.bouncycastle.asn1.ASN1Object;
import org.bouncycastle.asn1.ASN1Primitive;
import org.bouncycastle.asn1.ASN1Sequence;
import org.bouncycastle.asn1.ASN1TaggedObject;
import org.bouncycastle.asn1.DERSequence;
import org.bouncycastle.asn1.DERTaggedObject;
import org.bouncycastle.asn1.x509.PolicyInformation;
/**
*
* PathProcInput ::= SEQUENCE {
* acceptablePolicySet SEQUENCE SIZE (1..MAX) OF
* PolicyInformation,
* inhibitPolicyMapping BOOLEAN DEFAULT FALSE,
* explicitPolicyReqd [0] BOOLEAN DEFAULT FALSE ,
* inhibitAnyPolicy [1] BOOLEAN DEFAULT FALSE
* }
*
*/
public class PathProcInput
extends ASN1Object
{
private PolicyInformation[] acceptablePolicySet;
private boolean inhibitPolicyMapping = false;
private boolean explicitPolicyReqd = false;
private boolean inhibitAnyPolicy = false;
public PathProcInput(PolicyInformation[] acceptablePolicySet)
{
this.acceptablePolicySet = acceptablePolicySet;
}
public PathProcInput(PolicyInformation[] acceptablePolicySet, boolean inhibitPolicyMapping, boolean explicitPolicyReqd, boolean inhibitAnyPolicy)
{
this.acceptablePolicySet = acceptablePolicySet;
this.inhibitPolicyMapping = inhibitPolicyMapping;
this.explicitPolicyReqd = explicitPolicyReqd;
this.inhibitAnyPolicy = inhibitAnyPolicy;
}
private static PolicyInformation[] fromSequence(ASN1Sequence seq)
{
PolicyInformation[] tmp = new PolicyInformation[seq.size()];
for (int i = 0; i != tmp.length; i++)
{
tmp[i] = PolicyInformation.getInstance(seq.getObjectAt(i));
}
return tmp;
}
public static PathProcInput getInstance(Object obj)
{
if (obj instanceof PathProcInput)
{
return (PathProcInput)obj;
}
else if (obj != null)
{
ASN1Sequence seq = ASN1Sequence.getInstance(obj);
ASN1Sequence policies = ASN1Sequence.getInstance(seq.getObjectAt(0));
PathProcInput result = new PathProcInput(fromSequence(policies));
for (int i = 1; i < seq.size(); i++)
{
Object o = seq.getObjectAt(i);
if (o instanceof ASN1Boolean)
{
ASN1Boolean x = ASN1Boolean.getInstance(o);
result.setInhibitPolicyMapping(x.isTrue());
}
else if (o instanceof ASN1TaggedObject)
{
ASN1TaggedObject t = ASN1TaggedObject.getInstance(o);
ASN1Boolean x;
switch (t.getTagNo())
{
case 0:
x = ASN1Boolean.getInstance(t, false);
result.setExplicitPolicyReqd(x.isTrue());
break;
case 1:
x = ASN1Boolean.getInstance(t, false);
result.setInhibitAnyPolicy(x.isTrue());
break;
default:
throw new IllegalArgumentException("Unknown tag encountered: " + t.getTagNo());
}
}
}
return result;
}
return null;
}
public static PathProcInput getInstance(
ASN1TaggedObject obj,
boolean explicit)
{
return getInstance(ASN1Sequence.getInstance(obj, explicit));
}
public ASN1Primitive toASN1Primitive()
{
ASN1EncodableVector v = new ASN1EncodableVector();
ASN1EncodableVector pV = new ASN1EncodableVector();
for (int i = 0; i != acceptablePolicySet.length; i++)
{
pV.add(acceptablePolicySet[i]);
}
v.add(new DERSequence(pV));
if (inhibitPolicyMapping)
{
v.add(ASN1Boolean.getInstance(inhibitPolicyMapping));
}
if (explicitPolicyReqd)
{
v.add(new DERTaggedObject(false, 0, ASN1Boolean.getInstance(explicitPolicyReqd)));
}
if (inhibitAnyPolicy)
{
v.add(new DERTaggedObject(false, 1, ASN1Boolean.getInstance(inhibitAnyPolicy)));
}
return new DERSequence(v);
}
public String toString()
{
return "PathProcInput: {\n" +
"acceptablePolicySet: " + Arrays.asList(acceptablePolicySet) + "\n" +
"inhibitPolicyMapping: " + inhibitPolicyMapping + "\n" +
"explicitPolicyReqd: " + explicitPolicyReqd + "\n" +
"inhibitAnyPolicy: " + inhibitAnyPolicy + "\n" +
"}\n";
}
public PolicyInformation[] getAcceptablePolicySet()
{
return acceptablePolicySet;
}
public boolean isInhibitPolicyMapping()
{
return inhibitPolicyMapping;
}
private void setInhibitPolicyMapping(boolean inhibitPolicyMapping)
{
this.inhibitPolicyMapping = inhibitPolicyMapping;
}
public boolean isExplicitPolicyReqd()
{
return explicitPolicyReqd;
}
private void setExplicitPolicyReqd(boolean explicitPolicyReqd)
{
this.explicitPolicyReqd = explicitPolicyReqd;
}
public boolean isInhibitAnyPolicy()
{
return inhibitAnyPolicy;
}
private void setInhibitAnyPolicy(boolean inhibitAnyPolicy)
{
this.inhibitAnyPolicy = inhibitAnyPolicy;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy