// Decompiled by Jad v1.5.7f. Copyright 2000 Pavel Kouznetsov.
// Jad home page: http://www.geocities.com/SiliconValley/Bridge/8617/jad.html
// Decompiler options: packimports(3) braces deadcode fieldsfirst 
// Source File Name:   CharacterSet1Byte.java
// Class Version:      45.3

package oracle.sql;

import java.sql.SQLException;
import oracle.sql.converter.CharacterConverter;
import oracle.sql.converter.CharacterConverter1Byte;

// Referenced classes of package oracle.sql:
//            CharacterSetWithConverter, CharacterBuffer, CharacterSet, CharacterWalker

// flag ACC_SUPER is set
class CharacterSet1Byte extends CharacterSetWithConverter
{
    // Constants:          59
    // Interfaces:         0
    // Fields:             2
    // Methods:            4
    // Class Attributes:   1


    static final String CHAR_CONV_SUPERCLASS_NAME = "oracle.sql.converter.CharacterConverter1Byte";
    static Class m_charConvSuperclass;

    // Decompiling method: <init>  Signature: (ILoracle/sql/converter/CharacterConverter1Byte;)V
    // Max stack: 3, #locals: 3, #params: 3
    // Code length: 7 bytes, Code offset: 1001
    // Line Number Table found: 2 entries
    // Parameter  0 added: Name this Type Loracle/sql/CharacterSet1Byte; At 0 7 Range 0 6 Init 0 fixed
    // Parameter  1 added: Name i Type I At 0 7 Range 0 6 Init 0
    // Parameter  2 added: Name characterconverter1byte Type Loracle/sql/converter/CharacterConverter1Byte; At 0 7 Range 0 6 Init 0
    // RetValue   3 added: Name <returnValue> Type V At 0 7 Range 0 6 Init 0 fixed
    CharacterSet1Byte(int i, CharacterConverter1Byte characterconverter1byte)
    {
        super(i, characterconverter1byte);
        return;
    }

    // Decompiling method: decode  Signature: (Loracle/sql/CharacterWalker;)I
    // Max stack: 3, #locals: 3, #params: 2
    // Code length: 26 bytes, Code offset: 1050
    // Line Number Table found: 3 entries
    // Parameter  0 added: Name this Type Loracle/sql/CharacterSet1Byte; At 0 26 Range 0 25 Init 0 fixed
    // Parameter  1 added: Name characterwalker Type Loracle/sql/CharacterWalker; At 0 26 Range 0 25 Init 0
    // RetValue   3 added: Name <returnValue> Type I At 0 26 Range 0 25 Init 0 fixed
    // LocalVar   2 added: Name i Type I At 13 12 Range 13 24 Init 13
    int decode(CharacterWalker characterwalker)
        throws SQLException
    {
        int i = characterwalker.bytes[characterwalker.next] & 0xff;
        characterwalker.next++;
        return i;
    }

    // Decompiling method: encode  Signature: (Loracle/sql/CharacterBuffer;I)V
    // Max stack: 3, #locals: 3, #params: 3
    // Code length: 34 bytes, Code offset: 1132
    // Line Number Table found: 5 entries
    // Parameter  0 added: Name this Type Loracle/sql/CharacterSet1Byte; At 0 34 Range 0 33 Init 0 fixed
    // Parameter  1 added: Name characterbuffer Type Loracle/sql/CharacterBuffer; At 0 34 Range 0 33 Init 0
    // Parameter  2 added: Name i Type I At 0 34 Range 0 33 Init 0
    // RetValue   3 added: Name <returnValue> Type V At 0 34 Range 0 33 Init 0 fixed
    void encode(CharacterBuffer characterbuffer, int i)
        throws SQLException
    {
        CharacterSet.need(characterbuffer, 1);
        if(i < 256)
        {
            characterbuffer.bytes[characterbuffer.next] = (byte)i;
            characterbuffer.next++;
        }
        return;
    }

    // Decompiling method: getInstance  Signature: (ILoracle/sql/converter/CharacterConverter;)Loracle/sql/CharacterSet1Byte;
    // Max stack: 4, #locals: 2, #params: 2
    // Code length: 22 bytes, Code offset: 1230
    // Line Number Table found: 6 entries
    // Parameter  0 added: Name i Type I At 0 22 Range 0 21 Init 0
    // Parameter  1 added: Name characterconverter Type Loracle/sql/converter/CharacterConverter; At 0 22 Range 0 21 Init 0
    // RetValue   2 added: Name <returnValue> Type Loracle/sql/CharacterSet1Byte; At 0 22 Range 0 21 Init 0 fixed
    static CharacterSet1Byte getInstance(int i, CharacterConverter characterconverter)
    {
        if(characterconverter.getGroupId() == 0)
        {
            return new CharacterSet1Byte(i, (CharacterConverter1Byte)characterconverter);
        } else
        {
            return null;
        }
    }
}
