java.lang.Object
org.snmp4j.agent.mo.snmp4j.MOSubtreeProxy
- All Implemented Interfaces:
ManagedObject<SubRequest<?>>
,GenericManagedObject
In contrast to
ProxyForwarder
, the MOSubtreeProxy provides a proxy implementation for a
single subtree based on the configuration provided by the Snmp4jProxyMib
SnmpProxyMIB
and SnmpTargetMIB
.- Since:
- 2.0
- Version:
- 3.2
- Author:
- Frank Fock
-
Nested Class Summary
-
Constructor Summary
ConstructorDescriptionMOSubtreeProxy
(org.snmp4j.Session session, SnmpTargetMIB targetMIB, org.snmp4j.smi.OctetString proxyName, org.snmp4j.smi.OID subtreeOID, org.snmp4j.smi.OctetString contextEngineID, org.snmp4j.smi.OctetString contextName, org.snmp4j.smi.OctetString targetName) -
Method Summary
Modifier and TypeMethodDescriptionvoid
cleanup
(SubRequest<?> request) Cleanup a (sub)request and free all resources locked during the preparation phase.void
commit
(SubRequest<?> request) Commit a previously prepared SET (sub)request.org.snmp4j.smi.OID
Find the first object ID (OID) in the specified search range.void
get
(SubRequest<?> request) Process a GET request and return the result in the supplied sub-request.org.snmp4j.smi.OctetString
getScope()
Return the scope of object identifiers this managed object is managing.boolean
Returns whether undo of SET operations should be supported by this sub-tree proxy or not.boolean
next
(SubRequest<?> request) Find the successor instance for the object instance ID (OID) given by the supplied sub-request and returns it within the supplied sub-request object.void
prepare
(SubRequest<?> request) Prepare a SET (sub)request.void
void
setTargetSubtree
(org.snmp4j.smi.OID remoteSubtree) Sets the remote sub-tree OID for the translation between local agent OID and remote agent OID.void
setTranslation
(OIDTranslation translation) Sets a OID translation.void
setUndoEnabled
(boolean undoEnabled) Enables or disables undo support for SET operations.toString()
void
undo
(SubRequest<?> request) Compensate (undo) a (sub)request when a commit of another subrequest failed with an error.
-
Constructor Details
-
MOSubtreeProxy
public MOSubtreeProxy(org.snmp4j.Session session, SnmpTargetMIB targetMIB, org.snmp4j.smi.OctetString proxyName, org.snmp4j.smi.OID subtreeOID, org.snmp4j.smi.OctetString contextEngineID, org.snmp4j.smi.OctetString contextName, org.snmp4j.smi.OctetString targetName)
-
-
Method Details
-
getScope
Description copied from interface:ManagedObject
Return the scope of object identifiers this managed object is managing.- Specified by:
getScope
in interfaceManagedObject<SubRequest<?>>
- Returns:
- the
MOScope
that defines a range (possibly also a single or none instance OID) of object IDs managed by this managed object.
-
find
Description copied from interface:ManagedObject
Find the first object ID (OID) in the specified search range.- Specified by:
find
in interfaceManagedObject<SubRequest<?>>
- Parameters:
range
- theMOScope
for the search.- Returns:
- the
OID
that is included in the searchrange
andnull
if no such instances could be found.
-
setTargetSubtree
public void setTargetSubtree(org.snmp4j.smi.OID remoteSubtree) Sets the remote sub-tree OID for the translation between local agent OID and remote agent OID. Ifnull
, zero length, or equal to0.0
, no translation takes place.- Parameters:
remoteSubtree
- the OID sub-tree of the target agent to proxy.
-
get
Description copied from interface:ManagedObject
Process a GET request and return the result in the supplied sub-request.- Specified by:
get
in interfaceManagedObject<SubRequest<?>>
- Parameters:
request
- theSubRequest
to process.
-
next
Description copied from interface:ManagedObject
Find the successor instance for the object instance ID (OID) given by the supplied sub-request and returns it within the supplied sub-request object.- Specified by:
next
in interfaceManagedObject<SubRequest<?>>
- Parameters:
request
- theSubRequest
to process.- Returns:
true
if the search request found an appropriate instance,false
otherwise.
-
prepare
Description copied from interface:ManagedObject
Prepare a SET (sub)request. This method represents the first phase of a two phase commit. During preparation all necessary resources should be locked in order to be able to execute the commit without claiming additional resources.- Specified by:
prepare
in interfaceManagedObject<SubRequest<?>>
- Parameters:
request
- theSubRequest
to process.
-
commit
Description copied from interface:ManagedObject
Commit a previously prepared SET (sub)request. This is the second phase of a two phase commit. The change is committed but the resources locked during prepare not freed yet.- Specified by:
commit
in interfaceManagedObject<SubRequest<?>>
- Parameters:
request
- theSubRequest
to process.
-
undo
Description copied from interface:ManagedObject
Compensate (undo) a (sub)request when a commit of another subrequest failed with an error. This also frees any resources locked during the preparation phase.- Specified by:
undo
in interfaceManagedObject<SubRequest<?>>
- Parameters:
request
- theSubRequest
to process.
-
cleanup
Description copied from interface:ManagedObject
Cleanup a (sub)request and free all resources locked during the preparation phase.- Specified by:
cleanup
in interfaceManagedObject<SubRequest<?>>
- Parameters:
request
- theSubRequest
to process.
-
isUndoEnabled
public boolean isUndoEnabled()Returns whether undo of SET operations should be supported by this sub-tree proxy or not. Iftrue
is returned, a GET requests will be sent to the target SNMP entity before the SET operation to retrieve the old (undo) value. If the SET operation fails because of some error in this sub-request or any other sub-request of the same SNMP PDU, the already SET value in the target will be reset to the old value.- Returns:
true
if undo values will be retrieved for this sub-tree (default),false
otherwise (SET requests will be committed directly without previous GET).- Since:
- 2.5.0
-
setUndoEnabled
public void setUndoEnabled(boolean undoEnabled) Enables or disables undo support for SET operations. If set totrue
, a GET requests will be sent to the target SNMP entity before the SET operation to retrieve the old (undo) value. If the SET operation fails because of some error in this sub-request or any other sub-request of the same SNMP PDU, the already SET value in the target will be reset to the old value.- Parameters:
undoEnabled
-true
if undo values should be retrieved for this sub-tree (default),false
otherwise (SET requests will be committed directly without previous GET).- Since:
- 2.5.0
-
getProxyName
public org.snmp4j.smi.OctetString getProxyName() -
getAccess
-
setAccess
-
getTranslation
-
setTranslation
Sets a OID translation. By default it is not active (null
).- Parameters:
translation
- If notnull
, theOIDTranslation
can be used to map between local OID and remote OID and vice versa.
-
toString
-