java.lang.Object
org.snmp4j.smi.AbstractVariable
org.snmp4j.smi.UnsignedInteger32
org.snmp4j.smi.Counter32
- All Implemented Interfaces:
Serializable
,Cloneable
,Comparable<Variable>
,BERSerializable
,AssignableFromLong
,AssignableFromString
,Variable
The
Counter32
class allows all the functionality of unsigned
integers but is recognized as a distinct SMI type, which is used for
monotonically increasing values that wrap around at 2^32-1 (4294967295).- Since:
- 1.0
- Version:
- 1.7
- Author:
- Frank Fock
- See Also:
-
Field Summary
Fields inherited from class org.snmp4j.smi.UnsignedInteger32
value
Fields inherited from class org.snmp4j.smi.AbstractVariable
SMISYNTAXES_PROPERTIES
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionclone()
Clones this variable.void
decodeBER
(BERInputStream inputStream) Decodes aVariable
from anBERInputStream
.void
encodeBER
(OutputStream outputStream) Encodes aVariable
to anOutputStream
.boolean
void
fromSubIndex
(OID subIndex, boolean impliedLength) Sets the value of thisVariable
from the supplied (sub-)index.int
Gets the ASN.1 syntax identifier value of this SNMP variable.void
Increment the value of the counter by one.long
increment
(long increment) Increment the value by more than one in one step.toSubIndex
(boolean impliedLength) Converts the value of thisVariable
to a (sub-)index value.Methods inherited from class org.snmp4j.smi.UnsignedInteger32
compareTo, getBERLength, getBERLengthFromValue, getValue, hashCode, setValue, setValue, toInt, toLong, toString
Methods inherited from class org.snmp4j.smi.AbstractVariable
createFromBER, createFromSyntax, equal, getBERPayloadLength, getSyntaxFromString, getSyntaxString, getSyntaxString, isDynamic, isException
-
Field Details
-
MAX_COUNTER32_VALUE
public static final long MAX_COUNTER32_VALUE- See Also:
-
-
Constructor Details
-
Counter32
public Counter32() -
Counter32
public Counter32(long value)
-
-
Method Details
-
equals
- Specified by:
equals
in interfaceVariable
- Overrides:
equals
in classUnsignedInteger32
-
getSyntax
public int getSyntax()Description copied from class:AbstractVariable
Gets the ASN.1 syntax identifier value of this SNMP variable.- Specified by:
getSyntax
in interfaceVariable
- Overrides:
getSyntax
in classUnsignedInteger32
- Returns:
- an integer value less than 128 for regular SMI objects and a value greater or equal than 128 for exception values like noSuchObject, noSuchInstance, and endOfMibView.
-
encodeBER
Description copied from class:AbstractVariable
Encodes aVariable
to anOutputStream
.- Specified by:
encodeBER
in interfaceBERSerializable
- Overrides:
encodeBER
in classUnsignedInteger32
- Parameters:
outputStream
- anOutputStream
.- Throws:
IOException
- if an error occurs while writing to the stream.
-
decodeBER
Description copied from class:AbstractVariable
Decodes aVariable
from anBERInputStream
.- Specified by:
decodeBER
in interfaceBERSerializable
- Overrides:
decodeBER
in classUnsignedInteger32
- Parameters:
inputStream
- anBERInputStream
containing a BER encoded byte stream.- Throws:
IOException
- if the stream could not be decoded by using BER rules.
-
clone
Description copied from interface:Variable
Clones this variable. Cloning can be used by the SNMP4J API to better support concurrency by creating a clone for internal processing. The content of this object is independent to the content of the clone. Thus, changes to the clone will have no effect to this object.- Specified by:
clone
in interfaceVariable
- Overrides:
clone
in classUnsignedInteger32
- Returns:
- a new instance of this
Variable
with the same value.
-
increment
public void increment()Increment the value of the counter by one. If the current value is 2^32-1 (4294967295) then value will be set to zero. -
increment
public long increment(long increment) Increment the value by more than one in one step.- Parameters:
increment
- an increment value greater than zero.- Returns:
- the current value of the counter.
- Since:
- 2.4.2
-
toSubIndex
Description copied from class:AbstractVariable
Converts the value of thisVariable
to a (sub-)index value.- Specified by:
toSubIndex
in interfaceVariable
- Overrides:
toSubIndex
in classUnsignedInteger32
- Parameters:
impliedLength
- specifies if the sub-index has an implied length. This parameter applies to variable length variables only (e.g.OctetString
andOID
). For other variables it has no effect.- Returns:
- an OID that represents this value as an (sub-)index.
-
fromSubIndex
Description copied from class:AbstractVariable
Sets the value of thisVariable
from the supplied (sub-)index.- Specified by:
fromSubIndex
in interfaceVariable
- Overrides:
fromSubIndex
in classUnsignedInteger32
- Parameters:
subIndex
- the sub-index OID.impliedLength
- specifies if the sub-index has an implied length. This parameter applies to variable length variables only (e.g.OctetString
andOID
). For other variables it has no effect.
-