/*
 * This Java file has been generated by smidump 0.4.5. Do not edit!
 * It is intended to be used within a Java AgentX sub-agent environment.
 *
 * $Id: ProtocolDirEntry.java 4432 2006-05-29 16:21:11Z strauss $
 */

/**
    This class represents a Java AgentX (JAX) implementation of
    the table row protocolDirEntry defined in RMON2-MIB.

    @version 1
    @author  smidump 0.4.5
    @see     AgentXTable, AgentXEntry
 */

import jax.AgentXOID;
import jax.AgentXSetPhase;
import jax.AgentXResponsePDU;
import jax.AgentXEntry;

public class ProtocolDirEntry extends AgentXEntry
{

    protected byte[] protocolDirID = new byte[0];
    protected byte[] protocolDirParameters = new byte[0];
    protected int protocolDirLocalIndex = 0;
    protected byte[] protocolDirDescr = new byte[0];
    protected byte[] undo_protocolDirDescr = new byte[0];
    protected byte[] protocolDirType = new byte[0];
    protected int protocolDirAddressMapConfig = 0;
    protected int undo_protocolDirAddressMapConfig = 0;
    protected int protocolDirHostConfig = 0;
    protected int undo_protocolDirHostConfig = 0;
    protected int protocolDirMatrixConfig = 0;
    protected int undo_protocolDirMatrixConfig = 0;
    protected byte[] protocolDirOwner = new byte[0];
    protected byte[] undo_protocolDirOwner = new byte[0];
    protected int protocolDirStatus = 0;
    protected int undo_protocolDirStatus = 0;

    public ProtocolDirEntry(byte[] protocolDirID,
                            byte[] protocolDirParameters)
    {
        this.protocolDirID = protocolDirID;
        this.protocolDirParameters = protocolDirParameters;

        instance.append(protocolDirID);
        instance.append(protocolDirParameters);
    }

    public byte[] get_protocolDirID()
    {
        return protocolDirID;
    }

    public byte[] get_protocolDirParameters()
    {
        return protocolDirParameters;
    }

    public int get_protocolDirLocalIndex()
    {
        return protocolDirLocalIndex;
    }

    public byte[] get_protocolDirDescr()
    {
        return protocolDirDescr;
    }

    public int set_protocolDirDescr(AgentXSetPhase phase, byte[] value)
    {
        switch (phase.getPhase()) {
        case AgentXSetPhase.TEST_SET:
            break;
        case AgentXSetPhase.COMMIT:
            undo_protocolDirDescr = protocolDirDescr;
            protocolDirDescr = new byte[value.length];
            for(int i = 0; i < value.length; i++)
                protocolDirDescr[i] = value[i];
            break;
        case AgentXSetPhase.UNDO:
            protocolDirDescr = undo_protocolDirDescr;
            break;
        case AgentXSetPhase.CLEANUP:
            undo_protocolDirDescr = null;
            break;
        default:
            return AgentXResponsePDU.PROCESSING_ERROR;
        }
        return AgentXResponsePDU.NO_ERROR;
    }
    public byte[] get_protocolDirType()
    {
        return protocolDirType;
    }

    public int get_protocolDirAddressMapConfig()
    {
        return protocolDirAddressMapConfig;
    }

    public int set_protocolDirAddressMapConfig(AgentXSetPhase phase, int value)
    {
        switch (phase.getPhase()) {
        case AgentXSetPhase.TEST_SET:
            break;
        case AgentXSetPhase.COMMIT:
            undo_protocolDirAddressMapConfig = protocolDirAddressMapConfig;
            protocolDirAddressMapConfig = value;
            break;
        case AgentXSetPhase.UNDO:
            protocolDirAddressMapConfig = undo_protocolDirAddressMapConfig;
            break;
        case AgentXSetPhase.CLEANUP:
            break;
        default:
            return AgentXResponsePDU.PROCESSING_ERROR;
        }
        return AgentXResponsePDU.NO_ERROR;
    }
    public int get_protocolDirHostConfig()
    {
        return protocolDirHostConfig;
    }

    public int set_protocolDirHostConfig(AgentXSetPhase phase, int value)
    {
        switch (phase.getPhase()) {
        case AgentXSetPhase.TEST_SET:
            break;
        case AgentXSetPhase.COMMIT:
            undo_protocolDirHostConfig = protocolDirHostConfig;
            protocolDirHostConfig = value;
            break;
        case AgentXSetPhase.UNDO:
            protocolDirHostConfig = undo_protocolDirHostConfig;
            break;
        case AgentXSetPhase.CLEANUP:
            break;
        default:
            return AgentXResponsePDU.PROCESSING_ERROR;
        }
        return AgentXResponsePDU.NO_ERROR;
    }
    public int get_protocolDirMatrixConfig()
    {
        return protocolDirMatrixConfig;
    }

    public int set_protocolDirMatrixConfig(AgentXSetPhase phase, int value)
    {
        switch (phase.getPhase()) {
        case AgentXSetPhase.TEST_SET:
            break;
        case AgentXSetPhase.COMMIT:
            undo_protocolDirMatrixConfig = protocolDirMatrixConfig;
            protocolDirMatrixConfig = value;
            break;
        case AgentXSetPhase.UNDO:
            protocolDirMatrixConfig = undo_protocolDirMatrixConfig;
            break;
        case AgentXSetPhase.CLEANUP:
            break;
        default:
            return AgentXResponsePDU.PROCESSING_ERROR;
        }
        return AgentXResponsePDU.NO_ERROR;
    }
    public byte[] get_protocolDirOwner()
    {
        return protocolDirOwner;
    }

    public int set_protocolDirOwner(AgentXSetPhase phase, byte[] value)
    {
        switch (phase.getPhase()) {
        case AgentXSetPhase.TEST_SET:
            break;
        case AgentXSetPhase.COMMIT:
            undo_protocolDirOwner = protocolDirOwner;
            protocolDirOwner = new byte[value.length];
            for(int i = 0; i < value.length; i++)
                protocolDirOwner[i] = value[i];
            break;
        case AgentXSetPhase.UNDO:
            protocolDirOwner = undo_protocolDirOwner;
            break;
        case AgentXSetPhase.CLEANUP:
            undo_protocolDirOwner = null;
            break;
        default:
            return AgentXResponsePDU.PROCESSING_ERROR;
        }
        return AgentXResponsePDU.NO_ERROR;
    }
    public int get_protocolDirStatus()
    {
        return protocolDirStatus;
    }

    public int set_protocolDirStatus(AgentXSetPhase phase, int value)
    {
        switch (phase.getPhase()) {
        case AgentXSetPhase.TEST_SET:
            break;
        case AgentXSetPhase.COMMIT:
            undo_protocolDirStatus = protocolDirStatus;
            protocolDirStatus = value;
            break;
        case AgentXSetPhase.UNDO:
            protocolDirStatus = undo_protocolDirStatus;
            break;
        case AgentXSetPhase.CLEANUP:
            break;
        default:
            return AgentXResponsePDU.PROCESSING_ERROR;
        }
        return AgentXResponsePDU.NO_ERROR;
    }
}

