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

nl.open.jwtdependency.org.bouncycastle.asn1.dvcs.PathProcInput Maven / Gradle / Ivy

Go to download

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