Package dk.i1.diameter

Diameter Messages and AVPs.


Class Summary
AVP A Diameter AVP.
AVP_Address An internet address AVP.
AVP_Float32 32-bit floating point AVP
AVP_Float64 64-bit floating point AVP
AVP_Grouped AVP grouping multiple AVPs together.
AVP_Integer32 32-bit signed integer AVP.
AVP_Integer64 64-bit signed integer AVP.
AVP_OctetString AVP containing arbitrary data of variable length.
AVP_Time A timestamp AVP.
AVP_Unsigned32 32-bit unsigned integer AVP.
AVP_Unsigned64 64-bit unsigned integer AVP.
AVP_UTF8String AVP with UTF-8 string payload.
Message A Diameter Message.
MessageHeader A Diameter message header.
ProtocolConstants A bunch of constants from RFC3588, RFC4005, RFC4006 and RFC4072.
Utils A mishmash of handy methods
Utils.ABNFComponent A component in a message ABNF
Utils.CheckABNFFailure Result from Utils.checkABNF(dk.i1.diameter.Message, dk.i1.diameter.Utils.ABNFComponent[])

Enum Summary
Message.decode_status The decode status from Message.decode(byte[])

Exception Summary
InvalidAddressTypeException Exception thrown when an AVP_Address is constructed from unsupported on-the-wire content.
InvalidAVPLengthException Exception thrown when an AVP does not have the correct size.

Package dk.i1.diameter Description

Diameter Messages and AVPs. This package contains classes for low-level dealing with Diameter messages and AVPs.

The Message class contains a MessageHeader and a bunch of AVPs. The AVP classes are modelled after RFC3588. See Message to see examples of how to build and process messages.

ProtocolConstants contains symbolic constants from the RFCs.

Utils contains some utilities that a useful, particular for setting the M-bit on AVPs.

Note: The following AVP types described in RFC358 have not been implemented:

Basically a AVP_UTF8String. The RFC says that it is the FQDN of a node, but violations of this have been seen in the real world.
A URI with certain rules. Not seen in the real world (yet)
Use AVP_Unsigned32 instead
Presumable specific to NASREQ