public static Holder GetInstance(
object obj)
{
if (obj is Holder)
{
return (Holder) obj;
}
if (obj is Asn1Sequence)
{
return new Holder((Asn1Sequence) obj);
}
if (obj is Asn1TaggedObject)
{
return new Holder((Asn1TaggedObject) obj);
}
throw new ArgumentException("unknown object in factory: " + obj.GetType().Name, "obj");
}