summaryrefslogtreecommitdiffstats
path: root/base/util/src/netscape/security/util/ASN1CharsetProvider.java
blob: 1de1c3c48e3e7a00257b2cd3f92561e169df68e0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
package netscape.security.util;

import java.nio.charset.Charset;
import java.nio.charset.spi.CharsetProvider;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

public class ASN1CharsetProvider extends CharsetProvider {

    protected Map<String, Charset> charsets = new HashMap<String, Charset>();

    public ASN1CharsetProvider() {
        addCharset(new PrintableCharset());
        addCharset(new IA5Charset());
        addCharset(new UniversalCharset());
    }

    public Iterator<Charset> charsets() {
        return charsets.values().iterator();
    }

    public Charset charsetForName(String charsetName) {
        return charsets.get(charsetName);
    }

    public void addCharset(Charset cs) {
        charsets.put(cs.name(), cs);
    }
}