--- a/bluetoothengine/btnotif/btnotifsrv/inc/btnotifconnectiontracker.h Tue Aug 31 15:25:10 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,176 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: Bluetooth connection tracker and manager.
-*
-*/
-
-#ifndef BTNOTIFCONNECTIONTRACKER_H
-#define BTNOTIFCONNECTIONTRACKER_H
-
-
-#include <e32property.h>
-#include <btmanclient.h>
-#include <bluetooth/pairing.h>
-#include "btnotifserver.h"
-
-class CBTNotificationManager;
-class CbtnotifConnectionTrackerTest;
-class CBTNotifSecurityManager;
-
-
-
-/**
- * CBTNotifConnectionTracker keeps track of remote device connections
- *
- * @since Symbian^4
- */
-NONSHARABLE_CLASS( CBTNotifConnectionTracker ) : public CBase
- {
-
-public:
-
- /**
- * Two-phased constructor.
- * @param aServer Pointer to our parent
- */
- static CBTNotifConnectionTracker* NewL( CBTNotifServer* aServer );
-
- /**
- * Destructor.
- */
- virtual ~CBTNotifConnectionTracker();
-
- /**
- * Get a pointer to the btnotif server object.
- *
- * @since Symbian^4
- * @return The server.
- */
- inline CBTNotifServer* Server() const
- { return iServer; }
-
- /**
- * Get a pointer to the notification manager.
- * This handle can be used for queueing notifications.
- *
- * @since Symbian^4
- * @return The notification manager.
- */
- inline CBTNotificationManager* NotificationManager() const
- { return iServer->NotificationManager(); }
-
- /**
- * Get the shared handle to BT registry server.
- * This handle can be used for creating subsessions.
- *
- * @since Symbian^4
- * @return Session with BT registry server.
- */
- inline RBTRegServ& RegistryServerSession()
- { return iBTRegistrySession; }
-
- /**
- * Get the handle to the socket server.
- * This handle can be used for creating subsessions.
- *
- * @since Symbian^4
- * @return Session with the socket server.
- */
- inline RSocketServ& SocketServerSession()
- { return iSockServ; }
-
- /**
- * Processes a message for notifiers related to remote devices.
- * ( These are usually issued by BT stack. However, any application
- * is not restricted to do so (e.g., for testing purpose).
- *
- * @since Symbian^4
- * @param aMessage The message containing the details of the client request.
- */
- void HandleNotifierRequestL( const RMessage2& aMessage );
-
- /**
- * Handle a request related to pairing.
- *
- * @since Symbian^4
- * @param aMessage The message containing the details of the client request.
- */
- void HandleBondingRequestL( const RMessage2& aMessage );
-
- /**
- * Check repeated connection attempts, and record rejected/accepted queries.
- *
- * @since Symbian^4
- * @param aDevice The details of the remote device for this query.
- * @param aAccepted ETrue if the user accepted the request, EFalse if rejected.
- * @return ETrue if the user should be queried for blocking this device,
- * EFalse if no query should be launched by the caller.
- */
- TBool UpdateBlockingHistoryL( const CBTDevice* aDevice, TBool aAccepted );
-
-private:
-
- CBTNotifConnectionTracker( CBTNotifServer* aServer );
-
- void ConstructL();
-
- /**
- * Record and check the time between connection attempts.
- *
- * @since Symbian^4
- * @param aAccepted ETrue if the user accepted the request, EFalse if rejected.
- * @return EFalse if the attempt followed the previous attempt too fast,
- * otherwise ETrue.
- */
- TBool RecordConnectionAttempts( TBool aAccepted );
-
-private: // data
-
- /**
- * Time of the last denied connection attempt.
- */
- TInt64 iLastReject;
-
- /**
- * Array of device addresses that the user has denied access.
- */
- RArray<TBTDevAddr> iDeniedRequests;
-
- /**
- * Single session with BTRegistry, to be used for subsessions.
- */
- RBTRegServ iBTRegistrySession;
-
- /**
- * Single session with the socket server, to be used for subsessions.
- */
- RSocketServ iSockServ;
-
- /**
- * Reference to our parent the server class.
- * Not own.
- */
- CBTNotifServer* iServer;
-
- /**
- * Object for managing the application pairing.
- * Own.
- */
- CBTNotifSecurityManager* iPairingManager;
-
- BTUNITTESTHOOK
-
- };
-
-#endif // BTNOTIFCONNECTIONTRACKER_H