eapol/eapol_framework/eapol_symbian/eap_server/include/EapServerProcessHandler.h
author hgs
Thu, 16 Sep 2010 13:07:04 +0300
changeset 49 43351a4f2da3
parent 26 9abfd4f00d37
permissions -rw-r--r--
201037
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
26
hgs
parents:
diff changeset
     1
/*
hgs
parents:
diff changeset
     2
* Copyright (c) 2001-2010 Nokia Corporation and/or its subsidiary(-ies).
hgs
parents:
diff changeset
     3
* All rights reserved.
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
hgs
parents:
diff changeset
     5
* under the terms of the License "Eclipse Public License v1.0"
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
hgs
parents:
diff changeset
     8
*
hgs
parents:
diff changeset
     9
* Initial Contributors:
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
hgs
parents:
diff changeset
    11
*
hgs
parents:
diff changeset
    12
* Contributors:
hgs
parents:
diff changeset
    13
*
hgs
parents:
diff changeset
    14
* Description:  EAP-server process handler.
hgs
parents:
diff changeset
    15
*
hgs
parents:
diff changeset
    16
*/
hgs
parents:
diff changeset
    17
hgs
parents:
diff changeset
    18
/*
49
hgs
parents: 26
diff changeset
    19
* %version: 27 %
26
hgs
parents:
diff changeset
    20
*/
hgs
parents:
diff changeset
    21
hgs
parents:
diff changeset
    22
hgs
parents:
diff changeset
    23
#ifndef EAPPROCESSHANDLER_H_
hgs
parents:
diff changeset
    24
#define EAPPROCESSHANDLER_H_
hgs
parents:
diff changeset
    25
hgs
parents:
diff changeset
    26
#include "EapServerClientDef.h"
hgs
parents:
diff changeset
    27
#include "AbsEapSendInterface.h"
hgs
parents:
diff changeset
    28
#include "EapCoreIf.h"
hgs
parents:
diff changeset
    29
#include "EapPluginIf.h"
hgs
parents:
diff changeset
    30
#include "EapSettingsIf.h"
hgs
parents:
diff changeset
    31
hgs
parents:
diff changeset
    32
#include "WapiCoreIf.h"
hgs
parents:
diff changeset
    33
#include "WapiSettingsIf.h"
hgs
parents:
diff changeset
    34
hgs
parents:
diff changeset
    35
#if defined(USE_EAP_PAC_STORE_IF)
hgs
parents:
diff changeset
    36
#include "PacStoreIf.h"
hgs
parents:
diff changeset
    37
#endif //#if defined(USE_EAP_PAC_STORE_IF)
hgs
parents:
diff changeset
    38
hgs
parents:
diff changeset
    39
#include "EapMessageQueue.h"
hgs
parents:
diff changeset
    40
#include "AbsEapProcessSendInterface.h"
hgs
parents:
diff changeset
    41
49
hgs
parents: 26
diff changeset
    42
hgs
parents: 26
diff changeset
    43
enum CEapServerProcessHandlerState
hgs
parents: 26
diff changeset
    44
{
hgs
parents: 26
diff changeset
    45
	EapServerProcessHandlerState_None,
hgs
parents: 26
diff changeset
    46
	EapServerProcessHandlerState_Send,
hgs
parents: 26
diff changeset
    47
	EapServerProcessHandlerState_All,
hgs
parents: 26
diff changeset
    48
};
hgs
parents: 26
diff changeset
    49
26
hgs
parents:
diff changeset
    50
class CEapServerProcessHandler
hgs
parents:
diff changeset
    51
: public CActive
hgs
parents:
diff changeset
    52
, public AbsEapSendInterface
hgs
parents:
diff changeset
    53
{
hgs
parents:
diff changeset
    54
    
hgs
parents:
diff changeset
    55
public:
hgs
parents:
diff changeset
    56
    
hgs
parents:
diff changeset
    57
	virtual ~CEapServerProcessHandler();
hgs
parents:
diff changeset
    58
hgs
parents:
diff changeset
    59
	void ConstructL(AbsEapProcessSendInterface* const client, abs_eap_am_tools_c * const tools);
hgs
parents:
diff changeset
    60
hgs
parents:
diff changeset
    61
	static CEapServerProcessHandler* NewL();
hgs
parents:
diff changeset
    62
hgs
parents:
diff changeset
    63
	void SaveMessage(TEapRequests message, const void * const data, const TUint length);
hgs
parents:
diff changeset
    64
hgs
parents:
diff changeset
    65
	eap_status_e SendData(const void * const data, const u32_t length, TEapRequests message);
hgs
parents:
diff changeset
    66
49
hgs
parents: 26
diff changeset
    67
	void Activate(const CEapServerProcessHandlerState aState);
26
hgs
parents:
diff changeset
    68
hgs
parents:
diff changeset
    69
private:
hgs
parents:
diff changeset
    70
hgs
parents:
diff changeset
    71
	CEapServerProcessHandler();
hgs
parents:
diff changeset
    72
hgs
parents:
diff changeset
    73
hgs
parents:
diff changeset
    74
	//from CActive
hgs
parents:
diff changeset
    75
hgs
parents:
diff changeset
    76
	void DoCancel();
hgs
parents:
diff changeset
    77
	void RunL();
hgs
parents:
diff changeset
    78
	TInt RunError(TInt aError);
hgs
parents:
diff changeset
    79
hgs
parents:
diff changeset
    80
hgs
parents:
diff changeset
    81
	AbsEapProcessSendInterface * iClient;
hgs
parents:
diff changeset
    82
	abs_eap_am_tools_c * iTools;
hgs
parents:
diff changeset
    83
	CEapCoreIf * iEapCore;
hgs
parents:
diff changeset
    84
	CEapPluginIf* iEapPlugin;
hgs
parents:
diff changeset
    85
	CEapSettingsIf* iEapSettings;
hgs
parents:
diff changeset
    86
hgs
parents:
diff changeset
    87
	CWapiCoreIf * iWapiCore;
49
hgs
parents: 26
diff changeset
    88
	CWapiSettingsIf* iWapiSettings;
26
hgs
parents:
diff changeset
    89
hgs
parents:
diff changeset
    90
#if defined(USE_EAP_PAC_STORE_IF) // JPH: does not compile anymore
hgs
parents:
diff changeset
    91
    CPacStoreIf* iPacStore;
hgs
parents:
diff changeset
    92
#endif //#if defined(USE_EAP_PAC_STORE_IF) // JPH: does not compile anymore
hgs
parents:
diff changeset
    93
49
hgs
parents: 26
diff changeset
    94
	EapMessageQueue* iEapSendMessageQueue;
hgs
parents: 26
diff changeset
    95
	EapMessageQueue* iEapProcessMessageQueue;
26
hgs
parents:
diff changeset
    96
	
49
hgs
parents: 26
diff changeset
    97
	const EapMessageBuffer * iProcessMessage;
hgs
parents: 26
diff changeset
    98
	CEapServerProcessHandlerState iHandlerState;
26
hgs
parents:
diff changeset
    99
hgs
parents:
diff changeset
   100
};
hgs
parents:
diff changeset
   101
    
hgs
parents:
diff changeset
   102
#endif /* EAPPROCESSHANDLER_H_ */