X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=src%2Forg%2Fbouncycastle%2Fasn1%2FDERT61String.java;h=189a939f7e2ba6d1fe4c4780d30cc6ece2795df3;hb=b32cea3f3e272ab00899d134d75a8bd7bcf6c8c0;hp=4412efc69c8f20394481d385b91147e6d61983ce;hpb=e5e9355b4f4e0e2c8de9068a71c1e3cc26fa9905;p=org.ibex.core.git diff --git a/src/org/bouncycastle/asn1/DERT61String.java b/src/org/bouncycastle/asn1/DERT61String.java index 4412efc..189a939 100644 --- a/src/org/bouncycastle/asn1/DERT61String.java +++ b/src/org/bouncycastle/asn1/DERT61String.java @@ -12,6 +12,48 @@ public class DERT61String String string; /** + * return a T61 string from the passed in object. + * + * @exception IllegalArgumentException if the object cannot be converted. + */ + public static DERT61String getInstance( + Object obj) + { + if (obj == null || obj instanceof DERT61String) + { + return (DERT61String)obj; + } + + if (obj instanceof ASN1OctetString) + { + return new DERT61String(((ASN1OctetString)obj).getOctets()); + } + + if (obj instanceof ASN1TaggedObject) + { + return getInstance(((ASN1TaggedObject)obj).getObject()); + } + + throw new IllegalArgumentException("illegal object in getInstance: " + obj.getClass().getName()); + } + + /** + * return an T61 String from a tagged object. + * + * @param obj the tagged object holding the object we want + * @param explicit true if the object is meant to be explicitly + * tagged false otherwise. + * @exception IllegalArgumentException if the tagged object cannot + * be converted. + */ + public static DERT61String getInstance( + ASN1TaggedObject obj, + boolean explicit) + { + return getInstance(obj.getObject()); + } + + /** * basic constructor - with bytes. */ public DERT61String( @@ -40,4 +82,15 @@ public class DERT61String { out.writeEncoded(T61_STRING, string.getBytes()); } + + public boolean equals( + Object o) + { + if ((o == null) || !(o instanceof DERT61String)) + { + return false; + } + + return this.getString().equals(((DERT61String)o).getString()); + } }