- java.lang.Object
-
- org.snmp4j.smi.AbstractVariable
-
- org.snmp4j.smi.Counter64
-
- All Implemented Interfaces:
java.io.Serializable,java.lang.Cloneable,java.lang.Comparable<Variable>,BERSerializable,AssignableFromLong,AssignableFromString,Variable
public class Counter64 extends AbstractVariable implements AssignableFromLong, AssignableFromString
TheCounter64class represents a 64bit unsigned integer type. It is used for monotonically increasing values that wrap around at 2^64-1 (18446744073709551615). The unsigned 64bit value is represented by a signed 64bit long value internally.- Version:
- 1.8
- Author:
- Frank Fock
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class org.snmp4j.smi.AbstractVariable
SMISYNTAXES_PROPERTIES
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Objectclone()Clones this variable.intcompareTo(Variable o)voiddecodeBER(BERInputStream inputStream)Decodes aVariablefrom anBERInputStream.voidencodeBER(java.io.OutputStream outputStream)Encodes aVariableto anOutputStream.booleanequals(java.lang.Object o)voidfromSubIndex(OID subIndex, boolean impliedLength)Sets the value of thisVariablefrom the supplied (sub-)index.intgetBERLength()Returns the length of thisVariablein bytes when encoded according to the Basic Encoding Rules (BER).intgetSyntax()Gets the ASN.1 syntax identifier value of this SNMP variable.longgetValue()inthashCode()voidincrement()Increment the value of the counter by one.longincrement(long increment)Increment the value by more than one in one step.voidsetValue(long value)voidsetValue(java.lang.String value)inttoInt()Returns an integer representation of this variable if such a representation exists.longtoLong()Returns a long representation of this variable if such a representation exists.java.lang.StringtoString()Gets a string representation of the variable.OIDtoSubIndex(boolean impliedLength)Converts the value of thisVariableto a (sub-)index value.-
Methods inherited from class org.snmp4j.smi.AbstractVariable
createFromBER, createFromSyntax, equal, getBERPayloadLength, getSyntaxFromString, getSyntaxString, getSyntaxString, isDynamic, isException
-
-
-
-
Method Detail
-
encodeBER
public void encodeBER(java.io.OutputStream outputStream) throws java.io.IOExceptionDescription copied from class:AbstractVariableEncodes aVariableto anOutputStream.- Specified by:
encodeBERin interfaceBERSerializable- Specified by:
encodeBERin classAbstractVariable- 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:AbstractVariableDecodes aVariablefrom anBERInputStream.- Specified by:
decodeBERin interfaceBERSerializable- Specified by:
decodeBERin classAbstractVariable- Parameters:
inputStream- anBERInputStreamcontaining a BER encoded byte stream.- Throws:
java.io.IOException- if the stream could not be decoded by using BER rules.
-
getSyntax
public int getSyntax()
Description copied from class:AbstractVariableGets the ASN.1 syntax identifier value of this SNMP variable.- Specified by:
getSyntaxin interfaceVariable- Specified by:
getSyntaxin classAbstractVariable- 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.
-
hashCode
public int hashCode()
- Specified by:
hashCodein interfaceVariable- Specified by:
hashCodein classAbstractVariable
-
getBERLength
public int getBERLength()
Description copied from class:AbstractVariableReturns the length of thisVariablein bytes when encoded according to the Basic Encoding Rules (BER).- Specified by:
getBERLengthin interfaceBERSerializable- Specified by:
getBERLengthin classAbstractVariable- Returns:
- the BER encoded length of this variable.
-
equals
public boolean equals(java.lang.Object o)
- Specified by:
equalsin interfaceVariable- Specified by:
equalsin classAbstractVariable
-
compareTo
public int compareTo(Variable o)
- Specified by:
compareToin interfacejava.lang.Comparable<Variable>- Specified by:
compareToin interfaceVariable- Specified by:
compareToin classAbstractVariable
-
toString
public java.lang.String toString()
Description copied from class:AbstractVariableGets a string representation of the variable.- Specified by:
toStringin interfaceVariable- Specified by:
toStringin classAbstractVariable- Returns:
- a string representation of the variable's value.
-
setValue
public void setValue(java.lang.String value)
- Specified by:
setValuein interfaceAssignableFromString
-
setValue
public void setValue(long value)
- Specified by:
setValuein interfaceAssignableFromLong
-
getValue
public long getValue()
-
clone
public java.lang.Object clone()
Description copied from interface:VariableClones 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:
clonein interfaceVariable- Specified by:
clonein classAbstractVariable- Returns:
- a new instance of this
Variablewith the same value.
-
increment
public void increment()
Increment the value of the counter by one. If the current value is 2^63-1 (9223372036854775807) then value will be set to -2^63. Nevertheless, the BER encoded value of this counter will always be unsigned!
-
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
-
toInt
public final int toInt()
Description copied from class:AbstractVariableReturns an integer representation of this variable if such a representation exists.- Specified by:
toIntin interfaceVariable- Specified by:
toIntin classAbstractVariable- Returns:
- an integer value (if the native representation of this variable would be a long, then the long value will be casted to int).
-
toLong
public final long toLong()
Description copied from class:AbstractVariableReturns a long representation of this variable if such a representation exists.- Specified by:
toLongin interfaceAssignableFromLong- Specified by:
toLongin interfaceVariable- Specified by:
toLongin classAbstractVariable- Returns:
- a long value.
-
toSubIndex
public OID toSubIndex(boolean impliedLength)
Description copied from class:AbstractVariableConverts the value of thisVariableto a (sub-)index value.- Specified by:
toSubIndexin interfaceVariable- Specified by:
toSubIndexin classAbstractVariable- Parameters:
impliedLength- specifies if the sub-index has an implied length. This parameter applies to variable length variables only (e.g.OctetStringandOID). 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:AbstractVariableSets the value of thisVariablefrom the supplied (sub-)index.- Specified by:
fromSubIndexin interfaceVariable- Specified by:
fromSubIndexin classAbstractVariable- 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.OctetStringandOID). For other variables it has no effect.
-
-