1f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectpackage org.bouncycastle.asn1;
2f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
3f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectimport java.io.IOException;
4f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
5f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project/**
6f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * A BER NULL object.
7f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project */
8f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectpublic class BERNull
9f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    extends DERNull
10f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project{
11f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    // BEGIN android-added
12f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /** non-null; unique instance of this class */
13f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public final BERNull THE_ONE = new BERNull();
14f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    // END android-added
15f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
16f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    // BEGIN android-changed
17f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    private BERNull()
18f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    {
19f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
20f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    // END android-changed
21f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
22f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    void encode(
23f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        DEROutputStream  out)
24f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        throws IOException
25f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    {
26f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        if (out instanceof ASN1OutputStream || out instanceof BEROutputStream)
27f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        {
28f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            out.write(NULL);
29f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        }
30f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        else
31f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        {
32f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            super.encode(out);
33f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        }
34f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
35f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project}
36