Main Page | Class Hierarchy | Class List | File List | Class Members

AAAServerSessionFactory Class Reference

Session Factory Definition. More...

#include <diameter_api.h>

Inheritance diagram for AAAServerSessionFactory:

AAAServerSessionClassFactory< SESSION_SERVER > List of all members.

Public Member Functions

 AAAServerSessionFactory (diameter_unsigned32_t appId, AAASessionType type=AAA_STYPE_AUTHENTICATION)
virtual ~AAAServerSessionFactory ()
diameter_unsigned32_t GetApplicationId ()
AAASessionType GetType ()
virtual AAASessionCreateInstance (AAAApplicationCore &core, diameter_unsigned32_t id)=0

Detailed Description

Session Factory Definition.

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 Documentation

AAAServerSessionFactory::AAAServerSessionFactory diameter_unsigned32_t  appId,
AAASessionType  type = AAA_STYPE_AUTHENTICATION
 

constructor

Parameters:
appId Application ID for this factory
type Session type generated by the factory

virtual AAAServerSessionFactory::~AAAServerSessionFactory  )  [virtual]
 

destructor

Removes the attachment of this factory with the application core.


Member Function Documentation

virtual AAASession* AAAServerSessionFactory::CreateInstance AAAApplicationCore core,
diameter_unsigned32_t  id
[pure virtual]
 

Abstract method to be implemented by derived class

Parameters:
core Application core this factory is registered to.
id Application ID associated with the session being created.

Implemented in AAAServerSessionClassFactory< SESSION_SERVER >.

diameter_unsigned32_t AAAServerSessionFactory::GetApplicationId  )  [inline]
 

Returns the application id for this factory

AAASessionType AAAServerSessionFactory::GetType  )  [inline]
 

Returns the session type


The documentation for this class was generated from the following file:
Generated on Fri Jun 25 19:12:02 2004 for Open Diameter C++ API by doxygen 1.3.5