Class TestSubagent
java.lang.Object
org.snmp4j.agent.agentx.subagent.test.TestSubagent
- All Implemented Interfaces:
Runnable, EventListener, RegistrationCallback, org.snmp4j.transport.TransportStateListener
public class TestSubagent
extends Object
implements Runnable, org.snmp4j.transport.TransportStateListener, RegistrationCallback
The
TestSubagent is an example implementation of a simple
AgentX subagent with shared tables and multi context registration.- Version:
- 4.2.0
- Author:
- Frank Fock
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final org.snmp4j.smi.OIDThe AgentX subagent identifier used when registering this subagent with the master agent. -
Constructor Summary
ConstructorsConstructorDescriptionTestSubagent(org.snmp4j.smi.Address masterAddress, org.snmp4j.smi.Address localAddress, String configFile) Creates a newTestSubagentthat connects to the given AgentX master agent. -
Method Summary
Modifier and TypeMethodDescriptionvoidconnectionStateChanged(org.snmp4j.transport.TransportStateEvent change) static voidThe program entry point that parses the command line arguments, creates the subagent, adds the local transport mapping, and runs the subagent.protected voidAdds the session context to the server and registers the session dependent managed objects (Snmp4jConfigMibandSnmp4jLogMib) for the current AgentX session.voidregistrationEvent(org.snmp4j.smi.OctetString context, org.snmp4j.agent.ManagedObject<?> mo, int status) The registration attempt of aManagedObjectsucceeded or failed.voidrun()<R extends org.snmp4j.agent.mo.MOTableRow, C extends org.snmp4j.agent.mo.MOColumn<?>, M extends org.snmp4j.agent.mo.MOTableModel<R>>
booleantableRegistrationEvent(org.snmp4j.smi.OctetString context, AgentXSharedMOTable<R, C, M> mo, R row, boolean indexAllocation, int status, int retryCount) The registration attempt of aManagedObjectsucceeded or failed.<R extends org.snmp4j.agent.mo.MOTableRow, C extends org.snmp4j.agent.mo.MOColumn<?>, M extends org.snmp4j.agent.mo.MOTableModel<R>>
voidtableUnregistrationEvent(org.snmp4j.smi.OctetString context, AgentXSharedMOTable<R, C, M> mo, R row, boolean indexAllocation, int status) The unregistration attempt of aManagedObjectsucceeded or failed.protected voidUnregisters the session dependent managed objects and removes the session context from the server for the current AgentX session, if any.voidunregistrationEvent(org.snmp4j.smi.OctetString context, org.snmp4j.agent.ManagedObject<?> mo, int status) The unregistration attempt of aManagedObjectsucceeded or failed.
-
Field Details
-
SUBAGENT_ID
public static final org.snmp4j.smi.OID SUBAGENT_IDThe AgentX subagent identifier used when registering this subagent with the master agent.
-
-
Constructor Details
-
TestSubagent
public TestSubagent(org.snmp4j.smi.Address masterAddress, org.snmp4j.smi.Address localAddress, String configFile) Creates a newTestSubagentthat connects to the given AgentX master agent. The constructor sets up theAgentXinstance and its message dispatcher, theMOServer, the optional persistent storage and configuration factory, and theSubagentXConfigManagerthat registers the MIB modules and launches the AgentX sessions.- Parameters:
masterAddress- the transport address of the AgentX master agent to connect to.localAddress- the local transport address used by the subagent.configFile- the path to the persistent storage directory, ornullto run without persistence.
-
-
Method Details
-
main
The program entry point that parses the command line arguments, creates the subagent, adds the local transport mapping, and runs the subagent.- Parameters:
args- the command line arguments.
-
unregisterSessionDependent
protected void unregisterSessionDependent()Unregisters the session dependent managed objects and removes the session context from the server for the current AgentX session, if any. -
registerSessionDependent
protected void registerSessionDependent()Adds the session context to the server and registers the session dependent managed objects (Snmp4jConfigMibandSnmp4jLogMib) for the current AgentX session. -
connectionStateChanged
public void connectionStateChanged(org.snmp4j.transport.TransportStateEvent change) - Specified by:
connectionStateChangedin interfaceorg.snmp4j.transport.TransportStateListener
-
registrationEvent
public void registrationEvent(org.snmp4j.smi.OctetString context, org.snmp4j.agent.ManagedObject<?> mo, int status) Description copied from interface:RegistrationCallbackThe registration attempt of aManagedObjectsucceeded or failed.- Specified by:
registrationEventin interfaceRegistrationCallback- Parameters:
context- the registration context.mo- theManagedObjectthat was subject to the registration process.status- the AgentX status of the registration response.
-
unregistrationEvent
public void unregistrationEvent(org.snmp4j.smi.OctetString context, org.snmp4j.agent.ManagedObject<?> mo, int status) Description copied from interface:RegistrationCallbackThe unregistration attempt of aManagedObjectsucceeded or failed.- Specified by:
unregistrationEventin interfaceRegistrationCallback- Parameters:
context- the registration context.mo- theManagedObjectthat was subject to the registration process.status- the AgentX status of the registration response.
-
run
-