summary refs log tree commit diff
path: root/crypto/src/asn1/BerApplicationSpecific.cs
blob: 2a874984f156042273d0d7431e93148ceaa5ff7a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
using System;

namespace Org.BouncyCastle.Asn1
{
	public class BerApplicationSpecific
		: DerApplicationSpecific
	{
        /**
         * Create an application specific object with an explicit tag
         *
         * @param tagNo the tag number for this object.
         * @param baseEncodable the object to be contained.
         */
        public BerApplicationSpecific(int tagNo, Asn1Encodable baseEncodable)
            : this(true, tagNo, baseEncodable)
        {
        }

        /**
         * Create an application specific object with the tagging style given by the value of explicit.
         *
         * @param explicit true if the object is explicitly tagged.
         * @param tagNo the tag number for this object.
         * @param baseEncodable the object to be contained.
         */
        public BerApplicationSpecific(bool isExplicit, int tagNo, Asn1Encodable baseEncodable)
            : base(new BerTaggedObject(isExplicit, Asn1Tags.Application, tagNo, baseEncodable))
        {
        }

        /**
         * Create an application specific object which is marked as constructed
         *
         * @param tagNo the tag number for this object.
         * @param contentsElements the objects making up the application specific object.
         */
        public BerApplicationSpecific(int tagNo, Asn1EncodableVector contentsElements)
            : base(new BerTaggedObject(false, Asn1Tags.Application, tagNo, BerSequence.FromVector(contentsElements)))
        {
        }

        internal BerApplicationSpecific(Asn1TaggedObject taggedObject)
            : base(taggedObject)
        {
        }
	}
}