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

org.bouncycastle.oer.its.ieee1609dot2.Ieee1609Dot2Data Maven / Gradle / Ivy

Go to download

The Bouncy Castle Java APIs for ASN.1 extension and utility APIs used to support bcpkix and bctls. This jar contains APIs for JDK 1.8 and up.

There is a newer version: 1.78.1
Show newest version
package org.bouncycastle.oer.its.ieee1609dot2;

import java.util.Iterator;

import org.bouncycastle.asn1.ASN1Encodable;
import org.bouncycastle.asn1.ASN1Object;
import org.bouncycastle.asn1.ASN1Primitive;
import org.bouncycastle.asn1.ASN1Sequence;
import org.bouncycastle.oer.its.ItsUtils;
import org.bouncycastle.oer.its.etsi102941.InnerEcRequestSignedForPop;
import org.bouncycastle.oer.its.etsi103097.EtsiTs103097Data;
import org.bouncycastle.oer.its.etsi103097.EtsiTs103097DataEncrypted;
import org.bouncycastle.oer.its.etsi103097.EtsiTs103097DataEncryptedUnicast;
import org.bouncycastle.oer.its.etsi103097.EtsiTs103097DataSigned;
import org.bouncycastle.oer.its.etsi103097.EtsiTs103097DataSignedAndEncrypted;
import org.bouncycastle.oer.its.etsi103097.EtsiTs103097DataSignedAndEncryptedUnicast;
import org.bouncycastle.oer.its.etsi103097.EtsiTs103097DataSignedExternalPayload;
import org.bouncycastle.oer.its.etsi103097.EtsiTs103097DataUnsecured;
import org.bouncycastle.oer.its.ieee1609dot2.basetypes.UINT8;

/**
 * 
 *     Ieee1609Dot2Data ::= SEQUENCE {
 *         protocolVersion Uint8(3),
 *         content Ieee1609Dot2Content
 *     }
 * 
*/ public class Ieee1609Dot2Data extends ASN1Object { private final UINT8 protocolVersion; private final Ieee1609Dot2Content content; public Ieee1609Dot2Data(UINT8 protocolVersion, Ieee1609Dot2Content content) { this.protocolVersion = protocolVersion; this.content = content; } protected Ieee1609Dot2Data(ASN1Sequence src) { if (src.size() != 2) { throw new IllegalArgumentException("expected sequence size of 2"); } Iterator items = ASN1Sequence.getInstance(src).iterator(); this.protocolVersion = UINT8.getInstance(items.next()); this.content = Ieee1609Dot2Content.getInstance(items.next()); } public static Ieee1609Dot2Data getInstance(Object src) { if (src instanceof Ieee1609Dot2Data) { return (Ieee1609Dot2Data)src; } if (src != null) { return new Ieee1609Dot2Data(ASN1Sequence.getInstance(src)); } return null; } public ASN1Primitive toASN1Primitive() { return ItsUtils.toSequence(protocolVersion, content); } public UINT8 getProtocolVersion() { return protocolVersion; } public Ieee1609Dot2Content getContent() { return content; } public static Builder builder() { return new Builder(); } public static class Builder { private UINT8 protocolVersion; private Ieee1609Dot2Content content; public Builder setProtocolVersion(UINT8 protocolVersion) { this.protocolVersion = protocolVersion; return this; } public Builder setContent(Ieee1609Dot2Content content) { this.content = content; return this; } public Ieee1609Dot2Data createIeee1609Dot2Data() { return new Ieee1609Dot2Data(protocolVersion, content); } public CounterSignature createCounterSignature() { return new CounterSignature(protocolVersion, content); } public EtsiTs103097Data createEtsiTs103097Data() { return new EtsiTs103097Data(protocolVersion, content); } public EtsiTs103097DataSigned createEtsiTs103097DataSigned() { return new EtsiTs103097DataSigned(content); } public EtsiTs103097DataSignedExternalPayload createEtsiTs103097DataSignedExternalPayload() { return new EtsiTs103097DataSignedExternalPayload(content); } public EtsiTs103097DataEncrypted createEtsiTs103097DataEncrypted() { return new EtsiTs103097DataEncrypted(content); } public EtsiTs103097DataSignedAndEncrypted createEtsiTs103097DataSignedAndEncrypted() { return new EtsiTs103097DataSignedAndEncrypted(content); } public EtsiTs103097DataEncryptedUnicast createEtsiTs103097DataEncryptedUnicast() { return new EtsiTs103097DataEncryptedUnicast(content); } public EtsiTs103097DataSignedAndEncryptedUnicast createEtsiTs103097DataSignedAndEncryptedUnicast() { return new EtsiTs103097DataSignedAndEncryptedUnicast(content); } public EtsiTs103097DataUnsecured createEtsiTs103097DataUnsecured() { return new EtsiTs103097DataUnsecured(content); } public InnerEcRequestSignedForPop createInnerEcRequestSignedForPop() { return new InnerEcRequestSignedForPop(content); } } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy