MibComplexEntry Class Reference

The MibComplexEntry class is an abstract class that represents complex MIB nodes. More...

#include <mib_complex_entry.h>

Inheritance diagram for MibComplexEntry:

MibEntry ThreadManager Synchronized MibStaticTable

List of all members.

Public Member Functions

 MibComplexEntry (const Oidx &, mib_access)
 Construct a MibComplexEntry instance with a given object identifier and maximum access rights.
 MibComplexEntry (const MibComplexEntry &)
 Copy constructor.
virtual ~MibComplexEntry ()
 Destructor.
virtual mib_type type () const
 Return the type of the receiver MIB node.
virtual MibEntryclone ()=0
 Return a clone of the receiver.
virtual Oidx find_succ (const Oidx &, Request *req=0)=0
 Return the successor of a given object identifier within the receiver's scope and the context of a given Request.
virtual void get_request (Request *, int)=0
 Let the receiver process a SNMP GET subrequest.
virtual void get_next_request (Request *, int)=0
 Let the receiver process a SNMP GETNEXT subrequest.
virtual int commit_set_request (Request *, int)
 Let the receiver commit a SNMP SET subrequest.
virtual int prepare_set_request (Request *, int &)
 Let the receiver prepare a SNMP SET subrequest.
virtual int undo_set_request (Request *, int &)
 Let the receiver undo a SNMP SET subrequest.
virtual void cleanup_set_request (Request *, int &)
 Clean up resources used for performing (or undoing) set requests.
virtual boolean serialize (char *&, int &)
 Serialize the value of the receiver.
virtual boolean deserialize (char *, int &)
 Read the value of the receiver from a byte stream.
virtual boolean is_empty ()
 Check whether the receiver node contains any instance of a managed object.
virtual OidxPtr max_key ()
 Return the immediate successor of the greatest object identifier within the receiver's scope.

Protected Attributes

Oidx upperBound

Friends

class Mib


Detailed Description

The MibComplexEntry class is an abstract class that represents complex MIB nodes.

Complex nodes access their managed objects (e.g., MibLeafs) via an implementation specific way. This interface can be used to implement light weight tables, i.e. tables that access their management information through a proprietary protocol (other than SNMP or AgentX).

Author:
Frank Fock
Version:
3.4

Constructor & Destructor Documentation

MibComplexEntry::MibComplexEntry ( const Oidx ,
mib_access   
)

Construct a MibComplexEntry instance with a given object identifier and maximum access rights.

Parameters:
oid an object identifier.
access the maximum access rights for the receiver.

MibComplexEntry::MibComplexEntry ( const MibComplexEntry  ) 

Copy constructor.

Parameters:
other another MibComplexEntry instance.

virtual MibComplexEntry::~MibComplexEntry (  )  [virtual]

Destructor.


Member Function Documentation

virtual mib_type MibComplexEntry::type (  )  const [inline, virtual]

Return the type of the receiver MIB node.

Returns:
One of the following types: AGENTPP_NONE, AGENTPP_PROXY, AGENTPP_LEAF, AGENTPP_TABLE, AGENTPP_GROUP, or AGENTPP_COMPLEX.

Reimplemented from MibEntry.

virtual MibEntry* MibComplexEntry::clone (  )  [pure virtual]

Return a clone of the receiver.

Returns:
a pointer to a clone of the MibComplexEntry object.

Reimplemented from MibEntry.

Implemented in MibStaticTable.

virtual Oidx MibComplexEntry::find_succ ( const Oidx ,
Request req = 0 
) [pure virtual]

Return the successor of a given object identifier within the receiver's scope and the context of a given Request.

Parameters:
oid an object identifier
request a pointer to a Request instance.
Returns:
an object identifier if a successor could be found, otherwise (if no successor exists or is out of scope) a zero length oid is returned

Reimplemented from MibEntry.

Implemented in MibStaticTable.

virtual void MibComplexEntry::get_request ( Request ,
int   
) [pure virtual]

Let the receiver process a SNMP GET subrequest.

Parameters:
req - A pointer to the whole SNMP GET request.
ind - The index of the subrequest to be processed.

Reimplemented from MibEntry.

Implemented in MibStaticTable.

virtual void MibComplexEntry::get_next_request ( Request ,
int   
) [pure virtual]

Let the receiver process a SNMP GETNEXT subrequest.

Parameters:
req - A pointer to the whole SNMP GETNEXT request.
ind - The index of the subrequest to be processed.

Reimplemented from MibEntry.

Implemented in MibStaticTable.

virtual int MibComplexEntry::commit_set_request ( Request ,
int   
) [inline, virtual]

Let the receiver commit a SNMP SET subrequest.

Parameters:
req - A pointer to the whole SNMP SET request.
ind - The index of the subrequest to be processed.
Returns:
SNMP_ERROR_SUCCESS on success and SNMP_ERROR_COMITFAIL on failure.

Reimplemented from MibEntry.

virtual int MibComplexEntry::prepare_set_request ( Request ,
int &   
) [inline, virtual]

Let the receiver prepare a SNMP SET subrequest.

Parameters:
req - A pointer to the whole SNMP SET request.
ind - The index of the subrequest to be processed.
Returns:
SNMP_ERROR_SUCCESS on success and SNMP_ERROR_WRONG_VALUE, SNMP_ERROR_WRONG_TYPE, or SNMP_ERROR_NOT_WRITEABLE on failure.

Reimplemented from MibEntry.

virtual int MibComplexEntry::undo_set_request ( Request ,
int &   
) [inline, virtual]

Let the receiver undo a SNMP SET subrequest.

Parameters:
req - A pointer to the whole SNMP SET request.
ind - The index of the subrequest to be processed.
Returns:
SNMP_ERROR_SUCCESS on success and SNMP_ERROR_UNDO_FAIL on failure.

Reimplemented from MibEntry.

virtual void MibComplexEntry::cleanup_set_request ( Request ,
int &   
) [inline, virtual]

Clean up resources used for performing (or undoing) set requests.

Parameters:
req - A pointer to the whole SNMP SET request.
ind - The index of the subrequest to be processed.

Reimplemented from MibEntry.

virtual boolean MibComplexEntry::serialize ( char *&  ,
int &   
) [inline, virtual]

Serialize the value of the receiver.

Parameters:
buf - A pointer to byte stream buffer returned.
sz - The size of the buffer returned.
Returns:
TRUE if serialization was successful, FALSE otherwise.

Reimplemented from MibEntry.

virtual boolean MibComplexEntry::deserialize ( char *  ,
int &   
) [inline, virtual]

Read the value of the receiver from a byte stream.

Parameters:
buf a pointer to the input byte stream.
sz the size of the input buffer. On output it contains the size remaining unread in the input buffer.
Returns:
TRUE if deserialization was successful, FALSE otherwise.

Reimplemented from MibEntry.

virtual boolean MibComplexEntry::is_empty (  )  [inline, virtual]

Check whether the receiver node contains any instance of a managed object.

Returns:
TRUE if the node currently manages an instance.

Reimplemented from MibEntry.

virtual OidxPtr MibComplexEntry::max_key (  )  [inline, virtual]

Return the immediate successor of the greatest object identifier within the receiver's scope.

Returns:
a pointer to the non including upper bound of the receiver's scope.

Reimplemented from MibEntry.


Friends And Related Function Documentation

friend class Mib [friend]

Reimplemented from MibEntry.


Member Data Documentation


The documentation for this class was generated from the following file:

Generated on Fri May 29 22:36:54 2009 for AGENT++ by  doxygen 1.5.6