|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.sun.management.snmp.agent.SnmpStandardObjectServer
public class SnmpStandardObjectServer
This class is a utility class that transform SNMP GET / SET requests into series of getAttributeName() setAttributeName() invoked on the MBean.
The transformation relies on the metadata information provided by the
SnmpStandardMetaServer
object which is
passed as first parameter to every method. This SnmpStandardMetaServer
object is usually a Metadata object generated by mibgen
.
The MBean is not invoked directly by this class but through the metadata object which holds a reference on it.
This class is used internally by mibgen generated metadata objects and you should never need to use it directly.
Constructor Summary | |
---|---|
SnmpStandardObjectServer()
|
Method Summary | |
---|---|
void |
check(SnmpStandardMetaServer meta,
SnmpMibSubRequest req,
int depth)
Generic handling of the check operation. |
void |
get(SnmpStandardMetaServer meta,
SnmpMibSubRequest req,
int depth)
Generic handling of the get operation. |
void |
set(SnmpStandardMetaServer meta,
SnmpMibSubRequest req,
int depth)
Generic handling of the set operation. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public SnmpStandardObjectServer()
Method Detail |
---|
public void get(SnmpStandardMetaServer meta, SnmpMibSubRequest req, int depth) throws SnmpStatusException
get
operation.
The default implementation of this method is to loop over the
varbind list associated with the sub-request and to call
get(var.oid.getOidArc(depth), data);
public void get(SnmpStandardMetaServer meta, SnmpMibSubRequest req, int depth) throws SnmpStatusException { final Object data = req.getUserData(); for (Enumeration e= req.getElements(); e.hasMoreElements();) { final SnmpVarBind var= (SnmpVarBind) e.nextElement(); try { // This method will generate a SnmpStatusException // if `depth' is out of bounds. // final long id = var.oid.getOidArc(depth); var.value = meta.get(id, data); } catch(SnmpStatusException x) { req.registerGetException(var,x); } } }
You can override this method if you need to implement some specific policies for minimizing the accesses made to some remote underlying resources.
meta
- A pointer to the generated meta-data object which
implements the SnmpStandardMetaServer
interface.req
- The sub-request that must be handled by this node.depth
- The depth reached in the OID tree.
SnmpStatusException
- An error occurred while accessing
the MIB node.public void set(SnmpStandardMetaServer meta, SnmpMibSubRequest req, int depth) throws SnmpStatusException
set
operation.
The default implementation of this method is to loop over the
varbind list associated with the sub-request and to call
set(var.value, var.oid.getOidArc(depth), data);
public void set(SnmpStandardMetaServer meta, SnmpMibSubRequest req, int depth) throws SnmpStatusException { final Object data = req.getUserData(); for (Enumeration e= req.getElements(); e.hasMoreElements();) { final SnmpVarBind var= (SnmpVarBind) e.nextElement(); try { // This method will generate a SnmpStatusException // if `depth' is out of bounds. // final long id = var.oid.getOidArc(depth); var.value = meta.set(var.value, id, data); } catch(SnmpStatusException x) { req.registerSetException(var,x); } } }
You can override this method if you need to implement some specific policies for minimizing the accesses made to some remote underlying resources.
meta
- A pointer to the generated meta-data object which
implements the SnmpStandardMetaServer
interface.req
- The sub-request that must be handled by this node.depth
- The depth reached in the OID tree.
SnmpStatusException
- An error occurred while accessing
the MIB node.public void check(SnmpStandardMetaServer meta, SnmpMibSubRequest req, int depth) throws SnmpStatusException
check
operation.
The default implementation of this method is to loop over the
varbind list associated with the sub-request and to call
check(var.value, var.oid.getOidArc(depth), data);
public void check(SnmpStandardMetaServer meta, SnmpMibSubRequest req, int depth) throws SnmpStatusException { final Object data = req.getUserData(); for (Enumeration e= req.getElements(); e.hasMoreElements();) { final SnmpVarBind var= (SnmpVarBind) e.nextElement(); try { // This method will generate a SnmpStatusException // if `depth' is out of bounds. // final long id = var.oid.getOidArc(depth); meta.check(var.value, id, data); } catch(SnmpStatusException x) { req.registerCheckException(var,x); } } }
You can override this method if you need to implement some specific policies for minimizing the accesses made to some remote underlying resources, or if you need to implement some consistency checks between the different values provided in the varbind list.
meta
- A pointer to the generated meta-data object which
implements the SnmpStandardMetaServer
interface.req
- The sub-request that must be handled by this node.depth
- The depth reached in the OID tree.
SnmpStatusException
- An error occurred while accessing
the MIB node.
|
Open Source build 02 opendmk-1.0-b02 2007.10.01_19:17:46_MEST |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |