summary refs log tree commit diff
path: root/crypto/src/asn1/DerApplicationSpecific.cs
diff options
context:
space:
mode:
Diffstat (limited to 'crypto/src/asn1/DerApplicationSpecific.cs')
-rw-r--r--crypto/src/asn1/DerApplicationSpecific.cs235
1 files changed, 0 insertions, 235 deletions
diff --git a/crypto/src/asn1/DerApplicationSpecific.cs b/crypto/src/asn1/DerApplicationSpecific.cs
deleted file mode 100644
index d474034ed..000000000
--- a/crypto/src/asn1/DerApplicationSpecific.cs
+++ /dev/null
@@ -1,235 +0,0 @@
-using System;
-using System.IO;
-
-using Org.BouncyCastle.Utilities;
-
-namespace Org.BouncyCastle.Asn1
-{
-    /**
-     * Base class for an application specific object
-     */
-    public class DerApplicationSpecific
-        : Asn1Object, IAsn1ApplicationSpecificParser
-    {
-        public static DerApplicationSpecific GetInstance(object obj)
-        {
-            if (obj == null || obj is DerApplicationSpecific)
-            {
-                return (DerApplicationSpecific)obj;
-            }
-            else if (obj is byte[])
-            {
-                try
-                {
-                    return GetInstance(FromByteArray((byte[])obj));
-                }
-                catch (IOException e)
-                {
-                    throw new ArgumentException("failed to construct application-specific from byte[]: " + e.Message);
-                }
-            }
-
-            throw new ArgumentException("illegal object in GetInstance: " + Platform.GetTypeName(obj), "obj");
-        }
-
-        internal readonly Asn1TaggedObject m_taggedObject;
-
-        /**
-         * Create an application specific object from the passed in data. This will assume
-         * the data does not represent a constructed object.
-         *
-         * @param tagNo the tag number for this object.
-         * @param contentsOctets the encoding of the object's body.
-         */
-        public DerApplicationSpecific(int tagNo, byte[] contentsOctets)
-            : this(new DerTaggedObject(false, Asn1Tags.Application, tagNo, new DerOctetString(contentsOctets)))
-        {
-        }
-
-        /**
-         * Create an application specific object with a tagging of explicit/constructed.
-         *
-         * @param tag the tag number for this object.
-         * @param object the object to be contained.
-         */
-        public DerApplicationSpecific(int tag, Asn1Encodable baseEncodable)
-            : this(true, tag, 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 DerApplicationSpecific(bool isExplicit, int tagNo, Asn1Encodable baseEncodable)
-            : this(new DerTaggedObject(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 DerApplicationSpecific(int tagNo, Asn1EncodableVector contentsElements)
-            : this(new DerTaggedObject(false, Asn1Tags.Application, tagNo, DerSequence.FromVector(contentsElements)))
-        {
-        }
-
-        internal DerApplicationSpecific(Asn1TaggedObject taggedObject)
-            //: base(taggedObject.explicitness, CheckTagClass(taggedObject.tagClass), taggedObject.tagNo,
-            //      taggedObject.obj)
-        {
-            CheckTagClass(taggedObject.TagClass);
-
-            this.m_taggedObject = taggedObject;
-        }
-
-        public int ApplicationTag
-        {
-            get { return m_taggedObject.TagNo; }
-        }
-
-        [Obsolete("Will be removed")]
-        public byte[] GetContents()
-        {
-            return m_taggedObject.GetContents();
-        }
-
-        public Asn1Object GetEnclosedObject()
-        {
-            return m_taggedObject.GetBaseObject().ToAsn1Object();
-        }
-
-        [Obsolete("Use GetEnclosedObject instead")]
-        public Asn1Object GetObject()
-        {
-            return GetEnclosedObject();
-        }
-
-        public Asn1Object GetObject(int tagNo)
-        {
-            return m_taggedObject.GetBaseUniversal(false, tagNo);
-        }
-
-        public IAsn1Convertible GetObjectParser(int tag, bool isExplicit)
-        {
-            throw new Asn1Exception("this method only valid for CONTEXT_SPECIFIC tags");
-        }
-
-        public IAsn1Convertible ParseBaseUniversal(bool declaredExplicit, int baseTagNo)
-        {
-            return m_taggedObject.ParseBaseUniversal(declaredExplicit, baseTagNo);
-        }
-
-        public IAsn1Convertible ParseExplicitBaseObject()
-        {
-            return TaggedObject.ParseExplicitBaseObject();
-        }
-
-        public Asn1TaggedObjectParser ParseExplicitBaseTagged()
-        {
-            return m_taggedObject.ParseExplicitBaseTagged();
-        }
-
-        public Asn1TaggedObjectParser ParseImplicitBaseTagged(int baseTagClass, int baseTagNo)
-        {
-            return m_taggedObject.ParseImplicitBaseTagged(baseTagClass, baseTagNo);
-        }
-
-        public bool HasApplicationTag(int tagNo)
-        {
-            return m_taggedObject.HasTag(Asn1Tags.Application, tagNo);
-        }
-
-        public bool HasContextTag(int tagNo)
-        {
-            return false;
-        }
-
-        public bool HasTag(int tagClass, int tagNo)
-        {
-            return m_taggedObject.HasTag(tagClass, tagNo);
-        }
-
-        [Obsolete("Will be removed")]
-        public bool IsConstructed()
-        {
-            return m_taggedObject.IsConstructed();
-        }
-
-        public IAsn1Convertible ReadObject()
-        {
-            // NOTE: No way to say you're looking for an implicitly-tagged object via IAsn1ApplicationSpecificParser
-            return ParseExplicitBaseObject();
-        }
-
-        public int TagClass
-        {
-            get { return m_taggedObject.TagClass; }
-        }
-
-        public int TagNo
-        {
-            get { return m_taggedObject.TagNo; }
-        }
-
-        /**
-         * DerApplicationSpecific uses an internal Asn1TaggedObject for the
-         * implementation, and will soon be deprecated in favour of using
-         * Asn1TaggedObject with a tag class of {@link Asn1Tags#Application}. This method
-         * lets you get the internal Asn1TaggedObject so that client code can begin the
-         * migration.
-         */
-        public Asn1TaggedObject TaggedObject
-        {
-            get { return m_taggedObject; }
-        }
-
-        protected override bool Asn1Equals(Asn1Object asn1Object)
-        {
-            Asn1TaggedObject that;
-            if (asn1Object is DerApplicationSpecific)
-            {
-                that = ((DerApplicationSpecific)asn1Object).m_taggedObject;
-            }
-            else if (asn1Object is Asn1TaggedObject)
-            {
-                that = (Asn1TaggedObject)asn1Object;
-            }
-            else
-            {
-                return false;
-            }
-
-            return m_taggedObject.Equals(that);
-        }
-
-        protected override int Asn1GetHashCode()
-        {
-            return m_taggedObject.CallAsn1GetHashCode();
-        }
-
-        internal override IAsn1Encoding GetEncoding(int encoding)
-        {
-            return m_taggedObject.GetEncoding(encoding);
-        }
-
-        internal override IAsn1Encoding GetEncodingImplicit(int encoding, int tagClass, int tagNo)
-        {
-            return m_taggedObject.GetEncodingImplicit(encoding, tagClass, tagNo);
-        }
-
-        private static int CheckTagClass(int tagClass)
-        {
-            if (Asn1Tags.Application != tagClass)
-                throw new ArgumentException();
-
-            return tagClass;
-        }
-    }
-}