1 19 20 package com.maverick.crypto.asn1; 21 22 import java.io.ByteArrayOutputStream ; 23 import java.io.IOException ; 24 25 public abstract class ASN1Encodable 26 implements DEREncodable 27 { 28 public byte[] getEncoded() 29 throws IOException 30 { 31 ByteArrayOutputStream bOut = new ByteArrayOutputStream (); 32 ASN1OutputStream aOut = new ASN1OutputStream(bOut); 33 34 aOut.writeObject(this); 35 36 return bOut.toByteArray(); 37 } 38 39 public int hashCode() 40 { 41 return this.getDERObject().hashCode(); 42 } 43 44 public boolean equals( 45 Object o) 46 { 47 if ((o == null) || !(o instanceof DEREncodable)) 48 { 49 return false; 50 } 51 52 DEREncodable other = (DEREncodable)o; 53 54 return this.getDERObject().equals(other.getDERObject()); 55 } 56 57 public DERObject getDERObject() 58 { 59 return this.toASN1Object(); 60 } 61 62 public abstract DERObject toASN1Object(); 63 } 64 | Popular Tags |