|
|||||||||
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |
See:
Description
Interface Summary | |
---|---|
Session | The session interface is what the SessionManager operates on |
Class Summary | |
---|---|
AASession | A session type that uses the AA messages for authentication/authorization Subclasses should override collectAARInfo() and processAAAInfo(). |
ACHandler | A utility class for dealing with accounting. |
ACHandler.SubSession | A collection of data belonging to a (sub-)session. |
BaseSession | A basic implementation of a Diameter session It implements a state model as described in RFC3588 section 8.1, and takes care of generating unique session-ids. |
SessionAuthTimers | Authorization time calculator. |
SessionManager | A go-between sessions and NodeManager. |
Enum Summary | |
---|---|
BaseSession.State | The state of a session, as per RFC3588 section 8.1 |
Exception Summary | |
---|---|
InvalidStateException |
Classes for implementing a session-capable Diameter client. This package contains classes for implementing a Diameter node whose primary role is a client that holds diameter sessions, eg. a NAS, GGSN.
This is done by using two classes. First, you instantiate a SessionManager. It takes care of the details about managing the node, sending and receiving messages (and lost connections), and timers in the sessions. Second you will create a class that implements the Session interface. It is best to make this a subclass of BaseSession og AASession. You will probably want to mix in the ACHandler to support accounting.
Capability cap = ... //seeCapability
NodeSettings settings = ... //seeNodeSettings
Peer peers[]= { new Peer("somehost.example.net"), new Peer("someotherhost.example.net"), }; SessionManager session_manager = new SessionManager(settings,peers); BaseSession session = new ExampleSession(...); session.openSession();
|
|||||||||
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |