- java.lang.Object
-
- org.snmp4j.smi.AbstractVariable
-
- org.snmp4j.smi.UnsignedInteger32
-
- org.snmp4j.smi.Counter32
-
- All Implemented Interfaces:
java.lang.Cloneable
,java.lang.Comparable<Variable>
,BERSerializable
,AssignableFromLong
,AssignableFromString
,Variable
public class Counter32 extends UnsignedInteger32
TheCounter32
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:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static long
MAX_COUNTER32_VALUE
-
Fields inherited from class org.snmp4j.smi.AbstractVariable
SMISYNTAXES_PROPERTIES
-
Fields inherited from class org.snmp4j.smi.UnsignedInteger32
value
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object
clone()
Clones this variable.void
decodeBER(BERInputStream inputStream)
Decodes aVariable
from anBERInputStream
.void
encodeBER(java.io.OutputStream outputStream)
Encodes aVariable
to anOutputStream
.boolean
equals(java.lang.Object o)
void
fromSubIndex(OID subIndex, boolean impliedLength)
Sets the value of thisVariable
from the supplied (sub-)index.int
getSyntax()
Gets the ASN.1 syntax identifier value of this SNMP variable.void
increment()
Increment the value of the counter by one.long
increment(long increment)
Increment the value by more than one in one step.OID
toSubIndex(boolean impliedLength)
Converts the value of thisVariable
to a (sub-)index value.-
Methods inherited from class org.snmp4j.smi.AbstractVariable
createFromBER, createFromSyntax, equal, getBERPayloadLength, getSyntaxFromString, getSyntaxString, getSyntaxString, isDynamic, isException
-
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from class org.snmp4j.smi.UnsignedInteger32
compareTo, getBERLength, getBERLengthFromValue, getValue, hashCode, setValue, setValue, toInt, toLong, toString
-
-
-
-
Field Detail
-
MAX_COUNTER32_VALUE
public static final long MAX_COUNTER32_VALUE
- See Also:
- Constant Field Values
-
-
Method Detail
-
equals
public boolean equals(java.lang.Object o)
- 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
public void encodeBER(java.io.OutputStream outputStream) throws java.io.IOException
Description copied from class:AbstractVariable
Encodes aVariable
to anOutputStream
.- Specified by:
encodeBER
in interfaceBERSerializable
- Overrides:
encodeBER
in classUnsignedInteger32
- Parameters:
outputStream
- anOutputStream
.- Throws:
java.io.IOException
- if an error occurs while writing to the stream.
-
decodeBER
public void decodeBER(BERInputStream inputStream) throws java.io.IOException
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:
java.io.IOException
- if the stream could not be decoded by using BER rules.
-
clone
public java.lang.Object 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
public OID toSubIndex(boolean impliedLength)
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
public void fromSubIndex(OID subIndex, boolean impliedLength)
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.
-
-