Interface AgentXSharedMutableMOTable<R extends org.snmp4j.agent.mo.MOTableRow,C extends org.snmp4j.agent.mo.MOColumn,M extends org.snmp4j.agent.mo.MOTableModel<R>>

All Superinterfaces:
AgentXSharedMOTable<R,C,M>, org.snmp4j.agent.mo.ChangeableManagedObject<org.snmp4j.agent.request.SubRequest<?>>, org.snmp4j.agent.mo.GenericManagedObject, org.snmp4j.agent.ManagedObject<org.snmp4j.agent.request.SubRequest<?>>, org.snmp4j.agent.ManagedObjectValueAccess<org.snmp4j.agent.request.SubRequest<?>>, org.snmp4j.agent.mo.MOTable<R,C,M>
All Known Implementing Classes:
DefaultAgentXSharedMOTable

public interface AgentXSharedMutableMOTable<R extends org.snmp4j.agent.mo.MOTableRow,C extends org.snmp4j.agent.mo.MOColumn,M extends org.snmp4j.agent.mo.MOTableModel<R>> extends AgentXSharedMOTable<R,C,M>
The AgentXSharedMutableMOTable extends the AgentXSharedMOTable and MutableMOTable interface. It serves as a marker interface to be able to differentiate between regular tables, AgentX shared index tables, and AgentX shared index tables with varying number of rows (this kind). The latter two require an index definition where all sub-indexes have an OID specified (MOTableSubIndex.getOid()). AgentX shared index tables provide services needed for sharing rows of the same conceptual table across multiple AgentX sub-agents.

This mutable variant is able to add (allocate and register) and remove (deallocate and deregister) rows after initial registration of the subagent.

Version:
1.0
Author:
Frank Fock
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    changeRowIndex(org.snmp4j.smi.OID oldIndex, org.snmp4j.smi.OID newIndex)
    Changes the index of a row without firing a MOTableRowEvent about removing and adding of the row.
    Returns the shared table support object this shared table uses.
    void
    Sets the shared table support that this shared table should be use to (de)register rows and (de)allocate indexes while this shared table is part of an connected AgentX session.

    Methods inherited from interface org.snmp4j.agent.mo.ChangeableManagedObject

    addMOChangeListener, removeMOChangeListener

    Methods inherited from interface org.snmp4j.agent.ManagedObject

    cleanup, commit, find, get, getScope, next, next, prepare, undo

    Methods inherited from interface org.snmp4j.agent.ManagedObjectValueAccess

    setValue

    Methods inherited from interface org.snmp4j.agent.mo.MOTable

    addMOTableRowListener, addNewRow, addRow, createRow, createRow, find, getCellInfo, getColumn, getColumnCount, getColumnIndex, getColumns, getDefaultValues, getIndexDef, getIndexPart, getModel, getOID, getValue, getValue, removeMOTableRowListener, removeRow
  • Method Details

    • getAgentXSharedMOTableSupport

      AgentXSharedMOTableSupport<R,?> getAgentXSharedMOTableSupport()
      Returns the shared table support object this shared table uses.
      Returns:
      an AgentXSharedMOTableSupport instance or null if this table has not been initialized for AgentX yet.
    • setAgentXSharedMOTableSupport

      void setAgentXSharedMOTableSupport(AgentXSharedMOTableSupport<R,?> sharedTableSupport)
      Sets the shared table support that this shared table should be use to (de)register rows and (de)allocate indexes while this shared table is part of an connected AgentX session. The shared table determines whether the AgentX session is established by inspecting the AgentXSession instance returned by this shared tabe support. If either the shared table support instance is null or AgentXSession.isClosed() returns true the AgentX session is considered to be disconnected (not established).
      Parameters:
      sharedTableSupport - an AgentXSharedMOTableSupport instance to be used to (de)allocate indexes and (de)register rows at the AgentX master agent.
    • changeRowIndex

      boolean changeRowIndex(org.snmp4j.smi.OID oldIndex, org.snmp4j.smi.OID newIndex)
      Changes the index of a row without firing a MOTableRowEvent about removing and adding of the row. Only a MOTableRowEvent.UPDATED event will be fired.
      Parameters:
      oldIndex - the old index of the row to change.
      newIndex - the new index of the row.
      Returns:
      true if the row index could be changed and false if either the row does not exists or the table model does not allow to add/remove rows.