1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.asn1.der;
19
20 import java.io.UnsupportedEncodingException;
21
22 /***
23 * Interface for DER string objects.
24 */
25 public abstract class DERString extends DERObject
26 {
27 /***
28 * Basic DERObject constructor.
29 */
30 DERString( int tag, byte[] value )
31 {
32 super( tag, value );
33 }
34
35 /***
36 * Lazy accessor.
37 * @return underlying byte array converted to a String
38 */
39 public String getString()
40 {
41 return byteArrayToString( value );
42 }
43
44 /***
45 * Utility method for converting byte arrays to Strings.
46 * @param bytes
47 * @return String
48 */
49 protected static String byteArrayToString( byte[] bytes )
50 {
51 try
52 {
53 return new String( bytes, "UTF-8" );
54 }
55 catch ( UnsupportedEncodingException uee )
56 {
57 return "";
58 }
59 }
60
61 /***
62 * Utility method for converting Strings to bytes.
63 * @param string
64 * @return bytes
65 */
66 protected static byte[] stringToByteArray( String string )
67 {
68 try
69 {
70 return string.getBytes( "UTF-8" );
71 }
72 catch ( UnsupportedEncodingException uee )
73 {
74 return new byte[]{};
75 }
76 }
77 }
78