#include <diameter_api.h>
Inheritance diagram for AAAServerSessionFactory:
Public Member Functions | |
AAAServerSessionFactory (diameter_unsigned32_t appId, AAASessionType type=AAA_STYPE_AUTHENTICATION) | |
virtual | ~AAAServerSessionFactory () |
diameter_unsigned32_t | GetApplicationId () |
AAASessionType | GetType () |
virtual AAASession * | CreateInstance (AAAApplicationCore &core, diameter_unsigned32_t id)=0 |
This is a abstract base class is a service method for use by the application core in order to create a server session instances. This is a class factory for server session derived objects. This class maybe inherited directly by the an application class. The template classes AAAServerSessionClassFactory derived from this class represents a generic factory model used by this library.
Instances of this class attaches itself to an application core and allows the application core to create instances of AAAServerSession based objects. The creation event occurs when an incomming message with a supported application id is received but no matching session id was found. If a class factory is present that supports application id then the application core will invoke the CreateInstance() method of that factory. This procedure is valid only for server applications. There are NO factories for client sessions and this event SHOULD be regarded as an error and an Unknow session id message will be sent.
If a factory instance with a particular application id was previously attached to an application core, any new factory instances with the same application id will overwrite any previous attachements. Note that attachements of factory to an application core occurs when an innstance of AAAServerSessionFactory is registered with the application core via RegisterServerSessionFactory() method. constructor of the factory.
|
constructor
|
|
destructor Removes the attachment of this factory with the application core. |
|
Abstract method to be implemented by derived class
Implemented in AAAServerSessionClassFactory< SESSION_SERVER >. |
|
Returns the application id for this factory |
|
Returns the session type |