[SNMP4J] Variable and syntax
Matthias Wiesmann
matthias.wiesmann at gmail.com
Mon Jan 16 12:10:58 CET 2006
Yes, for instance here is a part of a utility I have written to
translate SNMP4J variables into canonical Java types:
static public Object toJava(Variable variable) {
if (variable==null) return null ;
final int syntax = variable.getSyntax();
switch (syntax) {
case SMIConstants.SYNTAX_INTEGER32 :
return toNumber((Integer32) variable) ;
case SMIConstants.SYNTAX_UNSIGNED_INTEGER32:
case SMIConstants.SYNTAX_COUNTER32:
return toNumber((UnsignedInteger32) variable) ;
case SMIConstants.SYNTAX_COUNTER64 :
return toNumber((Counter64) variable) ;
case SMIConstants.SYNTAX_IPADDRESS:
return toInetAddress((IpAddress) variable) ;
case SMIConstants.SYNTAX_OBJECT_IDENTIFIER:
return variable.toString();
case SMIConstants.SYNTAX_TIMETICKS:
default:
return variable.toString();
} // switch
} // toJava
On 16/01/06, Marco.Bresciani at alcatel.it <Marco.Bresciani at alcatel.it> wrote:
> Speaking about a Variable (org.snmp4j.smi.Variable) object and its
> getSyntax() method, are the results given by this method the followings?
>
> public static final int EXCEPTION_END_OF_MIB_VIEW 130
> public static final int EXCEPTION_NO_SUCH_INSTANCE 129
> public static final int EXCEPTION_NO_SUCH_OBJECT 128
> public static final int SYNTAX_COUNTER32 65
> public static final int SYNTAX_COUNTER64 70
> public static final int SYNTAX_GAUGE32 66
> public static final int SYNTAX_INTEGER 2
> public static final int SYNTAX_INTEGER32 2
> public static final int SYNTAX_IPADDRESS 64
> public static final int SYNTAX_NULL 5
> public static final int SYNTAX_OBJECT_IDENTIFIER 6
> public static final int SYNTAX_OCTET_STRING 4
> public static final int SYNTAX_OPAQUE 68
> public static final int SYNTAX_TIMETICKS 67
> public static final int SYNTAX_UNSIGNED_INTEGER32 66
>
> If so, can I switch on these values to determine Variable data type? I
> mean: I have a Variable object and I don't know which type it contains. I
> switch on its getSyntax() method so I can find out, say, it's an Integer32
> type so I can write something like
>
> Integer32 new_data = (Integer32) generic_variable_data
>
> Thank you,
More information about the SNMP4J
mailing list